diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..c3de5b0 Binary files /dev/null and b/.DS_Store differ diff --git a/.env.example b/.env.example index 73f01dc..92f7a51 100644 --- a/.env.example +++ b/.env.example @@ -1,9 +1,14 @@ -APP_NAME=Laravel +APP_NAME="File Management System" APP_ENV=local APP_KEY= APP_DEBUG=true APP_URL=http://localhost:8000 +METHOD_AUTH=usermanager +IP_USER_MANAGER=10.0.20.68 +PORT_USER_MANAGER=82 +APP_ID=WOF + LOG_CHANNEL=stack LOG_DEPRECATIONS_CHANNEL=null LOG_LEVEL=debug diff --git a/.gitignore b/.gitignore index ac73f1a..73b644c 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ /public/mix-manifest.json /storage/*.key /vendor +/Modules/* .env .env.backup .phpunit.result.cache @@ -16,3 +17,4 @@ npm-debug.log yarn-error.log /.idea /.vscode +composer.lock diff --git a/Modules/index.html b/Modules/index.html new file mode 100644 index 0000000..e69de29 diff --git a/app/.DS_Store b/app/.DS_Store new file mode 100644 index 0000000..e395389 Binary files /dev/null and b/app/.DS_Store differ diff --git a/app/Actions/GetThemeType.php b/app/Actions/GetThemeType.php new file mode 100644 index 0000000..4247f7d --- /dev/null +++ b/app/Actions/GetThemeType.php @@ -0,0 +1,24 @@ +seed = crc32($seed); + + return str_replace('?', $this->randomType(), $format); + } + + public function randomType() + { + srand($this->seed); + + return $this->types[rand(0, count($this->types) - 1)] ?? ''; + } +} diff --git a/app/Actions/SamplePermissionApi.php b/app/Actions/SamplePermissionApi.php new file mode 100644 index 0000000..d11685d --- /dev/null +++ b/app/Actions/SamplePermissionApi.php @@ -0,0 +1,100 @@ +input('draw', 0); + $start = $request->input('start', 0); + $length = $request->input('length', 10); + $columns = $request->input('columns'); + $searchValue = $request->input('search.value'); + + $orderColumn = $request->input('order.0.column', 0); // Get the order column index + $orderDir = $request->input('order.0.dir', 'asc'); // Get the order direction (ASC or DESC) + + $query = Permission::query()->with('roles'); + + if ($searchValue) { + $searchColumns = ['name']; + $query->where(function ($query) use ($searchValue, $searchColumns) { + foreach ($searchColumns as $column) { + $query->orWhere(DB::raw("LOWER($column)"), 'LIKE', '%' . strtolower($searchValue) . '%'); + } + }); + } + + // Get the column name for ordering based on the orderColumn index + $orderColumnName = $columns[$orderColumn]['data'] ?? 'id'; + + // Apply ordering to the query + $query->orderBy($orderColumnName, $orderDir); + + $totalRecords = $query->count(); + + $records = $query->offset($start)->limit($length)->get(); + + $data = [ + 'draw' => $draw, + 'recordsTotal' => $totalRecords, + 'recordsFiltered' => $totalRecords, + 'data' => $records, + 'orderColumnName' => $orderColumnName, + ]; + + return $data; + } + + public function create(Request $request) + { + $permission = $request->all(); + + $rules = [ + 'name' => 'required|string', + ]; + + $validator = Validator::make($permission, $rules); + if ($validator->fails()) { + return response()->json(['errors' => $validator->errors()], 400); + } + + $updated = Permission::create($permission); + + return response()->json(['success' => $updated]); + } + + public function get($id) + { + return Permission::findOrFail($id); + } + + public function update($id, Request $request) + { + $permission = $request->all(); + + $rules = [ + 'name' => 'required|string', + ]; + + $validator = Validator::make($permission, $rules); + if ($validator->fails()) { + return response()->json(['errors' => $validator->errors()], 400); + } + + $updated = Permission::findOrFail($id)->update($permission); + + return response()->json(['success' => $updated]); + } + + public function delete($id) + { + return Permission::destroy($id); + } +} diff --git a/app/Actions/SampleRoleApi.php b/app/Actions/SampleRoleApi.php new file mode 100644 index 0000000..436a0bd --- /dev/null +++ b/app/Actions/SampleRoleApi.php @@ -0,0 +1,171 @@ + 'Best for business owners and company administrators', + 'developer' => 'Best for developers or people primarily using the API', + 'analyst' => 'Best for people who need full access to analytics data, but don\'t need to update business settings', + 'support' => 'Best for employees who regularly refund payments and respond to disputes', + 'trial' => 'Best for people who need to preview content data, but don\'t need to make any updates', + ]; + + public function datatableList(Request $request) + { + $draw = $request->input('draw', 0); + $start = $request->input('start', 0); + $length = $request->input('length', 10); + $columns = $request->input('columns'); + $searchValue = $request->input('search.value'); + + $orderColumn = $request->input('order.0.column', 0); // Get the order column index + $orderDir = $request->input('order.0.dir', 'asc'); // Get the order direction (ASC or DESC) + + $query = Role::query()->with('permissions')->with('users'); + + if ($searchValue) { + $searchColumns = ['name']; + $query->where(function ($query) use ($searchValue, $searchColumns) { + foreach ($searchColumns as $column) { + $query->orWhere(DB::raw("LOWER($column)"), 'LIKE', '%' . strtolower($searchValue) . '%'); + } + }); + } + + // Get the column name for ordering based on the orderColumn index + $orderColumnName = $columns[$orderColumn]['data'] ?? 'id'; + + // Apply ordering to the query + $query->orderBy($orderColumnName, $orderDir); + + $totalRecords = $query->count(); + + $records = $query->offset($start)->limit($length)->get(); + + foreach ($records as $i => $role) { + $records[$i]->description = $this->roles_description[$role->name] ?? ''; + } + + $data = [ + 'draw' => $draw, + 'recordsTotal' => $totalRecords, + 'recordsFiltered' => $totalRecords, + 'data' => $records, + 'orderColumnName' => $orderColumnName, + ]; + + return $data; + } + + public function usersDatatableList(Request $request) + { + $role_id = $request->input('id', 0); + $draw = $request->input('draw', 0); + $start = $request->input('start', 0); + $length = $request->input('length', 10); + $columns = $request->input('columns'); + $searchValue = $request->input('search.value'); + + $orderColumn = $request->input('order.0.column', 0); // Get the order column index + $orderDir = $request->input('order.0.dir', 'asc'); // Get the order direction (ASC or DESC) + + $query = User::whereHas('roles', function ($query) use ($role_id) { + $query->where('id', $role_id); + })->with('roles'); + + if ($searchValue) { + $searchColumns = ['name']; + $query->where(function ($query) use ($searchValue, $searchColumns) { + foreach ($searchColumns as $column) { + $query->orWhere(DB::raw("LOWER($column)"), 'LIKE', '%' . strtolower($searchValue) . '%'); + } + }); + } + + // Get the column name for ordering based on the orderColumn index + $orderColumnName = $columns[$orderColumn]['data'] ?? 'id'; + + // Apply ordering to the query + $query->orderBy($orderColumnName, $orderDir); + + $totalRecords = $query->count(); + + $records = $query->offset($start)->limit($length)->get(); + + $data = [ + 'role_id' => $role_id, + 'draw' => $draw, + 'recordsTotal' => $totalRecords, + 'recordsFiltered' => $totalRecords, + 'data' => $records, + 'orderColumnName' => $orderColumnName, + ]; + + return $data; + } + + public function create(Request $request) + { + $role = $request->all(); + + $rules = [ + 'name' => 'required|string', + ]; + + $validator = Validator::make($role, $rules); + if ($validator->fails()) { + return response()->json(['errors' => $validator->errors()], 400); + } + + $updated = Role::create($role); + + return response()->json(['success' => $updated]); + } + + public function get($id, $relations = ['permissions', 'users']) + { + return Role::with($relations)->findOrFail($id); + } + + public function update($id, Request $request) + { + $role = $request->all(); + + $rules = [ + 'name' => 'required|string', + ]; + + $validator = Validator::make($role, $rules); + if ($validator->fails()) { + return response()->json(['errors' => $validator->errors()], 400); + } + + $updated = Role::findOrFail($id)->update($role); + + return response()->json(['success' => $updated]); + } + + public function delete($id) + { + return Role::destroy($id); + } + + public function deleteUser($id, $user_id = null) + { + $user = User::find($user_id); + + if ($user) { + return $user->roles()->detach($id); + } + + return false; + } +} diff --git a/app/Actions/SampleUserApi.php b/app/Actions/SampleUserApi.php new file mode 100644 index 0000000..2e5e7be --- /dev/null +++ b/app/Actions/SampleUserApi.php @@ -0,0 +1,102 @@ +input('draw', 0); + $start = $request->input('start', 0); + $length = $request->input('length', 10); + $columns = $request->input('columns'); + $searchValue = $request->input('search.value'); + + $orderColumn = $request->input('order.0.column', 0); // Get the order column index + $orderDir = $request->input('order.0.dir', 'asc'); // Get the order direction (ASC or DESC) + + $query = User::query()->with('roles'); + + if ($searchValue) { + $searchColumns = ['name', 'email']; + $query->where(function ($query) use ($searchValue, $searchColumns) { + foreach ($searchColumns as $column) { + $query->orWhere(DB::raw("LOWER($column)"), 'LIKE', '%' . strtolower($searchValue) . '%'); + } + }); + } + + // Get the column name for ordering based on the orderColumn index + $orderColumnName = $columns[$orderColumn]['data'] ?? 'id'; + + // exclude core user for demo purpose + $query->whereNotIn('id', [1]); + + // Apply ordering to the query + $query->orderBy($orderColumnName, $orderDir); + + $totalRecords = $query->count(); + + $records = $query->offset($start)->limit($length)->get(); + + $data = [ + 'draw' => $draw, + 'recordsTotal' => $totalRecords, + 'recordsFiltered' => $totalRecords, + 'data' => $records, + 'orderColumnName' => $orderColumnName, + ]; + + return $data; + } + + public function create(Request $request) + { + $user = $request->all(); + + $rules = [ + 'name' => 'required|string', + 'email' => 'required|email|unique:users,email', + ]; + + $validator = Validator::make($user, $rules); + if ($validator->fails()) { + return response()->json(['errors' => $validator->errors()], 400); + } + + $updated = User::create($user); + + return response()->json(['success' => $updated]); + } + + public function get($id) + { + return User::findOrFail($id); + } + + public function update($id, Request $request) + { + $data = $request->validate([ + 'name' => 'required|string', + 'email' => 'required|email|unique:users,email,' . $id, + 'role' => 'required|string', + ]); + + $user = User::findOrFail($id); + $user->update($data); + + $user->assignRole($request->role); + + return response()->json(['success' => true]); + } + + public function delete($id) + { + return User::destroy($id); + } +} diff --git a/app/Core/Bootstrap/BootstrapDefault.php b/app/Core/Bootstrap/BootstrapDefault.php index 7a06903..a8dfe65 100644 --- a/app/Core/Bootstrap/BootstrapDefault.php +++ b/app/Core/Bootstrap/BootstrapDefault.php @@ -25,15 +25,7 @@ class BootstrapDefault public function initAssets() { # Include global vendors - addVendors(['datatables', 'fullcalendar']); - - # Include global javascript files - addJavascriptFile('assets/js/custom/widgets.js'); - addJavascriptFile('assets/js/custom/apps/chat/chat.js'); - addJavascriptFile('assets/js/custom/utilities/modals/upgrade-plan.js'); - addJavascriptFile('assets/js/custom/utilities/modals/create-app.js'); - addJavascriptFile('assets/js/custom/utilities/modals/users-search.js'); - addJavascriptFile('assets/js/custom/utilities/modals/new-target.js'); + addVendors(['datatables']); } public function initDarkSidebarLayout() diff --git a/app/Core/KTBootstrap.php b/app/Core/KTBootstrap.php new file mode 100644 index 0000000..dcfd95a --- /dev/null +++ b/app/Core/KTBootstrap.php @@ -0,0 +1,45 @@ +isRtlDirection()) { - $path = str_replace('.css', '.rtl.css'); + $path = str_replace('.css', '.rtl.css', $path); } return $path; @@ -280,8 +280,9 @@ class Theme */ function getGlobalAssets($type = 'js') { - // $this->extendCssFilename() - return config('settings.KT_THEME_ASSETS.global.'.$type); + return array_map(function($path) { + return $this->extendCssFilename($path); + }, config('settings.KT_THEME_ASSETS.global.'.$type)); } /** @@ -391,12 +392,10 @@ class Theme return self::$htmlAttributes[$scope][$attribute] ?? []; } - function getIcon($name, $class = '', $type = '') + function getIcon($name, $class = '', $type = '', $tag = 'span') { $type = config('settings.KT_THEME_ICONS', 'duotone'); - $tag = 'span'; - if ($type === 'duotone') { $icons = cache()->remember('duotone-icons', 3600, function () { return json_decode(file_get_contents(public_path('icons.json')), true); diff --git a/app/DataTables/DirectoratDataTable.php b/app/DataTables/DirectoratDataTable.php deleted file mode 100644 index 7321cbc..0000000 --- a/app/DataTables/DirectoratDataTable.php +++ /dev/null @@ -1,89 +0,0 @@ -filter(function ($query) { - if (request()->has('search')) { - $search = request()->get('search'); - $query->where('kode', 'like', "%" . $search['value'] . "%") - ->orWhere('name', 'like', "%" . $search['value'] . "%"); - } - }) - ->addIndexColumn() - ->addColumn('action', 'pages.masters.directorat._action') - ->setRowId('id'); - } - - /** - * Get the query source of dataTable. - */ - public function query(Directorat $model): QueryBuilder - { - return $model->newQuery(); - } - - /** - * Optional method if you want to use the html builder. - */ - public function html(): HtmlBuilder - { - return $this->builder() - ->setTableId('directorat-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->stateSave(false) - ->responsive() - ->autoWidth(true) - ->orderBy(1) - ->parameters([ - 'scrollX' => true, - 'drawCallback' => 'function() { KTMenu.createInstances(); }', - ]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - } - - /** - * Get the dataTable columns definition. - */ - public function getColumns(): array - { - return [ - Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), - Column::make('kode'), - Column::make('name'), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->width(60) - ->addClass('text-center'), - ]; - } - - /** - * Get the filename for export. - */ - protected function filename(): string - { - return 'Directorat_' . date('YmdHis'); - } -} diff --git a/app/DataTables/DocumentDataTable.php b/app/DataTables/DocumentDataTable.php deleted file mode 100644 index d26aa2a..0000000 --- a/app/DataTables/DocumentDataTable.php +++ /dev/null @@ -1,128 +0,0 @@ -filter(function ($query) { - if (request()->has('search')) { - $search = request()->get('search'); - $query->where('kode', 'like', "%" . $search['value'] . "%"); - } - }) - ->addColumn('kode_directorat',function($model){ - return $model->directorat->kode; - }) - ->addColumn('name_directorat',function($model){ - return $model->directorat->name; - }) - ->addColumn('kode_sub_directorat',function($model){ - return $model->sub_directorat->kode; - }) - ->addColumn('name_sub_directorat',function($model){ - return $model->sub_directorat->name; - }) - ->addColumn('kode_pekerjaan',function($model){ - return $model->job->kode; - }) - ->addColumn('name_pekerjaan',function($model){ - return $model->job->name; - }) - ->addColumn('kode_sub_pekerjaan',function($model){ - return $model->sub_job->kode; - }) - ->addColumn('name_sub_pekerjaan',function($model){ - return $model->sub_job->name; - }) - ->addColumn('kode_sub_sub_pekerjaan',function($model){ - return $model->sub_sub_job->kode; - }) - ->addColumn('name_sub_sub_pekerjaan',function($model){ - return $model->sub_sub_job->name; - }) - ->addIndexColumn() - ->addColumn('action', 'pages.app.document._action') - ->setRowId('id'); - } - - /** - * Get the query source of dataTable. - */ - public function query(Document $model): QueryBuilder - { - return $model->newQuery(); - } - - /** - * Optional method if you want to use the html builder. - */ - public function html(): HtmlBuilder - { - return $this->builder() - ->setTableId('document-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->stateSave(false) - ->responsive() - ->autoWidth(true) - ->orderBy(1) - ->parameters([ - 'scrollX' => true, - 'drawCallback' => 'function() { KTMenu.createInstances(); }', - ]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - } - - /** - * Get the dataTable columns definition. - */ - public function getColumns(): array - { - return [ - Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), - Column::make('kode'), - Column::make('kode_directorat')->title('Kode Direktorat'), - Column::make('name_directorat')->title('Nama Direktorat'), - Column::make('kode_sub_directorat')->title('Kode Sub Direktorat'), - Column::make('name_sub_directorat')->title('Nama Sub Direktorat'), - Column::make('kode_pekerjaan')->title('Kode Pekerjaan'), - Column::make('name_pekerjaan')->title('Nama Pekerjaan'), - Column::make('kode_sub_pekerjaan')->title('Kode Sub Pekerjaan'), - Column::make('name_sub_pekerjaan')->title('Nama Sub Pekerjaan'), - Column::make('kode_sub_sub_pekerjaan')->title('Kode Sub Sub Pekerjaan'), - Column::make('name_sub_sub_pekerjaan')->title('Nama Sub Sub Pekerjaan'), - Column::make('status'), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->width(60) - ->addClass('text-center'), - ]; - } - - /** - * Get the filename for export. - */ - protected function filename(): string - { - return 'Document_' . date('YmdHis'); - } -} diff --git a/app/DataTables/DocumentTypeDataTable.php b/app/DataTables/DocumentTypeDataTable.php deleted file mode 100644 index f4b9d41..0000000 --- a/app/DataTables/DocumentTypeDataTable.php +++ /dev/null @@ -1,89 +0,0 @@ -filter(function ($query) { - if (request()->has('search')) { - $search = request()->get('search'); - $query->where('kode', 'like', "%" . $search['value'] . "%") - ->orWhere('name', 'like', "%" . $search['value'] . "%"); - } - }) - ->addIndexColumn() - ->addColumn('action', 'pages.app.document-type._action') - ->setRowId('id'); - } - - /** - * Get the query source of dataTable. - */ - public function query(DocumentType $model): QueryBuilder - { - return $model->newQuery(); - } - - /** - * Optional method if you want to use the html builder. - */ - public function html(): HtmlBuilder - { - return $this->builder() - ->setTableId('document-type-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->stateSave(false) - ->responsive() - ->autoWidth(true) - ->orderBy(1) - ->parameters([ - 'scrollX' => true, - 'drawCallback' => 'function() { KTMenu.createInstances(); }', - ]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - } - - /** - * Get the dataTable columns definition. - */ - public function getColumns(): array - { - return [ - Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), - Column::make('kode'), - Column::make('name'), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->width(60) - ->addClass('text-center'), - ]; - } - - /** - * Get the filename for export. - */ - protected function filename(): string - { - return 'Document_Type_' . date('YmdHis'); - } -} diff --git a/app/DataTables/JobDataTable.php b/app/DataTables/JobDataTable.php deleted file mode 100644 index fffd4a2..0000000 --- a/app/DataTables/JobDataTable.php +++ /dev/null @@ -1,99 +0,0 @@ -filter(function ($query) { - if (request()->has('search')) { - $search = request()->get('search'); - $query->where('kode', 'like', "%" . $search['value'] . "%") - ->orWhere('name', 'like', "%" . $search['value'] . "%") - ->orWhereRelation('directorat', 'name', 'like', '%'.$search['value'].'%') - ->orWhereRelation('subDirectorat', 'name', 'like', '%'.$search['value'].'%'); - } - }) - ->addIndexColumn() - ->addColumn('directorat', function ($job) { - return $job->directorat->name; - }) - ->addColumn('sub_directorat', function ($job) { - return $job->subDirectorat->name; - }) - ->addColumn('action', 'pages.masters.job._action') - ->setRowId('id'); - } - - /** - * Get the query source of dataTable. - */ - public function query(Job $model): QueryBuilder - { - return $model->newQuery(); - } - - /** - * Optional method if you want to use the html builder. - */ - public function html(): HtmlBuilder - { - return $this->builder() - ->setTableId('job-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->stateSave(false) - ->responsive() - ->autoWidth(true) - ->orderBy(1) - ->parameters([ - 'scrollX' => true, - 'drawCallback' => 'function() { KTMenu.createInstances(); }', - ]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - } - - /** - * Get the dataTable columns definition. - */ - public function getColumns(): array - { - return [ - Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), - Column::make('directorat'), - Column::make('sub_directorat'), - Column::make('kode'), - Column::make('name'), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->width(60) - ->addClass('text-center'), - ]; - } - - /** - * Get the filename for export. - */ - protected function filename(): string - { - return 'Job_' . date('YmdHis'); - } -} diff --git a/app/DataTables/Logs/AuditLogsDataTable.php b/app/DataTables/Logs/AuditLogsDataTable.php deleted file mode 100644 index 350ea93..0000000 --- a/app/DataTables/Logs/AuditLogsDataTable.php +++ /dev/null @@ -1,120 +0,0 @@ -eloquent($query) - ->rawColumns(['description', 'properties', 'action']) - ->editColumn('id', function (Activity $model) { - return $model->id; - }) - ->editColumn('subject_id', function (Activity $model) { - if (!isset($model->subject)) { - return ''; - } - - if (isset($model->subject->name)) { - return $model->subject->name; - } - - return $model->subject->user()->first()->name; - }) - ->editColumn('causer_id', function (Activity $model) { - return $model->causer ? $model->causer->name : __('System'); - }) - ->editColumn('properties', function (Activity $model) { - $content = $model->properties; - - return view('pages.log.audit._details', compact('content')); - }) - ->editColumn('created_at', function (Activity $model) { - return $model->created_at->format('d M, Y H:i:s'); - }) - ->addColumn('action', function (Activity $model) { - return view('pages.log.audit._action-menu', compact('model')); - }); - } - - /** - * Get query source of dataTable. - * - * @param Activity $model - * - * @return \Illuminate\Database\Eloquent\Builder - */ - public function query(Activity $model) - { - return $model->newQuery(); - } - - /** - * Optional method if you want to use html builder. - * - * @return \Yajra\DataTables\Html\Builder - */ - public function html() - { - return $this->builder() - ->setTableId('audit-log-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->stateSave(true) - ->orderBy(6) - ->responsive() - ->autoWidth(false) - ->parameters([ - 'scrollX' => true, - 'drawCallback' => 'function() { KTMenu.createInstances(); }', - ]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - } - - /** - * Get columns. - * - * @return array - */ - protected function getColumns() - { - return [ - Column::make('id')->title('Log ID'), - Column::make('log_name')->title(__('Location')), - Column::make('description'), - Column::make('subject_type'), - Column::make('subject_id')->title(__('Subject')), - Column::make('causer_id')->title(__('Causer')), - Column::make('created_at'), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->addClass('text-center') - ->responsivePriority(-1), - Column::make('properties')->addClass('none'), - ]; - } - - /** - * Get filename for export. - * - * @return string - */ - protected function filename() : string - { - return 'DataLogs_'.date('YmdHis'); - } -} diff --git a/app/DataTables/Logs/SystemLogsDataTable.php b/app/DataTables/Logs/SystemLogsDataTable.php deleted file mode 100644 index c64385f..0000000 --- a/app/DataTables/Logs/SystemLogsDataTable.php +++ /dev/null @@ -1,143 +0,0 @@ -collection($query) - ->rawColumns(['action', 'level']) - ->editColumn('id', function (Collection $model) { - return Str::limit($model->get('id'), 5, ''); - }) - ->editColumn('file_path', function (Collection $model) { - return Str::limit($model->get('file_path')); - }) - ->editColumn('message', function (Collection $model) { - return Str::limit($model->get('context')->message, 95); - }) - ->editColumn('date', function (Collection $model) { - return $model->get('date')->format('d M, Y H:i:s'); - }) - ->editColumn('level', function (Collection $model) { - $styles = [ - 'emergency' => 'danger', - 'alert' => 'warning', - 'critical' => 'danger', - 'error' => 'danger', - 'warning' => 'warning', - 'notice' => 'success', - 'info' => 'info', - 'debug' => 'primary', - ]; - $style = 'info'; - if (isset($styles[$model->get('level')])) { - $style = $styles[$model->get('level')]; - } - $value = $model->get('level'); - - return '
'.$value.'
'; - }) - ->editColumn('context', function (Collection $model) { - $content = $model->get('context'); - - return view('pages.log.system._details', compact('content')); - }) - ->addColumn('action', function (Collection $model) { - return view('pages.log.system._action-menu', compact('model')); - }); - } - - /** - * Get query source of dataTable. - * - * @param LogReader $model - * - * @return Collection - */ - public function query(LogReader $model) - { - $data = collect(); - - $model->setLogPath(storage_path('logs')); - - try { - $data = $model->get()->merge($data); - } catch (UnableToRetrieveLogFilesException $exception) { - } - - $data = $data->map(function ($a) { - return (collect($a))->only(['id', 'date', 'environment', 'level', 'file_path', 'context']); - }); - - return $data; - } - - /** - * Optional method if you want to use html builder. - * - * @return \Yajra\DataTables\Html\Builder - */ - public function html() - { - return $this->builder() - ->setTableId('system-log-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->stateSave(true) - ->orderBy(3) - ->responsive() - ->autoWidth(false) - ->parameters(['scrollX' => true]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - } - - /** - * Get columns. - * - * @return array - */ - protected function getColumns() - { - return [ - Column::make('id')->title('Log ID')->width(50), - Column::make('message'), - Column::make('level'), - Column::make('date')->width(130), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->addClass('text-center') - ->responsivePriority(-1), - Column::make('environment')->addClass('none'), - Column::make('file_path')->title(__('Log Path'))->addClass('none'), - Column::make('context')->addClass('none'), - ]; - } - - /** - * Get filename for export. - * - * @return string - */ - protected function filename() : string - { - return 'SystemLogs_'.date('YmdHis'); - } -} diff --git a/app/DataTables/PermissionsDataTable.php b/app/DataTables/PermissionsDataTable.php new file mode 100644 index 0000000..4c35e0d --- /dev/null +++ b/app/DataTables/PermissionsDataTable.php @@ -0,0 +1,85 @@ +editColumn('name', function (Permission $permission) { + return ucwords($permission->name); + }) + ->addColumn('assigned_to', function (Permission $permission) { + $roles = $permission->roles; + return view('pages/apps.user-management.permissions.columns._assign-to', compact('roles')); + }) + ->editColumn('created_at', function (Permission $permission) { + return $permission->created_at->format('d M Y, h:i a'); + }) + ->addColumn('actions', function (Permission $permission) { + return view('pages/apps.user-management.permissions.columns._actions', compact('permission')); + }) + ->setRowId('id'); + } + + /** + * Get the query source of dataTable. + */ + public function query(Permission $model): QueryBuilder + { + return $model->newQuery(); + } + + /** + * Optional method if you want to use the html builder. + */ + public function html(): HtmlBuilder + { + return $this->builder() + ->setTableId('permissions-table') + ->columns($this->getColumns()) + ->minifiedAjax() + ->dom('rt' . "<'row'<'col-sm-12 col-md-5'l><'col-sm-12 col-md-7'p>>",) + ->addTableClass('table align-middle table-row-dashed fs-6 gy-5 dataTable no-footer text-gray-600 fw-semibold') + ->setTableHeadClass('text-start text-muted fw-bold fs-7 text-uppercase gs-0') + ->orderBy(0) + ->drawCallback("function() {" . file_get_contents(resource_path('views/pages/apps/user-management/permissions/columns/_draw-scripts.js')) . "}"); + } + + /** + * Get the dataTable columns definition. + */ + public function getColumns(): array + { + return [ + Column::make('name'), + Column::make('assigned_to'), + Column::make('created_at')->addClass('text-nowrap'), + Column::computed('actions') + ->addClass('text-end text-nowrap') + ->exportable(false) + ->printable(false), + ]; + } + + /** + * Get the filename for export. + */ + protected function filename(): string + { + return 'Permissions_' . date('YmdHis'); + } +} diff --git a/app/DataTables/SpecialCodeDataTable.php b/app/DataTables/SpecialCodeDataTable.php deleted file mode 100644 index 65056c6..0000000 --- a/app/DataTables/SpecialCodeDataTable.php +++ /dev/null @@ -1,89 +0,0 @@ -filter(function ($query) { - if (request()->has('search')) { - $search = request()->get('search'); - $query->where('kode', 'like', "%" . $search['value'] . "%") - ->orWhere('name', 'like', "%" . $search['value'] . "%"); - } - }) - ->addIndexColumn() - ->addColumn('action', 'pages.masters.special-code._action') - ->setRowId('id'); - } - - /** - * Get the query source of dataTable. - */ - public function query(SpecialCode $model): QueryBuilder - { - return $model->newQuery(); - } - - /** - * Optional method if you want to use the html builder. - */ - public function html(): HtmlBuilder - { - return $this->builder() - ->setTableId('special-code-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->stateSave(false) - ->responsive() - ->autoWidth(true) - ->orderBy(1) - ->parameters([ - 'scrollX' => true, - 'drawCallback' => 'function() { KTMenu.createInstances(); }', - ]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - } - - /** - * Get the dataTable columns definition. - */ - public function getColumns(): array - { - return [ - Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), - Column::make('kode'), - Column::make('name'), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->width(60) - ->addClass('text-center'), - ]; - } - - /** - * Get the filename for export. - */ - protected function filename(): string - { - return 'Special_Code_' . date('YmdHis'); - } -} diff --git a/app/DataTables/SubDirectoratDataTable.php b/app/DataTables/SubDirectoratDataTable.php deleted file mode 100644 index cbab504..0000000 --- a/app/DataTables/SubDirectoratDataTable.php +++ /dev/null @@ -1,94 +0,0 @@ -filter(function ($query) { - if (request()->has('search')) { - $search = request()->get('search'); - $query->where('kode', 'like', "%" . $search['value'] . "%") - ->orWhere('name', 'like', "%" . $search['value'] . "%") - ->orWhereRelation('directorat', 'name', 'like', '%'.$search['value'].'%'); - } - }) - ->addIndexColumn() - ->addColumn('directorat', function ($subDirectorat) { - return $subDirectorat->directorat->name; - }) - ->addColumn('action', 'pages.masters.sub-directorat._action') - ->setRowId('id'); - } - - /** - * Get the query source of dataTable. - */ - public function query(SubDirectorat $model): QueryBuilder - { - return $model->newQuery(); - } - - /** - * Optional method if you want to use the html builder. - */ - public function html(): HtmlBuilder - { - return $this->builder() - ->setTableId('sub-directorat-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->stateSave(false) - ->responsive() - ->autoWidth(true) - ->orderBy(1) - ->parameters([ - 'scrollX' => true, - 'drawCallback' => 'function() { KTMenu.createInstances(); }', - ]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - } - - /** - * Get the dataTable columns definition. - */ - public function getColumns(): array - { - return [ - Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), - Column::make('directorat'), - Column::make('kode'), - Column::make('name'), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->width(60) - ->addClass('text-center'), - ]; - } - - /** - * Get the filename for export. - */ - protected function filename(): string - { - return 'Sub_Directorat_' . date('YmdHis'); - } -} diff --git a/app/DataTables/SubJobDataTable.php b/app/DataTables/SubJobDataTable.php deleted file mode 100644 index 7b80948..0000000 --- a/app/DataTables/SubJobDataTable.php +++ /dev/null @@ -1,104 +0,0 @@ -filter(function ($query) { - if (request()->has('search')) { - $search = request()->get('search'); - $query->where('kode', 'like', "%" . $search['value'] . "%") - ->orWhere('name', 'like', "%" . $search['value'] . "%") - ->orWhereRelation('directorat', 'name', 'like', '%'.$search['value'].'%') - ->orWhereRelation('subDirectorat', 'name', 'like', '%'.$search['value'].'%') - ->orWhereRelation('job', 'name', 'like', '%'.$search['value'].'%'); - } - }) - ->addIndexColumn() - ->addColumn('directorat', function ($subJob) { - return $subJob->directorat->name; - }) - ->addColumn('sub_directorat', function ($subJob) { - return $subJob->subDirectorat->name; - }) - ->addColumn('job', function ($subJob) { - return $subJob->job->name; - }) - ->addColumn('action', 'pages.masters.sub-job._action') - ->setRowId('id'); - } - - /** - * Get the query source of dataTable. - */ - public function query(SubJob $model): QueryBuilder - { - return $model->newQuery(); - } - - /** - * Optional method if you want to use the html builder. - */ - public function html(): HtmlBuilder - { - return $this->builder() - ->setTableId('sub-job-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->stateSave(false) - ->responsive() - ->autoWidth(true) - ->orderBy(1) - ->parameters([ - 'scrollX' => true, - 'drawCallback' => 'function() { KTMenu.createInstances(); }', - ]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - } - - /** - * Get the dataTable columns definition. - */ - public function getColumns(): array - { - return [ - Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), - Column::make('directorat'), - Column::make('sub_directorat'), - Column::make('job'), - Column::make('kode'), - Column::make('name'), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->width(60) - ->addClass('text-center'), - ]; - } - - /** - * Get the filename for export. - */ - protected function filename(): string - { - return 'Sub_Job_' . date('YmdHis'); - } -} diff --git a/app/DataTables/SubSubJobDataTable.php b/app/DataTables/SubSubJobDataTable.php deleted file mode 100644 index 6edc8e0..0000000 --- a/app/DataTables/SubSubJobDataTable.php +++ /dev/null @@ -1,109 +0,0 @@ -filter(function ($query) { - if (request()->has('search')) { - $search = request()->get('search'); - $query->where('kode', 'like', "%" . $search['value'] . "%") - ->orWhere('name', 'like', "%" . $search['value'] . "%") - ->orWhereRelation('directorat', 'name', 'like', '%'.$search['value'].'%') - ->orWhereRelation('subDirectorat', 'name', 'like', '%'.$search['value'].'%') - ->orWhereRelation('job', 'name', 'like', '%'.$search['value'].'%') - ->orWhereRelation('subJob', 'name', 'like', '%'.$search['value'].'%'); - } - }) - ->addIndexColumn() - ->addColumn('directorat', function ($subJob) { - return $subJob->directorat->name; - }) - ->addColumn('sub_directorat', function ($subJob) { - return $subJob->subDirectorat->name; - }) - ->addColumn('job', function ($subJob) { - return $subJob->job->name; - }) - ->addColumn('sub_job', function ($subJob) { - return $subJob->subJob->name; - }) - ->addColumn('action', 'pages.masters.sub-sub-job._action') - ->setRowId('id'); - } - - /** - * Get the query source of dataTable. - */ - public function query(SubSubJob $model): QueryBuilder - { - return $model->newQuery(); - } - - /** - * Optional method if you want to use the html builder. - */ - public function html(): HtmlBuilder - { - return $this->builder() - ->setTableId('sub-sub-job-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->stateSave(false) - ->responsive() - ->autoWidth(true) - ->orderBy(1) - ->parameters([ - 'scrollX' => true, - 'drawCallback' => 'function() { KTMenu.createInstances(); }', - ]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - } - - /** - * Get the dataTable columns definition. - */ - public function getColumns(): array - { - return [ - Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), - Column::make('directorat'), - Column::make('sub_directorat'), - Column::make('job'), - Column::make('sub_job'), - Column::make('kode'), - Column::make('name'), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->width(60) - ->addClass('text-center'), - ]; - } - - /** - * Get the filename for export. - */ - protected function filename(): string - { - return 'Sub_Sub_Job_' . date('YmdHis'); - } -} diff --git a/app/DataTables/Users/PermissionsDataTable.php b/app/DataTables/Users/PermissionsDataTable.php deleted file mode 100644 index 83a504b..0000000 --- a/app/DataTables/Users/PermissionsDataTable.php +++ /dev/null @@ -1,102 +0,0 @@ -eloquent($query) - ->filter(function ($query) { - if (request()->has('search')) { - $search = request()->get('search'); - $query->where('name', 'like', "%" . $search['value'] . "%"); - } - }) - ->rawColumns(['action','role']) - ->addIndexColumn() - ->addColumn('name', function (PermissionGroup $model) { - return $model->name; - }) - ->addColumn('role', function (PermissionGroup $model){ - $role = $model->roles($model); - return view('pages.users.permissions._checkbox', compact('role')); - }) - ->addColumn('action', function (PermissionGroup $model) { - return view('pages.users.permissions._action', compact('model')); - }); - } - - /** - * Get query source of dataTable. - * - * @param \App\Models\PermissionGroup $model - * @return \Illuminate\Database\Eloquent\Builder - */ - public function query(PermissionGroup $model) - { - return $model->newQuery(); - } - - /** - * Optional method if you want to use html builder. - * - * @return \Yajra\DataTables\Html\Builder - */ - public function html() - { - return $this->builder() - ->setTableId('user-permissions-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->orderBy(1,'asc') - ->stateSave(false) - ->responsive() - ->autoWidth(false) - ->parameters([ - 'scrollX' => true, - 'drawCallback' => 'function() { KTMenu.createInstances(); }', - ]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - } - - /** - * Get columns. - * - * @return array - */ - protected function getColumns() - { - return [ - Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), - Column::make('name')->title('Name'), - Column::make('role')->title('Assign To'), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->addClass('text-center') - ->responsivePriority(-1), - - ]; - } - - /** - * Get filename for export - * @return string - */ - protected function filename() : string - { - return 'Permissions_' . date('YmdHis'); - } - } diff --git a/app/DataTables/Users/RolesDataTable.php b/app/DataTables/Users/RolesDataTable.php deleted file mode 100644 index 3b6f6a5..0000000 --- a/app/DataTables/Users/RolesDataTable.php +++ /dev/null @@ -1,96 +0,0 @@ -eloquent($query) - ->rawColumns(['action']) - ->addIndexColumn() - ->filter(function ($query) { - if (request()->has('search')) { - $search = request()->get('search'); - $query->where('name', 'like', "%" . $search['value'] . "%"); - } - }) - ->addColumn('action', function (Role $model) { - return view('pages.users.roles._action', compact('model')); - }); - } - - /** - * Get query source of dataTable. - * - * @param \App\Models\Role $model - * @return \Illuminate\Database\Eloquent\Builder - */ - public function query(Role $model) - { - return $model->newQuery(); - } - - /** - * Optional method if you want to use html builder. - * - * @return \Yajra\DataTables\Html\Builder - */ - public function html() - { - return $this->builder() - ->setTableId('user-roles-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->orderBy(1,'asc') - ->stateSave(false) - ->responsive() - ->autoWidth(false) - ->parameters([ - 'scrollX' => true, - 'drawCallback' => 'function() { KTMenu.createInstances(); }', - ]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - - } - - /** - * Get columns. - * - * @return array - */ - protected function getColumns() - { - return [ - Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), - Column::make('name'), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->addClass('text-center') - ->responsivePriority(-1), - - ]; - } - - /** - * Get filename for export. - * - * @return string - */ - protected function filename() : string - { - return 'Roles_' . date('YmdHis'); - } -} diff --git a/app/DataTables/Users/UsersDataTable.php b/app/DataTables/Users/UsersDataTable.php deleted file mode 100644 index bc89c15..0000000 --- a/app/DataTables/Users/UsersDataTable.php +++ /dev/null @@ -1,97 +0,0 @@ -eloquent($query) - ->filter(function ($query) { - $search = request()->get('search'); - if ($search['value']!=="") { - $query->where('name', 'like', "%" . $search['value'] . "%") - ->orWhere('email', 'like', "%" . $search['value'] . "%"); - } - }) - ->rawColumns(['action']) - ->addIndexColumn() - ->addColumn('action', function (User $model) { - return view('pages.users.users._action', compact('model')); - }); - } - - /** - * Get query source of dataTable. - * - * @param \App\Models\User $model - * @return \Illuminate\Database\Eloquent\Builder - */ - public function query(User $model) - { - return $model->newQuery(); - } - - /** - * Optional method if you want to use html builder. - * - * @return \Yajra\DataTables\Html\Builder - */ - public function html() - { - return $this->builder() - ->setTableId('user-users-table') - ->columns($this->getColumns()) - ->minifiedAjax() - ->orderBy(1,'asc') - ->stateSave(false) - ->responsive() - ->autoWidth(false) - ->parameters([ - 'scrollX' => true, - 'drawCallback' => 'function() { KTMenu.createInstances(); }', - ]) - ->addTableClass('align-middle table-row-dashed fs-6 gy-5'); - } - - /** - * Get columns. - * - * @return array - */ - protected function getColumns() - { - return [ - Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), - Column::make('name')->title(__('Name')), - Column::make('email'), - Column::computed('action') - ->exportable(false) - ->printable(false) - ->addClass('text-center') - ->responsivePriority(-1), - ]; - } - - /** - * Get filename for export. - * - * @return string - */ - protected function filename() : string - { - return 'Users_' . date('YmdHis'); - } -} diff --git a/app/DataTables/UsersAssignedRoleDataTable.php b/app/DataTables/UsersAssignedRoleDataTable.php new file mode 100644 index 0000000..39b2e7b --- /dev/null +++ b/app/DataTables/UsersAssignedRoleDataTable.php @@ -0,0 +1,88 @@ +rawColumns(['user']) + ->editColumn('user', function (User $user) { + return view('pages/apps.user-management.roles.columns._user', compact('user')); + }) + ->editColumn('created_at', function (User $user) { + return $user->created_at->format('d M Y, h:i a'); + }) + ->addColumn('action', function (User $user) { + return view('pages/apps.user-management.roles.columns._actions', compact('user')); + }) + ->setRowId('id'); + } + + /** + * Get the query source of dataTable. + */ + public function query(User $model): QueryBuilder + { + return $model->newQuery()->whereHas('roles', function (Builder $query) { + $query->where('role_id', $this->role->getKey()); + }); + } + + /** + * Optional method if you want to use the html builder. + */ + public function html(): HtmlBuilder + { + return $this->builder() + ->setTableId('usersassingedrole-table') + ->columns($this->getColumns()) + ->minifiedAjax() + ->dom('rt' . "<'row'<'col-sm-12 col-md-5'l><'col-sm-12 col-md-7'p>>",) + ->addTableClass('table align-middle table-row-dashed fs-6 gy-5 dataTable no-footer text-gray-600 fw-semibold') + ->setTableHeadClass('text-start text-muted fw-bold fs-7 text-uppercase gs-0') + ->orderBy(1) + ->drawCallback("function() {" . file_get_contents(resource_path('views/pages/apps/user-management/users/columns/_draw-scripts.js')) . "}"); + } + + /** + * Get the dataTable columns definition. + */ + public function getColumns(): array + { + return [ + Column::make('id'), + Column::make('user')->addClass('d-flex align-items-center')->name('name'), + Column::make('name'), + Column::make('created_at')->title('Joined Date')->addClass('text-nowrap'), + Column::computed('action') + ->addClass('text-end text-nowrap') + ->exportable(false) + ->printable(false) + ->width(60), + ]; + } + + /** + * Get the filename for export. + */ + protected function filename(): string + { + return 'UsersAssingedRole_' . date('YmdHis'); + } +} diff --git a/app/DataTables/UsersDataTable.php b/app/DataTables/UsersDataTable.php new file mode 100644 index 0000000..885668f --- /dev/null +++ b/app/DataTables/UsersDataTable.php @@ -0,0 +1,91 @@ +rawColumns(['user', 'last_login_at']) + ->editColumn('user', function (User $user) { + return view('pages/apps.user-management.users.columns._user', compact('user')); + }) + ->editColumn('role', function (User $user) { + return ucwords($user->roles->first()?->name); + }) + ->editColumn('last_login_at', function (User $user) { + return sprintf('
%s
', $user->last_login_at ? $user->last_login_at->diffForHumans() : $user->updated_at->diffForHumans()); + }) + ->editColumn('created_at', function (User $user) { + return $user->created_at->format('d M Y, h:i a'); + }) + ->addColumn('action', function (User $user) { + return view('pages/apps.user-management.users.columns._actions', compact('user')); + }) + ->setRowId('id'); + } + + + /** + * Get the query source of dataTable. + */ + public function query(User $model): QueryBuilder + { + return $model->newQuery(); + } + + /** + * Optional method if you want to use the html builder. + */ + public function html(): HtmlBuilder + { + return $this->builder() + ->setTableId('users-table') + ->columns($this->getColumns()) + ->minifiedAjax() + ->dom('rt' . "<'row'<'col-sm-12 col-md-5'l><'col-sm-12 col-md-7'p>>",) + ->addTableClass('table align-middle table-row-dashed fs-6 gy-5 dataTable no-footer text-gray-600 fw-semibold') + ->setTableHeadClass('text-start text-muted fw-bold fs-7 text-uppercase gs-0') + ->orderBy(2) + ->drawCallback("function() {" . file_get_contents(resource_path('views/pages/apps/user-management/users/columns/_draw-scripts.js')) . "}"); + } + + /** + * Get the dataTable columns definition. + */ + public function getColumns(): array + { + return [ + Column::make('user')->addClass('d-flex align-items-center')->name('name'), + Column::make('role')->searchable(false), + Column::make('last_login_at')->title('Last Login'), + Column::make('created_at')->title('Joined Date')->addClass('text-nowrap'), + Column::computed('action') + ->addClass('text-end text-nowrap') + ->exportable(false) + ->printable(false) + ->width(60) + ]; + } + + /** + * Get the filename for export. + */ + protected function filename(): string + { + return 'Users_' . date('YmdHis'); + } +} diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php index 82a37e4..b1eac09 100644 --- a/app/Exceptions/Handler.php +++ b/app/Exceptions/Handler.php @@ -3,6 +3,7 @@ namespace App\Exceptions; use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler; +use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Throwable; class Handler extends ExceptionHandler @@ -46,5 +47,14 @@ class Handler extends ExceptionHandler $this->reportable(function (Throwable $e) { // }); + + $this->renderable(function (NotFoundHttpException $e, $request) { + if ($request->is('api/*')) { + return response()->json([ + 'message' => 'Not found.' + ], 404); + } + }); } + } diff --git a/app/Helpers/Helpers.php b/app/Helpers/Helpers.php index fae5381..66487ce 100644 --- a/app/Helpers/Helpers.php +++ b/app/Helpers/Helpers.php @@ -1,425 +1,601 @@ addHtmlAttribute($scope, $name, $value); + if (!function_exists('addHtmlAttribute')) { + /** + * Add HTML attributes by scope + * + * @param $scope + * @param $name + * @param $value + * + * @return void + */ + function addHtmlAttribute($scope, $name, $value) + { + theme()->addHtmlAttribute($scope, $name, $value); + } } -} -if (!function_exists('addHtmlAttributes')) { - /** - * Add multiple HTML attributes by scope - * - * @param $scope - * @param $attributes - * - * @return void - */ - function addHtmlAttributes($scope, $attributes) - { - theme()->addHtmlAttributes($scope, $attributes); + if (!function_exists('addHtmlAttributes')) { + /** + * Add multiple HTML attributes by scope + * + * @param $scope + * @param $attributes + * + * @return void + */ + function addHtmlAttributes($scope, $attributes) + { + theme()->addHtmlAttributes($scope, $attributes); + } } -} -if (!function_exists('addHtmlClass')) { - /** - * Add HTML class by scope - * - * @param $scope - * @param $value - * - * @return void - */ - function addHtmlClass($scope, $value) - { - theme()->addHtmlClass($scope, $value); + if (!function_exists('addHtmlClass')) { + /** + * Add HTML class by scope + * + * @param $scope + * @param $value + * + * @return void + */ + function addHtmlClass($scope, $value) + { + theme()->addHtmlClass($scope, $value); + } } -} -if (!function_exists('printHtmlAttributes')) { - /** - * Print HTML attributes for the HTML template - * - * @param $scope - * - * @return string - */ - function printHtmlAttributes($scope) - { - return theme()->printHtmlAttributes($scope); + if (!function_exists('printHtmlAttributes')) { + /** + * Print HTML attributes for the HTML template + * + * @param $scope + * + * @return string + */ + function printHtmlAttributes($scope) + { + return theme()->printHtmlAttributes($scope); + } } -} -if (!function_exists('printHtmlClasses')) { - /** - * Print HTML classes for the HTML template - * - * @param $scope - * @param $full - * - * @return string - */ - function printHtmlClasses($scope, $full = true) - { - return theme()->printHtmlClasses($scope, $full); + if (!function_exists('printHtmlClasses')) { + /** + * Print HTML classes for the HTML template + * + * @param $scope + * @param $full + * + * @return string + */ + function printHtmlClasses($scope, $full = true) + { + return theme()->printHtmlClasses($scope, $full); + } } -} -if (!function_exists('getSvgIcon')) { - /** - * Get SVG icon content - * - * @param $path - * @param $classNames - * @param $folder - * - * @return string - */ - function getSvgIcon($path, $classNames = 'svg-icon', $folder = 'assets/media/icons/') - { - return theme()->getSvgIcon($path, $classNames, $folder); + if (!function_exists('getSvgIcon')) { + /** + * Get SVG icon content + * + * @param $path + * @param $classNames + * @param $folder + * + * @return string + */ + function getSvgIcon($path, $classNames = 'svg-icon', $folder = 'assets/media/icons/') + { + return theme()->getSvgIcon($path, $classNames, $folder); + } } -} -if (!function_exists('setModeSwitch')) { - /** - * Set dark mode enabled status - * - * @param $flag - * - * @return void - */ - function setModeSwitch($flag) - { + if (!function_exists('setModeSwitch')) { + /** + * Set dark mode enabled status + * + * @param $flag + * + * @return void + */ + function setModeSwitch($flag) + { + theme()->setModeSwitch($flag); + } } -} -if (!function_exists('isModeSwitchEnabled')) { - /** - * Check dark mode status - * - * @return void - */ - function isModeSwitchEnabled() - { + if (!function_exists('isModeSwitchEnabled')) { + /** + * Check dark mode status + * + * @return void + */ + function isModeSwitchEnabled() + { + return theme()->isModeSwitchEnabled(); + } } -} -if (!function_exists('setModeDefault')) { - /** - * Set the mode to dark or light - * - * @param $mode - * - * @return void - */ - function setModeDefault($mode) - { + if (!function_exists('setModeDefault')) { + /** + * Set the mode to dark or light + * + * @param $mode + * + * @return void + */ + function setModeDefault($mode) + { + theme()->setModeDefault($mode); + } } -} -if (!function_exists('getModeDefault')) { - /** - * Get current mode - * - * @return void - */ - function getModeDefault() - { + if (!function_exists('getModeDefault')) { + /** + * Get current mode + * + * @return void + */ + function getModeDefault() + { + return theme()->getModeDefault(); + } } -} -if (!function_exists('setDirection')) { - /** - * Set style direction - * - * @param $direction - * - * @return void - */ - function setDirection($direction) - { + if (!function_exists('setDirection')) { + /** + * Set style direction + * + * @param $direction + * + * @return void + */ + function setDirection($direction) + { + theme()->setDirection($direction); + } } -} -if (!function_exists('getDirection')) { - /** - * Get style direction - * - * @return void - */ - function getDirection() - { + if (!function_exists('getDirection')) { + /** + * Get style direction + * + * @return void + */ + function getDirection() + { + return theme()->getDirection(); + } } -} -if (!function_exists('isRtlDirection')) { - /** - * Check if style direction is RTL - * - * @return void - */ - function isRtlDirection() - { + if (!function_exists('isRtlDirection')) { + /** + * Check if style direction is RTL + * + * @return void + */ + function isRtlDirection() + { + return theme()->isRtlDirection(); + } } -} -if (!function_exists('extendCssFilename')) { - /** - * Extend CSS file name with RTL or dark mode - * - * @param $path - * - * @return void - */ - function extendCssFilename($path) - { + if (!function_exists('extendCssFilename')) { + /** + * Extend CSS file name with RTL or dark mode + * + * @param $path + * + * @return void + */ + function extendCssFilename($path) + { + return theme()->extendCssFilename($path); + } } -} -if (!function_exists('includeFavicon')) { - /** - * Include favicon from settings - * - * @return string - */ - function includeFavicon() - { - return theme()->includeFavicon(); + if (!function_exists('includeFavicon')) { + /** + * Include favicon from settings + * + * @return string + */ + function includeFavicon() + { + return theme()->includeFavicon(); + } } -} -if (!function_exists('includeFonts')) { - /** - * Include the fonts from settings - * - * @return string - */ - function includeFonts() - { - return theme()->includeFonts(); + if (!function_exists('includeFonts')) { + /** + * Include the fonts from settings + * + * @return string + */ + function includeFonts() + { + return theme()->includeFonts(); + } } -} -if (!function_exists('getGlobalAssets')) { - /** - * Get the global assets - * - * @param $type - * - * @return array - */ - function getGlobalAssets($type = 'js') - { - return theme()->getGlobalAssets($type); + if (!function_exists('getGlobalAssets')) { + /** + * Get the global assets + * + * @param $type + * + * @return array + */ + function getGlobalAssets($type = 'js') + { + return theme()->getGlobalAssets($type); + } } -} -if (!function_exists('addVendors')) { - /** - * Add multiple vendors to the page by name. Refer to settings KT_THEME_VENDORS - * - * @param $vendors - * - * @return void - */ - function addVendors($vendors) - { - theme()->addVendors($vendors); + if (!function_exists('addVendors')) { + /** + * Add multiple vendors to the page by name. Refer to settings KT_THEME_VENDORS + * + * @param $vendors + * + * @return void + */ + function addVendors($vendors) + { + theme()->addVendors($vendors); + } } -} -if (!function_exists('addVendor')) { - /** - * Add single vendor to the page by name. Refer to settings KT_THEME_VENDORS - * - * @param $vendor - * - * @return void - */ - function addVendor($vendor) - { - theme()->addVendor($vendor); + if (!function_exists('addVendor')) { + /** + * Add single vendor to the page by name. Refer to settings KT_THEME_VENDORS + * + * @param $vendor + * + * @return void + */ + function addVendor($vendor) + { + theme()->addVendor($vendor); + } } -} -if (!function_exists('addJavascriptFile')) { - /** - * Add custom javascript file to the page - * - * @param $file - * - * @return void - */ - function addJavascriptFile($file) - { - theme()->addJavascriptFile($file); + if (!function_exists('addJavascriptFile')) { + /** + * Add custom javascript file to the page + * + * @param $file + * + * @return void + */ + function addJavascriptFile($file) + { + theme()->addJavascriptFile($file); + } } -} -if (!function_exists('addCssFile')) { - /** - * Add custom CSS file to the page - * - * @param $file - * - * @return void - */ - function addCssFile($file) - { - theme()->addCssFile($file); + if (!function_exists('addCssFile')) { + /** + * Add custom CSS file to the page + * + * @param $file + * + * @return void + */ + function addCssFile($file) + { + theme()->addCssFile($file); + } } -} -if (!function_exists('getVendors')) { - /** - * Get vendor files from settings. Refer to settings KT_THEME_VENDORS - * - * @param $type - * - * @return array - */ - function getVendors($type) - { - return theme()->getVendors($type); + if (!function_exists('getVendors')) { + /** + * Get vendor files from settings. Refer to settings KT_THEME_VENDORS + * + * @param $type + * + * @return array + */ + function getVendors($type) + { + return theme()->getVendors($type); + } } -} -if (!function_exists('getCustomJs')) { - /** - * Get custom js files from the settings - * - * @return array - */ - function getCustomJs() - { - return theme()->getCustomJs(); + if (!function_exists('getCustomJs')) { + /** + * Get custom js files from the settings + * + * @return array + */ + function getCustomJs() + { + return theme()->getCustomJs(); + } } -} -if (!function_exists('getCustomCss')) { - /** - * Get custom css files from the settings - * - * @return array - */ - function getCustomCss() - { - return theme()->getCustomCss(); + if (!function_exists('getCustomCss')) { + /** + * Get custom css files from the settings + * + * @return array + */ + function getCustomCss() + { + return theme()->getCustomCss(); + } } -} -if (!function_exists('getHtmlAttribute')) { - /** - * Get HTML attribute based on the scope - * - * @param $scope - * @param $attribute - * - * @return array - */ - function getHtmlAttribute($scope, $attribute) - { - return theme()->getHtmlAttribute($scope, $attribute); + if (!function_exists('getHtmlAttribute')) { + /** + * Get HTML attribute based on the scope + * + * @param $scope + * @param $attribute + * + * @return array + */ + function getHtmlAttribute($scope, $attribute) + { + return theme()->getHtmlAttribute($scope, $attribute); + } } -} -if (!function_exists('isUrl')) { - /** - * Get HTML attribute based on the scope - * - * @param $url - * - * @return mixed - */ - function isUrl($url) - { - return filter_var($url, FILTER_VALIDATE_URL); + if (!function_exists('isUrl')) { + /** + * Get HTML attribute based on the scope + * + * @param $url + * + * @return mixed + */ + function isUrl($url) + { + return filter_var($url, FILTER_VALIDATE_URL); + } } -} -if (!function_exists('image')) { - /** - * Get image url by path - * - * @param $path - * - * @return string - */ - function image($path) - { - return asset('assets/media/'.$path); + if (!function_exists('image')) { + /** + * Get image url by path + * + * @param $path + * + * @return string + */ + function image($path) + { + return asset('assets/media/' . $path); + } } -} -if (!function_exists('getIcon')) { - /** - * Get icon - * - * @param $path - * - * @return string - */ - function getIcon($name, $class = '', $type = '') - { - return theme()->getIcon($name, $class, $type); + if (!function_exists('getIcon')) { + /** + * Get icon + * + * @param $path + * + * @return string + */ + function getIcon($name, $class = '', $type = '', $tag = 'span') + { + return theme()->getIcon($name, $class, $type, $tag); + } } -} + + + if (!function_exists('get_user')) { + /** + * Get icon + * + * @param $path + * + * @return string + */ + function get_user($id) + { + return User::find($id); + } + } + + + if (!function_exists('get_status')) { + /** + * Get icon + * + * @param $path + * + * @return string + */ + function get_status($status) + { + if ($status == 0) { + return 'Waiting Approval'; + } else if ($status == 1) { + return 'Approved'; + } else if ($status == 3) { + return 'Rejected'; + } + } + } + + if (!function_exists('verify_user')) { + function verify_user($id, $passwd, $SERVER_ADDR, $IPUserManager, $portUserManager, $appId) + { + $USERMANPROG = "user_verification.php"; + $sock = fsockopen("tcp://" . $IPUserManager, $portUserManager, $errno, $errstr, 30); + if (!$sock) + die("$errstr ($errno)\n"); + $data = "appsid=" . urlencode($appId) . "&loginid=" . urlencode($id) . "&passwd=" . urlencode($passwd) . "&addr=" . $SERVER_ADDR . "&version=2"; + //echo "data: $data
"; + fwrite($sock, "POST /user_verification_dev.php HTTP/1.0\r\n"); + fwrite($sock, "Host: $IPUserManager\r\n"); + fwrite($sock, "Content-type: application/x-www-form-urlencoded\r\n"); + fwrite($sock, "Content-length: " . strlen($data) . "\r\n"); + fwrite($sock, "Accept: */*\r\n"); + fwrite($sock, "\r\n"); + fwrite($sock, "$data\r\n"); + fwrite($sock, "\r\n"); + $headers = ""; + while ($str = trim(fgets($sock, 4096))) + $headers .= "$str\n"; + $body = ""; + while (!feof($sock)) + $body .= fgets($sock, 4096); + fclose($sock); + return decompress($body); + } + } + + if(!function_exists('getAllowableScript')) { + function getAllowableScript($sessionMenu) + { + //$sessionMenu = $_SESSION['MENU']; + if (!empty($sessionMenu)) { + $tempMenuArrayLine = explode('-', $sessionMenu); + //print_r($tempMenuArrayLine); + if (count($tempMenuArrayLine) > 0) { + foreach ($tempMenuArrayLine as $tkey => $tval) { + $tempMenuArray = explode('|', $tval); + if (count($tempMenuArray) > 0) { + foreach ($tempMenuArray as $mkey => $mval) { + [$menukey, $menuval] = explode('>', $mval); + if ($menukey === 'LINK') { + $SCRIPT_ALLOW[$menuval] = 1; + } + //$menu[$menuCounter][$menukey] = $menuval; + } + //$menuCounter++; + } + } + } + } + return $SCRIPT_ALLOW; + } + } + + if(!function_exists('decompress')) { + function decompress($data) + { + $text = ''; + $total = strlen($data); + for ($j = 0; $j < $total; $j = $j + 2) { + $text .= chr(hexdec(substr($data, $j, 2))); + } + return $text; + } + } + + + if(!function_exists('compress')) { + function compress($data) + { + $text = ''; + $total = strlen($data); + for ($i = 0; $i < $total; $i++) { + $temp = dechex(ord(substr($data, $i, 1))); + if (strlen($temp) < 2) { + $temp = '0' . $temp; + } + $text .= $temp; + } + return $text; + } + } + + if(!function_exists('jsonToView')) { + function jsonToView($jsonText = '') + { + $arr = json_decode($jsonText, true); + $html = ""; + if ($arr && is_array($arr)) { + $html .= _arrayToHtmlTableRecursive($arr); + } + return $html; + } + } + + if(!function_exists('_arrayToHtmlTableRecursive')) { + function _arrayToHtmlTableRecursive($arr) + { + $str = ""; + foreach ($arr as $key => $val) { + $str .= ""; + $str .= ""; + $str .= ""; + } + $str .= "
$key"; + if (is_array($val)) { + if (!empty($val)) { + $str .= _arrayToHtmlTableRecursive($val); + } + } else { + $str .= "$val"; + } + $str .= "
"; + return $str; + } + } + + + if(!function_exists('_countDocumentOnCardboard')) { + function _countDocumentOnCardboard($cardboard_id) + { + $cardboard = Cardboard::with(['cardboard_detail'])->find($cardboard_id); + $document_id = $cardboard->cardboard_detail->pluck('document_id')->toArray(); + return count($document_id); + } + } + diff --git a/app/Http/Controllers/ApiController.php b/app/Http/Controllers/ApiController.php new file mode 100644 index 0000000..b52db91 --- /dev/null +++ b/app/Http/Controllers/ApiController.php @@ -0,0 +1,43 @@ + true, + 'data' => $result, + 'message' => $message, + ]; + + return response()->json($response, $code); + } + + + /** + * return error response. + * + * @return \Illuminate\Http\Response + */ + public function sendError($error, $errorMessages = [], $code = 404) + { + $response = [ + 'success' => false, + 'message' => $error, + ]; + + if (!empty($errorMessages)) { + $response['data'] = $errorMessages; + } + + return response()->json($response, $code); + } + } diff --git a/app/Http/Controllers/Apps/PermissionManagementController.php b/app/Http/Controllers/Apps/PermissionManagementController.php new file mode 100644 index 0000000..959ec44 --- /dev/null +++ b/app/Http/Controllers/Apps/PermissionManagementController.php @@ -0,0 +1,66 @@ +render('pages/apps.user-management.permissions.list'); + } + + /** + * Show the form for creating a new resource. + */ + public function create() + { + // + } + + /** + * Store a newly created resource in storage. + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + */ + public function show(string $id) + { + // + } + + /** + * Show the form for editing the specified resource. + */ + public function edit(string $id) + { + // + } + + /** + * Update the specified resource in storage. + */ + public function update(Request $request, string $id) + { + // + } + + /** + * Remove the specified resource from storage. + */ + public function destroy(string $id) + { + // + } +} diff --git a/app/Http/Controllers/Apps/RoleManagementController.php b/app/Http/Controllers/Apps/RoleManagementController.php new file mode 100644 index 0000000..a6e9b79 --- /dev/null +++ b/app/Http/Controllers/Apps/RoleManagementController.php @@ -0,0 +1,68 @@ +with('role', $role) + ->render('pages/apps.user-management.roles.show', compact('role')); + } + + /** + * Show the form for editing the specified resource. + */ + public function edit(Role $role) + { + // + } + + /** + * Update the specified resource in storage. + */ + public function update(Request $request, Role $role) + { + // + } + + /** + * Remove the specified resource from storage. + */ + public function destroy(Role $role) + { + // + } +} diff --git a/app/Http/Controllers/Apps/UserManagementController.php b/app/Http/Controllers/Apps/UserManagementController.php new file mode 100644 index 0000000..5fcbf1b --- /dev/null +++ b/app/Http/Controllers/Apps/UserManagementController.php @@ -0,0 +1,67 @@ +render('pages/apps.user-management.users.list'); + } + + /** + * Show the form for creating a new resource. + */ + public function create() + { + // + } + + /** + * Store a newly created resource in storage. + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + */ + public function show(User $user) + { + return view('pages/apps.user-management.users.show', compact('user')); + } + + /** + * Show the form for editing the specified resource. + */ + public function edit(User $user) + { + // + } + + /** + * Update the specified resource in storage. + */ + public function update(Request $request, User $user) + { + // + } + + /** + * Remove the specified resource from storage. + */ + public function destroy(User $user) + { + // + } +} diff --git a/app/Http/Controllers/Auth/AuthenticatedSessionController.php b/app/Http/Controllers/Auth/AuthenticatedSessionController.php index 587495b..12e315f 100644 --- a/app/Http/Controllers/Auth/AuthenticatedSessionController.php +++ b/app/Http/Controllers/Auth/AuthenticatedSessionController.php @@ -6,6 +6,7 @@ use App\Http\Controllers\Controller; use App\Http\Requests\Auth\LoginRequest; use App\Providers\RouteServiceProvider; use Illuminate\Http\Request; +use Illuminate\Support\Carbon; use Illuminate\Support\Facades\Auth; class AuthenticatedSessionController extends Controller @@ -19,7 +20,7 @@ class AuthenticatedSessionController extends Controller { addJavascriptFile('assets/js/custom/authentication/sign-in/general.js'); - return view('pages.auth.login'); + return view('pages/auth.login'); } /** @@ -35,6 +36,11 @@ class AuthenticatedSessionController extends Controller $request->session()->regenerate(); + $request->user()->update([ + 'last_login_at' => Carbon::now()->toDateTimeString(), + 'last_login_ip' => $request->getClientIp() + ]); + return redirect()->intended(RouteServiceProvider::HOME); } diff --git a/app/Http/Controllers/Auth/ConfirmablePasswordController.php b/app/Http/Controllers/Auth/ConfirmablePasswordController.php index 525bea3..f3290d1 100644 --- a/app/Http/Controllers/Auth/ConfirmablePasswordController.php +++ b/app/Http/Controllers/Auth/ConfirmablePasswordController.php @@ -17,7 +17,7 @@ class ConfirmablePasswordController extends Controller */ public function show() { - return view('pages.auth.confirm-password'); + return view('pages/auth.confirm-password'); } /** diff --git a/app/Http/Controllers/Auth/EmailVerificationPromptController.php b/app/Http/Controllers/Auth/EmailVerificationPromptController.php index 1f2efa3..3d7b3fa 100644 --- a/app/Http/Controllers/Auth/EmailVerificationPromptController.php +++ b/app/Http/Controllers/Auth/EmailVerificationPromptController.php @@ -18,6 +18,6 @@ class EmailVerificationPromptController extends Controller { return $request->user()->hasVerifiedEmail() ? redirect()->intended(RouteServiceProvider::HOME) - : view('pages.auth.verify-email'); + : view('pages/auth.verify-email'); } } diff --git a/app/Http/Controllers/Auth/NewPasswordController.php b/app/Http/Controllers/Auth/NewPasswordController.php index 740ad50..3bdaf62 100644 --- a/app/Http/Controllers/Auth/NewPasswordController.php +++ b/app/Http/Controllers/Auth/NewPasswordController.php @@ -20,7 +20,9 @@ class NewPasswordController extends Controller */ public function create(Request $request) { - return view('pages.auth.reset-password', ['request' => $request]); + addJavascriptFile('assets/js/custom/authentication/reset-password/new-password.js'); + + return view('pages/auth.reset-password', ['request' => $request]); } /** diff --git a/app/Http/Controllers/Auth/PasswordResetLinkController.php b/app/Http/Controllers/Auth/PasswordResetLinkController.php index a4ab0ce..3832ce9 100644 --- a/app/Http/Controllers/Auth/PasswordResetLinkController.php +++ b/app/Http/Controllers/Auth/PasswordResetLinkController.php @@ -17,7 +17,7 @@ class PasswordResetLinkController extends Controller { addJavascriptFile('assets/js/custom/authentication/reset-password/reset-password.js'); - return view('pages.auth.forgot-password'); + return view('pages/auth.forgot-password'); } /** diff --git a/app/Http/Controllers/Auth/RegisteredUserController.php b/app/Http/Controllers/Auth/RegisteredUserController.php index 030fcb9..2524cc7 100644 --- a/app/Http/Controllers/Auth/RegisteredUserController.php +++ b/app/Http/Controllers/Auth/RegisteredUserController.php @@ -2,14 +2,15 @@ namespace App\Http\Controllers\Auth; -use App\Http\Controllers\Controller; use App\Models\User; -use App\Providers\RouteServiceProvider; -use Illuminate\Auth\Events\Registered; use Illuminate\Http\Request; +use Illuminate\Support\Carbon; +use Illuminate\Validation\Rules; +use App\Http\Controllers\Controller; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Hash; -use Illuminate\Validation\Rules; +use Illuminate\Auth\Events\Registered; +use App\Providers\RouteServiceProvider; class RegisteredUserController extends Controller { @@ -22,7 +23,7 @@ class RegisteredUserController extends Controller { addJavascriptFile('assets/js/custom/authentication/sign-up/general.js'); - return view('pages.auth.register'); + return view('pages/auth.register'); } /** @@ -45,6 +46,8 @@ class RegisteredUserController extends Controller 'name' => $request->name, 'email' => $request->email, 'password' => Hash::make($request->password), + 'last_login_at' => \Illuminate\Support\Carbon::now()->toDateTimeString(), + 'last_login_ip' => $request->getClientIp() ]); event(new Registered($user)); diff --git a/app/Http/Controllers/Auth/SocialiteController.php b/app/Http/Controllers/Auth/SocialiteController.php new file mode 100644 index 0000000..baf9ff4 --- /dev/null +++ b/app/Http/Controllers/Auth/SocialiteController.php @@ -0,0 +1,54 @@ +input('state')) { + // already logged in + // get user info from social site + $user = Socialite::driver($provider)->stateless()->user(); + + // check for existing user + $existingUser = User::where('email', $user->getEmail())->first(); + + if ($existingUser) { + auth()->login($existingUser, true); + + return redirect()->to('/'); + } + + $newUser = $this->createUser($user); + auth()->login($newUser, true); + } + + // request login from social site + return Socialite::driver($provider)->redirect(); + } + + + function createUser($user) + { + $user = User::updateOrCreate([ + 'email' => $user->getEmail(), + ], [ + 'name' => $user->getName(), + 'password' => '', + 'avatar' => $user->getAvatar(), + ]); + + if ($user->markEmailAsVerified()) { + event(new Verified($user)); + } + + return $user; + } +} diff --git a/app/Http/Controllers/DashboardController.php b/app/Http/Controllers/DashboardController.php index 787adfc..d8cda01 100644 --- a/app/Http/Controllers/DashboardController.php +++ b/app/Http/Controllers/DashboardController.php @@ -8,6 +8,6 @@ class DashboardController extends Controller { addVendors(['amcharts', 'amcharts-maps', 'amcharts-stock']); - return view('pages.dashboards.index'); + return view('pages/dashboards.index'); } } diff --git a/app/Http/Controllers/DirectoratController.php b/app/Http/Controllers/DirectoratController.php deleted file mode 100644 index 9d0be94..0000000 --- a/app/Http/Controllers/DirectoratController.php +++ /dev/null @@ -1,123 +0,0 @@ -middleware(function ($request, $next) { - //$this->user = Auth::guard('web')->user(); - return $next($request); - }); - - //CauserResolver::setCauser($this->user); - } - - /** - * Display a listing of the resource. - */ - public function index(DirectoratDataTable $dataTable) - { - /*if (is_null($this->user) || !$this->user->can('masters.read')) { - abort(403, 'Sorry !! You are Unauthorized to view any master data !'); - }*/ - - return $dataTable->render('pages.masters.directorat.index'); - } - - /** - * Show the form for creating a new resource. - */ - public function create(){} - - /** - * Store a newly created resource in storage. - */ - public function store(StoreDirectoratRequest $request) - { - /*if (is_null($this->user) || !$this->user->can('masters.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any master data !'); - }*/ - - - // Validate the request... - $validated = $request->validated(); - - // Store the Directorat... - if($validated){ - try{ - Directorat::create($validated); - //return redirect()->route('directorat.index')->with('success', 'Directorat created successfully.'); - echo json_encode(['status' => 'success', 'message' => 'Directorat created successfully.']); - }catch(\Exception $e){ - //return redirect()->route('directorat.index')->with('error', 'Directorat created failed.'); - echo json_encode(['status' => 'error', 'message' => 'Directorat created failed.']); - } - } - - return false; - } - - /** - * Display the specified resource. - */ - public function show(Directorat $directorat) - { - - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id){ - $directorat = Directorat::find($id); - echo json_encode($directorat); - } - - /** - * Update the specified resource in storage. - */ - public function update(UpdateDirectoratRequest $request, Directorat $directorat) - { - /*if (is_null($this->user) || !$this->user->can('masters.update')) { - abort(403, 'Sorry !! You are Unauthorized to update any master data !'); - }*/ - - // Validate the request... - $validated = $request->validated(); - - // Update the Directorat... - if($validated){ - try{ - CauserResolver::setCauser($this->user); - $directorat->update($validated); - - //return redirect()->route('directorat.index')->with('success', 'Directorat updated successfully.'); - echo json_encode(['status' => 'success', 'message' => 'Directorat updated successfully.']); - }catch(\Exception $e){ - //return redirect()->route('directorat.index')->with('error', 'Directorat updated failed.'); - echo json_encode(['status' => 'error', 'message' => 'Directorat updated failed.']); - } - } - - return false; - } - - /** - * Remove the specified resource from storage. - */ - public function destroy(Directorat $directorat){ - $directorat->delete(); - echo json_encode(['status' => 'success', 'message' => 'Directorat deleted successfully.']); - } -} diff --git a/app/Http/Controllers/DocumentController.php b/app/Http/Controllers/DocumentController.php deleted file mode 100644 index 15667ed..0000000 --- a/app/Http/Controllers/DocumentController.php +++ /dev/null @@ -1,179 +0,0 @@ -middleware(function ($request, $next) { - //$this->user = Auth::guard('web')->user(); - return $next($request); - }); - - //CauserResolver::setCauser($this->user); - } - - /** - * Display a listing of the resource. - */ - public function index(DocumentDataTable $dataTable) - { - /*if (is_null($this->user) || !$this->user->can('app.read')) { - abort(403, 'Sorry !! You are Unauthorized to view any master data !'); - }*/ - - return $dataTable->render('pages.app.document.index'); - } - - /** - * Show the form for creating a new resource. - */ - public function create() - { - /*if (is_null($this->user) || !$this->user->can('app.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any master data !'); - }*/ - addVendor('chained-select'); - - $directorat = Directorat::all(); - $special_code = SpecialCode::all(); - $document_type = DocumentType::all(); - return view('pages.app.document.create', compact('directorat', 'special_code', 'document_type')); - } - - /** - * Store a newly created resource in storage. - */ - public function store(StoreDocumentRequest $request) - { - /*if (is_null($this->user) || !$this->user->can('app.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any master data !'); - }*/ - - - // Validate the request... - $validated = $request->validated(); - - // Store the Document... - if ($validated) { - $validated['sequence'] = 1; - try { - $created = Document::create($validated); - - if ($created) { - $detail = [ - 'document_id' => $created->id, - 'document_type_id' => $request->document_type_id, - 'tanggal_upload' => date('Y-m-d'), - 'tanggal_dokumen' => $request->tanggal_dokumen, - 'nomor_dokumen' => $request->nomor_dokumen, - 'perihal' => $request->perihal, - 'kode_cabang' => $request->kode_cabang, - 'jumlah_halaman' => $request->jumlah_halaman, - 'custom_field_1' => $request->custom_field_1, - 'custom_field_2' => $request->custom_field_2, - 'custom_field_3' => $request->custom_field_3, - 'custom_field_4' => $request->custom_field_4, - - 'nama_nasabah' => $request->nama_nasabah, - 'no_rekening' => $request->no_rekening, - 'no_cif' => $request->no_cif, - 'group' => $request->group, - ]; - - - DocumentDetail::create($detail); - } - - return redirect()->route('document.index')->with('success', 'Document created successfully.'); - } catch (Exception $e) { - return redirect()->route('document.index')->with('error', 'Document created failed.'); - } - } - - return false; - } - - /** - * Display the specified resource. - */ - public function show(Document $documents) - { - - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id) - { - $document = Document::find($id); - $directorat = Directorat::all(); - $sub_directorat = SubDirectorat::where('directorat_id', $document->directorat_id)->get(); - $job = Job::where('sub_directorat_id', $document->sub_directorat_id)->get(); - $sub_job = SubJob::where('job_id', $document->job_id)->get(); - $sub_sub_job = SubSubJob::where('sub_job_id', $document->sub_job_id)->get(); - $special_code = SpecialCode::all(); - $document_type = DocumentType::all(); - - return view('pages.app.document.edit', compact('document', 'directorat', 'sub_directorat', 'job', 'sub_job', 'sub_sub_job', 'special_code', 'document_type')); - - } - - /** - * Update the specified resource in storage. - */ - public function update(UpdateDocumentRequest $request, Document $documents) - { - /*if (is_null($this->user) || !$this->user->can('app.update')) { - abort(403, 'Sorry !! You are Unauthorized to update any master data !'); - }*/ - - // Validate the request... - $validated = $request->validated(); - - // Update the Document... - if ($validated) { - try { - $document = Document::find($request->id); - $update = $document->update($validated); - - - return redirect()->route('document.index')->with('success', 'Document updated successfully.'); - } catch (Exception $e) { - return redirect()->route('document.index')->with('error', 'Document updated failed.'); - } - } - - return false; - } - - /** - * Remove the specified resource from storage. - */ - public function destroy(Request $request) - { - $documents = Document::find($request->document); - $documents->delete(); - echo json_encode(['status' => 'success', 'message' => 'Document deleted successfully.']); - } - } diff --git a/app/Http/Controllers/DocumentTypeController.php b/app/Http/Controllers/DocumentTypeController.php deleted file mode 100644 index 966026c..0000000 --- a/app/Http/Controllers/DocumentTypeController.php +++ /dev/null @@ -1,118 +0,0 @@ -middleware(function ($request, $next) { - //$this->user = Auth::guard('web')->user(); - return $next($request); - }); - - //CauserResolver::setCauser($this->user); - } - - /** - * Display a listing of the resource. - */ - public function index(DocumentTypeDataTable $dataTable) - { - /*if (is_null($this->user) || !$this->user->can('masters.read')) { - abort(403, 'Sorry !! You are Unauthorized to view any master data !'); - }*/ - - return $dataTable->render('pages.masters.document-type.index'); - } - - /** - * Show the form for creating a new resource. - */ - public function create(){} - - /** - * Store a newly created resource in storage. - */ - public function store(StoreDocumentTypeRequest $request) - { - /*if (is_null($this->user) || !$this->user->can('masters.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any master data !'); - }*/ - - - // Validate the request... - $validated = $request->validated(); - - // Store the Document Type... - if($validated){ - try{ - DocumentType::create($validated); - echo json_encode(['status' => 'success', 'message' => 'Document Type created successfully.']); - }catch(\Exception $e){ - echo json_encode(['status' => 'error', 'message' => 'Document Type created failed.']); - } - } - - return false; - } - - /** - * Display the specified resource. - */ - public function show(DocumentType $document_type) - { - - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id){ - $document_type = DocumentType::find($id); - echo json_encode($document_type); - } - - /** - * Update the specified resource in storage. - */ - public function update(UpdateDocumentTypeRequest $request, DocumentType $document_type) - { - /*if (is_null($this->user) || !$this->user->can('masters.update')) { - abort(403, 'Sorry !! You are Unauthorized to update any master data !'); - }*/ - - // Validate the request... - $validated = $request->validated(); - - // Update the Directorat... - if($validated){ - try{ - $document_type->update($validated); - - echo json_encode(['status' => 'success', 'message' => 'Document Type updated successfully.']); - }catch(\Exception $e){ - echo json_encode(['status' => 'error', 'message' => 'Document Type updated failed.']); - } - } - - return false; - } - - /** - * Remove the specified resource from storage. - */ - public function destroy(DocumentType $document_type){ - $document_type->delete(); - echo json_encode(['status' => 'success', 'message' => 'Document Type deleted successfully.']); - } -} diff --git a/app/Http/Controllers/JobController.php b/app/Http/Controllers/JobController.php deleted file mode 100644 index ce7c475..0000000 --- a/app/Http/Controllers/JobController.php +++ /dev/null @@ -1,139 +0,0 @@ -middleware(function ($request, $next) { - //$this->user = Auth::guard('web')->user(); - return $next($request); - }); - } - - /** - * Display a listing of the resource. - */ - public function index(JobDataTable $dataTable, Request $request) - { - /*if (is_null($this->user) || !$this->user->can('masters.read')) { - abort(403, 'Sorry !! You are Unauthorized to view any master data !'); - }*/ - // Add Vendor - addVendor('chained-select'); - - if(isset($request->sub_directorat_id) && !empty($request->sub_directorat_id)) { - $this->show($request); - return; - } - - $directorat = Directorat::all(); - return $dataTable->render('pages.masters.job.index', compact('directorat')); - } - - /** - * Show the form for creating a new resource. - */ - public function create(){} - - /** - * Store a newly created resource in storage. - */ - public function store(StoreJobRequest $request) - { - /*if (is_null($this->user) || !$this->user->can('masters.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any master data !'); - }*/ - - - // Validate the request... - $validated = $request->validated(); - - // Store the Job... - if($validated){ - try{ - Job::create($validated); - //return redirect()->route('job.index')->with('success', 'Job created successfully.'); - echo json_encode(['status' => 'success', 'message' => 'Job created successfully.']); - }catch(\Exception $e){ - //return redirect()->route('job.index')->with('error', 'Job created failed.'); - echo json_encode(['status' => 'error', 'message' => 'Job created failed.']); - } - } - - return false; - } - - /** - * Display the specified resource. - */ - public function show(Request $request) - { - $jobs = Job::where('sub_directorat_id', $request->sub_directorat_id)->get(); - - $data = []; - foreach ($jobs as $row) { - $result = [ - $row->id => $row->name, - ]; - - $data[] = $result; - } - - echo json_encode($data); - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id){ - $job = Job::find($id); - echo json_encode($job); - } - - /** - * Update the specified resource in storage. - */ - public function update(UpdateJobRequest $request, Job $job) - { - /*if (is_null($this->user) || !$this->user->can('masters.update')) { - abort(403, 'Sorry !! You are Unauthorized to update any master data !'); - }*/ - - // Validate the request... - $validated = $request->validated(); - - // Update the Job... - if($validated){ - try{ - $job->update($validated); - //return redirect()->route('job.index')->with('success', 'Job updated successfully.'); - echo json_encode(['status' => 'success', 'message' => 'Job updated successfully.']); - }catch(\Exception $e){ - //return redirect()->route('job.index')->with('error', 'Job updated failed.'); - echo json_encode(['status' => 'error', 'message' => 'Job updated failed.']); - } - } - - return false; - } - - /** - * Remove the specified resource from storage. - */ - public function destroy(Job $job){ - $job->delete(); - echo json_encode(['status' => 'success', 'message' => 'Job deleted successfully.']); - //return redirect()->route('job.index')->with('success', 'Job deleted successfully.'); - } -} diff --git a/app/Http/Controllers/Logs/AuditLogsController.php b/app/Http/Controllers/Logs/AuditLogsController.php deleted file mode 100644 index 2001944..0000000 --- a/app/Http/Controllers/Logs/AuditLogsController.php +++ /dev/null @@ -1,35 +0,0 @@ -render('pages.log.audit.index'); - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - $activity = Activity::find($id); - - // Delete from db - $activity->delete(); - } -} diff --git a/app/Http/Controllers/Logs/SystemLogsController.php b/app/Http/Controllers/Logs/SystemLogsController.php deleted file mode 100644 index 1b31d47..0000000 --- a/app/Http/Controllers/Logs/SystemLogsController.php +++ /dev/null @@ -1,32 +0,0 @@ -render('pages.log.system.index'); - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * - * @return \Illuminate\Http\Response - */ - public function destroy($id, LogReader $logReader) - { - return $logReader->find($id)->delete(); - } -} diff --git a/app/Http/Controllers/SpecialCodeController.php b/app/Http/Controllers/SpecialCodeController.php deleted file mode 100644 index 33c0ada..0000000 --- a/app/Http/Controllers/SpecialCodeController.php +++ /dev/null @@ -1,118 +0,0 @@ -middleware(function ($request, $next) { - //$this->user = Auth::guard('web')->user(); - return $next($request); - }); - - //CauserResolver::setCauser($this->user); - } - - /** - * Display a listing of the resource. - */ - public function index(SpecialCodeDataTable $dataTable) - { - /*if (is_null($this->user) || !$this->user->can('masters.read')) { - abort(403, 'Sorry !! You are Unauthorized to view any master data !'); - }*/ - - return $dataTable->render('pages.masters.special-code.index'); - } - - /** - * Show the form for creating a new resource. - */ - public function create(){} - - /** - * Store a newly created resource in storage. - */ - public function store(StoreSpecialCodeRequest $request) - { - /*if (is_null($this->user) || !$this->user->can('masters.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any master data !'); - }*/ - - - // Validate the request... - $validated = $request->validated(); - - // Store the Special Code... - if($validated){ - try{ - SpecialCode::create($validated); - echo json_encode(['status' => 'success', 'message' => 'Special Code created successfully.']); - }catch(\Exception $e){ - echo json_encode(['status' => 'error', 'message' => 'Special Code created failed.']); - } - } - - return false; - } - - /** - * Display the specified resource. - */ - public function show(SpecialCode $special_code) - { - - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id){ - $special_code = SpecialCode::find($id); - echo json_encode($special_code); - } - - /** - * Update the specified resource in storage. - */ - public function update(UpdateSpecialCodeRequest $request, SpecialCode $special_code) - { - /*if (is_null($this->user) || !$this->user->can('masters.update')) { - abort(403, 'Sorry !! You are Unauthorized to update any master data !'); - }*/ - - // Validate the request... - $validated = $request->validated(); - - // Update the Directorat... - if($validated){ - try{ - $special_code->update($validated); - - echo json_encode(['status' => 'success', 'message' => 'Special Code updated successfully.']); - }catch(\Exception $e){ - echo json_encode(['status' => 'error', 'message' => 'Special Code updated failed.']); - } - } - - return false; - } - - /** - * Remove the specified resource from storage. - */ - public function destroy(SpecialCode $special_code){ - $special_code->delete(); - echo json_encode(['status' => 'success', 'message' => 'Special Code deleted successfully.']); - } -} diff --git a/app/Http/Controllers/SubDirectoratController.php b/app/Http/Controllers/SubDirectoratController.php deleted file mode 100644 index 4f4063e..0000000 --- a/app/Http/Controllers/SubDirectoratController.php +++ /dev/null @@ -1,138 +0,0 @@ -middleware(function ($request, $next) { - //$this->user = Auth::guard('web')->user(); - return $next($request); - }); - } - - /** - * Display a listing of the resource. - */ - public function index(SubDirectoratDataTable $dataTable, Request $request) - { - /*if (is_null($this->user) || !$this->user->can('masters.read')) { - abort(403, 'Sorry !! You are Unauthorized to view any master data !'); - }*/ - - if(isset($request->directorat_id) && !empty($request->directorat_id)) { - $this->show($request); - return; - } - - - $directorat = Directorat::all(); - return $dataTable->render('pages.masters.sub-directorat.index', compact('directorat')); - } - - /** - * Show the form for creating a new resource. - */ - public function create(){} - - /** - * Store a newly created resource in storage. - */ - public function store(StoreSubDirectoratRequest $request) - { - /*if (is_null($this->user) || !$this->user->can('masters.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any master data !'); - }*/ - - - // Validate the request... - $validated = $request->validated(); - - // Store the SubDirectorat... - if($validated){ - try{ - SubDirectorat::create($validated); - //return redirect()->route('directorat.index')->with('success', 'SubDirectorat created successfully.'); - echo json_encode(['status' => 'success', 'message' => 'Sub Directorat created successfully.']); - }catch(\Exception $e){ - //return redirect()->route('directorat.index')->with('error', 'SubDirectorat created failed.'); - echo json_encode(['status' => 'error', 'message' => 'Sub Directorat created failed.']); - } - } - - return false; - } - - /** - * Display the specified resource. - */ - public function show(Request $request) - { - $subdirectorats = SubDirectorat::where('directorat_id', $request->directorat_id)->get(); - - $data = []; - foreach ($subdirectorats as $row) { - $result = [ - $row->id => $row->name, - ]; - - $data[] = $result; - } - - echo json_encode($data); - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id){ - $subDirectorat = SubDirectorat::find($id); - echo json_encode($subDirectorat); - } - - /** - * Update the specified resource in storage. - */ - public function update(UpdateSubDirectoratRequest $request, SubDirectorat $subDirectorat) - { - /*if (is_null($this->user) || !$this->user->can('masters.update')) { - abort(403, 'Sorry !! You are Unauthorized to update any master data !'); - }*/ - - // Validate the request... - $validated = $request->validated(); - - // Update the SubDirectorat... - if($validated){ - try{ - $subDirectorat->update($validated); - //return redirect()->route('directorat.index')->with('success', 'SubDirectorat updated successfully.'); - echo json_encode(['status' => 'success', 'message' => 'Sub Directorat updated successfully.']); - }catch(\Exception $e){ - //return redirect()->route('directorat.index')->with('error', 'SubDirectorat updated failed.'); - echo json_encode(['status' => 'error', 'message' => 'Sub Directorat updated failed.']); - } - } - - return false; - } - - /** - * Remove the specified resource from storage. - */ - public function destroy(SubDirectorat $subDirectorat){ - $subDirectorat->delete(); - echo json_encode(['status' => 'success', 'message' => 'Sub Directorat deleted successfully.']); - //return redirect()->route('sub-directorat.index')->with('success', 'Sub Directorat deleted successfully.'); - } -} diff --git a/app/Http/Controllers/SubJobController.php b/app/Http/Controllers/SubJobController.php deleted file mode 100644 index d75a2b1..0000000 --- a/app/Http/Controllers/SubJobController.php +++ /dev/null @@ -1,139 +0,0 @@ -middleware(function ($request, $next) { - //$this->user = Auth::guard('web')->user(); - return $next($request); - }); - } - - /** - * Display a listing of the resource. - */ - public function index(SubJobDataTable $dataTable, Request $request) - { - /*if (is_null($this->user) || !$this->user->can('masters.read')) { - abort(403, 'Sorry !! You are Unauthorized to view any master data !'); - }*/ - addVendor('chained-select'); - - if(isset($request->job_id) && !empty($request->job_id)) { - $this->show($request); - return; - } - - $directorat = Directorat::all(); - return $dataTable->render('pages.masters.sub-job.index', compact('directorat')); - } - - /** - * Show the form for creating a new resource. - */ - public function create(){} - - /** - * Store a newly created resource in storage. - */ - public function store(StoreSubJobRequest $request) - { - /*if (is_null($this->user) || !$this->user->can('masters.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any master data !'); - }*/ - - - // Validate the request... - $validated = $request->validated(); - - // Store the SubJob... - if($validated){ - try{ - SubJob::create($validated); - //return redirect()->route('job.index')->with('success', 'SubJob created successfully.'); - echo json_encode(['status' => 'success', 'message' => 'Sub Job created successfully.']); - }catch(\Exception $e){ - //return redirect()->route('job.index')->with('error', 'SubJob created failed.'); - echo json_encode(['status' => 'error', 'message' => 'Sub Job created failed.']); - } - } - - return false; - } - - /** - * Display the specified resource. - */ - public function show(Request $request) - { - $subJob = SubJob::where('job_id', $request->job_id)->get(); - - $data = []; - foreach ($subJob as $row) { - $result = [ - $row->id => $row->name, - ]; - - $data[] = $result; - } - - echo json_encode($data); - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id){ - $subJob = SubJob::find($id); - echo json_encode($subJob); - } - - /** - * Update the specified resource in storage. - */ - public function update(UpdateSubJobRequest $request, SubJob $subJob) - { - /*if (is_null($this->user) || !$this->user->can('masters.update')) { - abort(403, 'Sorry !! You are Unauthorized to update any master data !'); - }*/ - - // Validate the request... - $validated = $request->validated(); - - // Update the SubJob... - if($validated){ - try{ - $subJob->update($validated); - //return redirect()->route('job.index')->with('success', 'SubJob updated successfully.'); - echo json_encode(['status' => 'success', 'message' => 'Sub Job updated successfully.']); - }catch(\Exception $e){ - //return redirect()->route('job.index')->with('error', 'SubJob updated failed.'); - echo json_encode(['status' => 'error', 'message' => 'Sub Job updated failed.']); - } - } - - return false; - } - - /** - * Remove the specified resource from storage. - */ - public function destroy(SubJob $subJob){ - $subJob->delete(); - echo json_encode(['status' => 'success', 'message' => 'Sub Job deleted successfully.']); - //return redirect()->route('sub-job.index')->with('success', 'Sub Job deleted successfully.'); - } -} diff --git a/app/Http/Controllers/SubSubjobController.php b/app/Http/Controllers/SubSubjobController.php deleted file mode 100644 index 5d6c12a..0000000 --- a/app/Http/Controllers/SubSubjobController.php +++ /dev/null @@ -1,139 +0,0 @@ -middleware(function ($request, $next) { - //$this->user = Auth::guard('web')->user(); - return $next($request); - }); - } - - /** - * Display a listing of the resource. - */ - public function index(SubSubJobDataTable $dataTable, Request $request) - { - /*if (is_null($this->user) || !$this->user->can('masters.read')) { - abort(403, 'Sorry !! You are Unauthorized to view any master data !'); - }*/ - - if(isset($request->sub_job_id) && !empty($request->sub_job_id)) { - $this->show($request); - return; - } - - addVendor('chained-select'); - - $directorat = Directorat::all(); - return $dataTable->render('pages.masters.sub-sub-job.index', compact('directorat')); - } - - /** - * Show the form for creating a new resource. - */ - public function create(){} - - /** - * Store a newly created resource in storage. - */ - public function store(StoreSubSubJobRequest $request) - { - /*if (is_null($this->user) || !$this->user->can('masters.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any master data !'); - }*/ - - - // Validate the request... - $validated = $request->validated(); - - // Store the SubSubJob... - if($validated){ - try{ - SubSubJob::create($validated); - //return redirect()->route('job.index')->with('success', 'SubSubJob created successfully.'); - echo json_encode(['status' => 'success', 'message' => 'Sub Sub Job created successfully.']); - }catch(\Exception $e){ - //return redirect()->route('job.index')->with('error', 'SubSubJob created failed.'); - echo json_encode(['status' => 'error', 'message' => 'Sub Sub Job created failed.']); - } - } - - return false; - } - - /** - * Display the specified resource. - */ - public function show(Request $request) - { - $subSubJob = SubSubJob::where('sub_job_id', $request->sub_job_id)->get(); - - $data = []; - foreach ($subSubJob as $row) { - $result = [ - $row->id => $row->name, - ]; - - $data[] = $result; - } - - echo json_encode($data); - } - - /** - * Show the form for editing the specified resource. - */ - public function edit($id){ - $subJob = SubSubJob::find($id); - echo json_encode($subJob); - } - - /** - * Update the specified resource in storage. - */ - public function update(UpdateSubSubJobRequest $request, SubSubJob $subSubJob) - { - /*if (is_null($this->user) || !$this->user->can('masters.update')) { - abort(403, 'Sorry !! You are Unauthorized to update any master data !'); - }*/ - - // Validate the request... - $validated = $request->validated(); - // Update the SubSubJob... - if($validated){ - try{ - $subSubJob->update($validated); - //return redirect()->route('job.index')->with('success', 'SubSubJob updated successfully.'); - echo json_encode(['status' => 'success', 'message' => 'Sub Sub Job updated successfully.']); - }catch(\Exception $e){ - //return redirect()->route('job.index')->with('error', 'SubSubJob updated failed.'); - echo json_encode(['status' => 'error', 'message' => 'Sub Sub Job updated failed.']); - } - } - - return false; - } - - /** - * Remove the specified resource from storage. - */ - public function destroy(SubSubJob $subSubJob){ - $subSubJob->delete(); - echo json_encode(['status' => 'success', 'message' => 'Sub Sub Job deleted successfully.']); - //return redirect()->route('sub-job.index')->with('success', 'Sub Sub Job deleted successfully.'); - } -} diff --git a/app/Http/Controllers/Users/PermissionsController.php b/app/Http/Controllers/Users/PermissionsController.php deleted file mode 100644 index 7b5aea5..0000000 --- a/app/Http/Controllers/Users/PermissionsController.php +++ /dev/null @@ -1,205 +0,0 @@ -middleware(function ($request, $next) { - $this->user = Auth::guard('web')->user(); - return $next($request); - }); - } - - /** - * Display a listing of the resource. - * - * @return \Illuminate\Http\Response - */ - public function index(PermissionsDataTable $dataTable) - { - /* if (is_null($this->user) || !$this->user->can('permission.read')) { - abort(403, 'Sorry !! You are Unauthorized to view any permission !'); - }*/ - return $dataTable->render('pages.users.permissions.index'); - } - - /** - * Show the form for creating a new resource. - * - * @return \Illuminate\Http\Response - */ - public function create() - { - - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - /*if (is_null($this->user) || !$this->user->can('permission.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any permission !'); - }*/ - - // Validation Data - $validate = $request->validate([ - 'name' => 'required|max:100|unique:permission_groups' - ], [ - 'name.requried' => 'Please give a permission name' - ]); - - if($validate){ - try{ - // Process Data - $group = PermissionGroup::create(['name' => $request->name]); - - $group_name = strtolower($request->name); - $data = [ - $group_name.'.create', - $group_name.'.read', - $group_name.'.update', - $group_name.'.delete', - $group_name.'.authorize', - $group_name.'.report' - ]; - - foreach($data as $permission){ - - Permission::create([ - 'name' => $permission, - 'guard_name' => 'web', - 'permission_group_id' => $group->id - ]); - } - - echo json_encode(['status' => 'success', 'message' => 'Permission created successfully.']); - }catch(\Exception $e){ - echo json_encode(['status' => 'error', 'message' => 'Permission created failed.']); - } - } - - return false; - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function edit($id) - { - /*if (is_null($this->user) || !$this->user->can('permission.update')) { - abort(403, 'Sorry !! You are Unauthorized to edit any permission !'); - }*/ - - $permission = PermissionGroup::find($id); - echo json_encode($permission); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - /* if (is_null($this->user) || !$this->user->can('permission.update')) { - abort(403, 'Sorry !! You are Unauthorized to edit any permission !'); - }*/ - - // Validation Data - $validated = $request->validate([ - 'name' => 'required|max:100|unique:permission_groups,name,' . $id - ], [ - 'name.requried' => 'Please give a permission name' - ]); - - if ($validated) { - try { - // Process Data - $group = PermissionGroup::find($id); - $group->name = $request->name; - - if($group->save()){ - $group_name = strtolower($request->name); - $permissions = Permission::where('permission_group_id', $group->id)->get(); - - $data = [ - $group_name . '.create', - $group_name . '.read', - $group_name . '.update', - $group_name . '.delete', - $group_name . '.authorize', - $group_name . '.report' - ]; - - $i = 0; - foreach($permissions as $permission){ - $permission->name = $data[$i]; - $permission->save(); - - $i++; - } - } - - echo json_encode(['status' => 'success', 'message' => 'Permission updated successfully.']); - } catch (\Exception $e) { - echo json_encode(['status' => 'error', 'message' => 'Permission updated failed.']); - } - } - - return false; - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - /*if (is_null($this->user) || !$this->user->can('permission.delete')) { - abort(403, 'Sorry !! You are Unauthorized to delete any role !'); - }*/ - - - $permission = PermissionGroup::find($id); - if (!is_null($permission)) { - if($permission->delete()){ - Permission::where('permission_group_id',$id)->delete(); - } - } - - echo json_encode(['status' => 'success', 'message' => 'Permission deleted successfully.']); - } -} diff --git a/app/Http/Controllers/Users/RolesController.php b/app/Http/Controllers/Users/RolesController.php deleted file mode 100644 index e47a1cf..0000000 --- a/app/Http/Controllers/Users/RolesController.php +++ /dev/null @@ -1,190 +0,0 @@ -middleware(function ($request, $next) { - $this->user = Auth::guard('web')->user(); - return $next($request); - }); - } - - /** - * Display a listing of the resource. - * - * @return Response - */ - public function index(RolesDataTable $dataTable) - { - /*if (is_null($this->user) || !$this->user->can('role.read')) { - abort(403, 'Sorry !! You are Unauthorized to view any role !'); - }*/ - $permissiongroups = PermissionGroup::all(); - - return $dataTable->render('pages.users.roles.index', compact('permissiongroups')); - } - - /** - * Show the form for creating a new resource. - * - * @return Response - */ - public function create() - { - } - - /** - * Store a newly created resource in storage. - * - * @param Request $request - * - * @return Response - */ - public function store(Request $request) - { - /*if (is_null($this->user) || !$this->user->can('role.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any role !'); - }*/ - - // Validation Data - $validated = $request->validate([ - 'name' => 'required|max:100|unique:roles' - ], [ - 'name.requried' => 'Please give a role name' - ]); - - - if ($validated) { - try { - // Process Data - $role = Role::create(['name' => $request->name, 'guard_name' => 'web']); - - $permissions = $request->input('permissions'); - - if (!empty($permissions)) { - $role = Role::find($role->id); - $role->syncPermissions($permissions); - } - - echo json_encode(['status' => 'success', 'message' => 'Role Created Successfully']); - } catch (Exception $e) { - echo json_encode(['status' => 'error', 'message' => 'Role Created Failed']); - } - } - - return false; - } - - /** - * Display the specified resource. - * - * @param int $id - * - * @return Response - */ - public function show($id) - { - // - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * - * @return Response - */ - public function edit($id) - { - /* if (is_null($this->user) || !$this->user->can('role.update')) { - abort(403, 'Sorry !! You are Unauthorized to edit any role !'); - }*/ - - $role = Role::findById($id, 'web'); - $permissions = Permission::all(); - $permissiongroups = PermissionGroup::all(); - - $_array = [ - 'role' => $role, - 'permissions' => $permissions, - 'permissiongroups' => $permissiongroups - ]; - - return view('pages.users.roles.edit', $_array); - } - - /** - * Update the specified resource in storage. - * - * @param Request $request - * @param int $id - * - * @return Response - */ - public function update(Request $request, $id) - { - /* if (is_null($this->user) || !$this->user->can('role.update')) { - abort(403, 'Sorry !! You are Unauthorized to edit any role !'); - }*/ - - // Validation Data - $request->validate([ - 'name' => 'required|max:100|unique:roles,name,' . $id - ], [ - 'name.requried' => 'Please give a role name' - ]); - - $role = Role::findById($id, 'web'); - $permissions = $request->input('permissions'); - - $role->name = $request->name; - $role->save(); - - if (!empty($permissions)) { - $role->syncPermissions($permissions); - } - - session()->flash('success', 'Role has been updated !!'); - return redirect()->route('user.roles.index'); - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * - * @return Response - */ - public function destroy($id) - { - /*if (is_null($this->user) || !$this->user->can('role.delete')) { - abort(403, 'Sorry !! You are Unauthorized to delete any role !'); - }*/ - - - $role = Role::findById($id, 'web'); - if (!is_null($role)) { - $role->delete(); - } - - session()->flash('success', 'Role has been deleted !!'); - return redirect()->route('user.roles.index'); - } -} diff --git a/app/Http/Controllers/Users/UsersController.php b/app/Http/Controllers/Users/UsersController.php deleted file mode 100644 index 165659b..0000000 --- a/app/Http/Controllers/Users/UsersController.php +++ /dev/null @@ -1,238 +0,0 @@ -middleware(function ($request, $next) { - $this->user = Auth::guard('web')->user(); - return $next($request); - }); - } - - /** - * Display a listing of the resource. - * - * @return Response - */ - - public function index(UsersDataTable $dataTable) - { - /*if (is_null($this->user) || !$this->user->can('user.read')) { - abort(403, 'Sorry !! You are Unauthorized to view any users !'); - }*/ - - addVendor('chained-select'); - - $directorat = Directorat::all(); - $roles = Role::all(); - return $dataTable->render('pages.users.users.index', compact('directorat', 'roles')); - } - - /** - * Show the form for creating a new resource. - * - * @return Response - */ - public function create() - { - /* if (is_null($this->user) || !$this->user->can('user.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any users !'); - }*/ - - $roles = Role::all(); - return view('pages.users.create', compact('roles')); - } - - /** - * Store a newly created resource in storage. - * - * @param Request $request - * - * @return Response - */ - public function store(Request $request) - { - /* if (is_null($this->user) || !$this->user->can('user.create')) { - abort(403, 'Sorry !! You are Unauthorized to create any users !'); - }*/ - // Validation Data - $request->password = 'bagbag'; - - $validated = $request->validate([ - 'name' => 'required|max:50', - 'email' => 'required|max:100|email|unique:users' - ]); - - if ($validated) { - try { - // Create New User - $user = new User(); - $user->name = $request->name; - $user->email = $request->email; - $user->directorat_id = $request->directorat_id; - $user->sub_directorat_id = $request->sub_directorat_id; - $user->password = Hash::make($request->password); - - $user->save(); - - if ($request->roles) { - $user->assignRole($request->roles); - } - - echo json_encode([ - 'status' => 'success', - 'message' => 'User Created Successfully' - ]); - } catch (Exception $e) { - echo json_encode([ - 'status' => 'error', - 'message' => $e->getMessage() - ]); - } - } - - return false; - - } - - /** - * Display the specified resource. - * - * @param int $id - * - * @return Response - */ - public function show($id) - { - /*if (is_null($this->user) || !$this->user->can('user.read')) { - abort(403, 'Sorry !! You are Unauthorized to view any users !'); - }*/ - } - - /** - * Show the form for editing the specified resource. - * - * @param int $id - * - * @return Response - */ - public function edit($id) - { - /*if (is_null($this->user) || !$this->user->can('user.update')) { - abort(403, 'Sorry !! You are Unauthorized to update any users !'); - }*/ - - $user = User::find($id); - $roles = $user->roles; - - echo json_encode([ - 'status' => 'success', - 'data' => $user, - 'roles' => $roles - ]); - } - - /** - * Update the specified resource in storage. - * - * @param Request $request - * @param int $id - * - * @return Response - */ - public function update(Request $request, $id) - { - /* if (is_null($this->user) || !$this->user->can('user.update')) { - abort(403, 'Sorry !! You are Unauthorized to update any users !'); - }*/ - - // Create New User - $user = User::find($id); - - // Validation Data - if ($request->password !== '') { - $validated = $request->validate([ - 'name' => 'required|max:50', - 'email' => 'required|max:100|email|unique:users,email,' . $id, - 'password' => 'nullable|min:6|confirmed' - ]); - } else { - $validated = $request->validate([ - 'name' => 'required|max:50', - 'email' => 'required|max:100|email|unique:users,email,' . $id - ]); - } - - if ($validated) { - try { - $user->name = $request->name; - $user->email = $request->email; - $user->directorat_id = $request->directorat_id; - $user->sub_directorat_id = $request->sub_directorat_id; - - if ($request->password) { - $user->password = Hash::make($request->password); - } - - $user->save(); - - $user->roles()->detach(); - if ($request->roles) { - $user->assignRole($request->roles); - } - - echo json_encode([ - 'status' => 'success', - 'message' => 'User Updated Successfully' - ]); - - } catch (Exception $e) { - echo json_encode([ - 'status' => 'error', - 'message' => $e->getMessage() - ]); - } - } - - return false; - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * - * @return Response - */ - public function destroy(User $user) - { - /*if (is_null($this->user) || !$this->user->can('user.delete')) { - abort(403, 'Sorry !! You are Unauthorized to delete any users !'); - }*/ - - $user->delete(); - - echo json_encode([ - 'status' => 'success', - 'message' => 'User Deleted Successfully' - ]); - } -} diff --git a/app/Http/Livewire/Permission/PermissionModal.php b/app/Http/Livewire/Permission/PermissionModal.php new file mode 100644 index 0000000..324397c --- /dev/null +++ b/app/Http/Livewire/Permission/PermissionModal.php @@ -0,0 +1,80 @@ + 'required|string', + ]; + + // This is the list of listeners that this component listens to. + protected $listeners = [ + 'modal.show.permission_name' => 'mountPermission', + 'delete_permission' => 'delete' + ]; + + public function render() + { + return view('livewire.permission.permission-modal'); + } + + public function mountPermission($permission_name = '') + { + if (empty($permission_name)) { + // Create new + $this->permission = new Permission; + $this->name = ''; + return; + } + + // Get the role by name. + $permission = Permission::where('name', $permission_name)->first(); + if (is_null($permission)) { + $this->emit('error', 'The selected permission [' . $permission_name . '] is not found'); + return; + } + + $this->permission = $permission; + + // Set the name and checked permissions properties to the role's values. + $this->name = $this->permission->name; + } + + public function submit() + { + $this->validate(); + + $this->permission->name = strtolower($this->name); + if ($this->permission->isDirty()) { + $this->permission->save(); + } + + // Emit a success event with a message indicating that the permissions have been updated. + $this->emit('success', 'Permission updated'); + } + + public function delete($name) + { + $permission = Permission::where('name', $name)->first(); + + if (!is_null($permission)) { + $permission->delete(); + } + + $this->emit('success', 'Permission deleted'); + } + + public function hydrate() + { + $this->resetErrorBag(); + $this->resetValidation(); + } +} diff --git a/app/Http/Livewire/Permission/RoleList.php b/app/Http/Livewire/Permission/RoleList.php new file mode 100644 index 0000000..a4b6b97 --- /dev/null +++ b/app/Http/Livewire/Permission/RoleList.php @@ -0,0 +1,32 @@ + 'updateRoleList']; + + public function render() + { + $this->roles = Role::with('permissions')->get(); + + return view('livewire.permission.role-list'); + } + + public function updateRoleList() + { + $this->roles = Role::with('permissions')->get(); + } + + public function hydrate() + { + $this->resetErrorBag(); + $this->resetValidation(); + } +} diff --git a/app/Http/Livewire/Permission/RoleModal.php b/app/Http/Livewire/Permission/RoleModal.php new file mode 100644 index 0000000..a1460d4 --- /dev/null +++ b/app/Http/Livewire/Permission/RoleModal.php @@ -0,0 +1,110 @@ + 'required|string', + ]; + + // This is the list of listeners that this component listens to. + protected $listeners = ['modal.show.role_name' => 'mountRole']; + + // This function is called when the component receives the `modal.show.role_name` event. + public function mountRole($role_name = '') + { + if (empty($role_name)) { + // Create new + $this->role = new Role; + $this->name = ''; + return; + } + + // Get the role by name. + $role = Role::where('name', $role_name)->first(); + if (is_null($role)) { + $this->emit('error', 'The selected role [' . $role_name . '] is not found'); + return; + } + + $this->role = $role; + + // Set the name and checked permissions properties to the role's values. + $this->name = $this->role->name; + $this->checked_permissions = $this->role->permissions->pluck('name'); + } + + // This function is called when the component is mounted. + public function mount() + { + // Get all permissions. + $this->permissions = Permission::all(); + + // Set the checked permissions property to an empty array. + $this->checked_permissions = []; + } + + // This function renders the component's view. + public function render() + { + // Create an array of permissions grouped by ability. + $permissions_by_group = []; + foreach ($this->permissions ?? [] as $permission) { + $ability = Str::after($permission->name, ' '); + + $permissions_by_group[$ability][] = $permission; + } + + // Return the view with the permissions_by_group variable passed in. + return view('livewire.permission.role-modal', compact('permissions_by_group')); + } + + // This function submits the form and updates the role's permissions. + public function submit() + { + $this->validate(); + + $this->role->name = $this->name; + if ($this->role->isDirty()) { + $this->role->save(); + } + + // Sync the role's permissions with the checked permissions property. + $this->role->syncPermissions($this->checked_permissions); + + // Emit a success event with a message indicating that the permissions have been updated. + $this->emit('success', 'Permissions for ' . ucwords($this->role->name) . ' role updated'); + } + + // This function checks all of the permissions. + public function checkAll() + { + // If the check_all property is true, set the checked permissions property to all of the permissions. + if ($this->check_all) { + $this->checked_permissions = $this->permissions->pluck('name'); + } else { + // Otherwise, set the checked permissions property to an empty array. + $this->checked_permissions = []; + } + } + + public function hydrate() + { + $this->resetErrorBag(); + $this->resetValidation(); + } +} diff --git a/app/Http/Livewire/User/AddUserModal.php b/app/Http/Livewire/User/AddUserModal.php new file mode 100644 index 0000000..50e379b --- /dev/null +++ b/app/Http/Livewire/User/AddUserModal.php @@ -0,0 +1,145 @@ + 'required|string', + 'email' => 'required|email', + 'role' => 'required|string', + 'avatar' => 'nullable|sometimes|image|max:1024', + ]; + + protected $listeners = [ + 'delete_user' => 'deleteUser', + 'update_user' => 'updateUser', + ]; + + public function render() + { + $roles = Role::all(); + + $roles_description = [ + 'administrator' => 'Best for business owners and company administrators', + 'developer' => 'Best for developers or people primarily using the API', + 'analyst' => 'Best for people who need full access to analytics data, but don\'t need to update business settings', + 'support' => 'Best for employees who regularly refund payments and respond to disputes', + 'trial' => 'Best for people who need to preview content data, but don\'t need to make any updates', + ]; + + foreach ($roles as $i => $role) { + $roles[$i]->description = $roles_description[$role->name] ?? ''; + } + + return view('livewire.user.add-user-modal', compact('roles')); + } + + public function submit() + { + // Validate the form input data + $this->validate(); + + DB::transaction(function () { + // Prepare the data for creating a new user + $data = [ + 'name' => $this->name, + ]; + + if ($this->avatar) { + $data['profile_photo_path'] = $this->avatar->store('avatars', 'public'); + } else { + $data['profile_photo_path'] = null; + } + + if (!$this->edit_mode) { + $data['password'] = Hash::make($this->email); + } + + // Create a new user record in the database + $user = $this->user_id ? User::find($this->user_id) : User::updateOrCreate([ + 'email' => $this->email, + ], $data); + + if ($this->edit_mode) { + foreach ($data as $k => $v) { + $user->$k = $v; + } + } + + if ($this->edit_mode) { + // Assign selected role for user + $user->syncRoles($this->role); + + // Emit a success event with a message + $this->emit('success', __('User updated')); + } else { + // Assign selected role for user + $user->assignRole($this->role); + + // Send a password reset link to the user's email + Password::sendResetLink($user->only('email')); + + // Emit a success event with a message + $this->emit('success', __('New user created')); + } + }); + + // Reset the form fields after successful submission + $this->reset(); + } + + public function deleteUser($id) + { + // Prevent deletion of current user + if ($id == Auth::id()) { + $this->emit('error', 'User cannot be deleted'); + return; + } + + // Delete the user record with the specified ID + User::destroy($id); + + // Emit a success event with a message + $this->emit('success', 'User successfully deleted'); + } + + public function updateUser($id) + { + $this->edit_mode = true; + + $user = User::find($id); + + $this->user_id = $user->id; + $this->saved_avatar = $user->profile_photo_url; + $this->name = $user->name; + $this->email = $user->email; + $this->role = $user->roles?->first()->name ?? ''; + } + + public function hydrate() + { + $this->resetErrorBag(); + $this->resetValidation(); + } +} diff --git a/app/Http/Middleware/VerifyCsrfToken.php b/app/Http/Middleware/VerifyCsrfToken.php index 9e86521..63412b6 100644 --- a/app/Http/Middleware/VerifyCsrfToken.php +++ b/app/Http/Middleware/VerifyCsrfToken.php @@ -13,5 +13,6 @@ class VerifyCsrfToken extends Middleware */ protected $except = [ // + 'login' ]; } diff --git a/app/Http/Requests/StoreDirectoratRequest.php b/app/Http/Requests/StoreDirectoratRequest.php deleted file mode 100644 index ca42eed..0000000 --- a/app/Http/Requests/StoreDirectoratRequest.php +++ /dev/null @@ -1,47 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'kode' => 'required|string|max:2|min:2|unique:directorats,kode', - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash( $value[0]); - } - - return redirect()->route('directorat.index')->with('error', 'Directorat created failed.'); - } - }); - } -} diff --git a/app/Http/Requests/StoreDocumentRequest.php b/app/Http/Requests/StoreDocumentRequest.php deleted file mode 100644 index af99453..0000000 --- a/app/Http/Requests/StoreDocumentRequest.php +++ /dev/null @@ -1,60 +0,0 @@ - - */ - public function rules() - : array - { - return [ - 'kode' => 'required|string|unique:documents,kode', - 'directorat_id' => 'required|integer|exists:directorats,id', - 'sub_directorat_id' => 'required|integer|exists:sub_directorats,id', - 'job_id' => 'required|integer|exists:jobs,id', - 'sub_job_id' => 'required|integer|exists:sub_jobs,id', - 'sub_sub_job_id' => 'required|integer|exists:sub_sub_jobs,id', - 'special_code_id' => 'nullable|integer|exists:special_codes,id', - 'no_urut' => 'nullable|integer|min:1|max:999', - 'sequence' => 'nullable|integer|min:1|max:999', - 'status' => 'nullable|integer', - 'keterangan' => 'nullable|string|max:255', - 'jenis_dokumen' => 'nullable|string|max:255', - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator) - : void - { - $validator->after(function (Validator $validator) { - if ($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash($value[0]); - } - - return redirect()->route('document.index')->with('error', 'Document created failed.'); - } - }); - } - } diff --git a/app/Http/Requests/StoreDocumentTypeRequest.php b/app/Http/Requests/StoreDocumentTypeRequest.php deleted file mode 100644 index 962e2c2..0000000 --- a/app/Http/Requests/StoreDocumentTypeRequest.php +++ /dev/null @@ -1,47 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'kode' => 'required|string|max:2|min:2|unique:document_types,kode', - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash( $value[0]); - } - - return redirect()->route('document-type.index')->with('error', 'Document Type created failed.'); - } - }); - } -} diff --git a/app/Http/Requests/StoreJobRequest.php b/app/Http/Requests/StoreJobRequest.php deleted file mode 100644 index 836f406..0000000 --- a/app/Http/Requests/StoreJobRequest.php +++ /dev/null @@ -1,49 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'directorat_id' => 'required|exists:directorats,id', - 'sub_directorat_id' => 'required|exists:sub_directorats,id', - 'kode' => 'required|string|max:2|min:2|unique:jobs,kode', - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash( $value[0]); - } - - return redirect()->route('job.index')->with('error', 'Job created failed.'); - } - }); - } -} diff --git a/app/Http/Requests/StoreSpecialCodeRequest.php b/app/Http/Requests/StoreSpecialCodeRequest.php deleted file mode 100644 index 79794fe..0000000 --- a/app/Http/Requests/StoreSpecialCodeRequest.php +++ /dev/null @@ -1,47 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'kode' => 'required|string|max:2|min:2|unique:special_codes,kode', - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash( $value[0]); - } - - return redirect()->route('special-code.index')->with('error', 'Special Code created failed.'); - } - }); - } -} diff --git a/app/Http/Requests/StoreSubDirectoratRequest.php b/app/Http/Requests/StoreSubDirectoratRequest.php deleted file mode 100644 index f1a725c..0000000 --- a/app/Http/Requests/StoreSubDirectoratRequest.php +++ /dev/null @@ -1,48 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'directorat_id' => 'required', - 'kode' => 'required|string|max:2|min:2|unique:sub_directorats', - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash( $value[0]); - } - - return redirect()->route('sub-directorat.index')->with('error', 'Sub Directorat created failed.'); - } - }); - } -} diff --git a/app/Http/Requests/StoreSubJobRequest.php b/app/Http/Requests/StoreSubJobRequest.php deleted file mode 100644 index 296c5bf..0000000 --- a/app/Http/Requests/StoreSubJobRequest.php +++ /dev/null @@ -1,50 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'directorat_id' => 'required|exists:directorats,id', - 'sub_directorat_id' => 'required|exists:sub_directorats,id', - 'job_id' => 'required|exists:jobs,id', - 'kode' => 'required|string|max:2|min:2|unique:sub_jobs,kode', - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash( $value[0]); - } - - return redirect()->route('job.index')->with('error', 'Sub Job created failed.'); - } - }); - } -} diff --git a/app/Http/Requests/StoreSubSubJobRequest.php b/app/Http/Requests/StoreSubSubJobRequest.php deleted file mode 100644 index 5c77fb1..0000000 --- a/app/Http/Requests/StoreSubSubJobRequest.php +++ /dev/null @@ -1,52 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'directorat_id' => 'required|exists:directorats,id', - 'sub_directorat_id' => 'required|exists:sub_directorats,id', - 'job_id' => 'required|exists:jobs,id', - 'sub_job_id' => 'required|exists:sub_jobs,id', - 'kode' => 'required|string|max:2|min:2|unique:sub_sub_jobs,kode', - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if ($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash($value[0]); - } - - return redirect()->route('job.index')->with('error', 'Sub Sub Job created failed.'); - } - }); - } -} diff --git a/app/Http/Requests/UpdateDirectoratRequest.php b/app/Http/Requests/UpdateDirectoratRequest.php deleted file mode 100644 index 360bb67..0000000 --- a/app/Http/Requests/UpdateDirectoratRequest.php +++ /dev/null @@ -1,47 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'kode' => 'required|string|max:2|min:2|unique:directorats,kode,'.$this->id, - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash( $value[0]); - } - - return redirect()->route('directorat.index')->with('error', 'Directorat updated failed.'); - } - }); - } -} diff --git a/app/Http/Requests/UpdateDocumentRequest.php b/app/Http/Requests/UpdateDocumentRequest.php deleted file mode 100644 index 89c477f..0000000 --- a/app/Http/Requests/UpdateDocumentRequest.php +++ /dev/null @@ -1,60 +0,0 @@ - - */ - public function rules() - : array - { - return [ - 'kode' => 'required|string|unique:documents,kode,' . $this->id, - 'directorat_id' => 'required|integer|exists:directorats,id', - 'sub_directorat_id' => 'required|integer|exists:sub_directorats,id', - 'job_id' => 'required|integer|exists:jobs,id', - 'sub_job_id' => 'required|integer|exists:sub_jobs,id', - 'sub_sub_job_id' => 'required|integer|exists:sub_sub_jobs,id', - 'special_code_id' => 'nullable|integer|exists:special_codes,id', - 'no_urut' => 'nullable|integer|min:1|max:999', - 'sequence' => 'nullable|integer|min:1|max:999', - 'status' => 'nullable|integer', - 'keterangan' => 'nullable|string|max:255', - 'jenis_dokumen' => 'nullable|string|max:255', - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator) - : void - { - $validator->after(function (Validator $validator) { - if ($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash($value[0]); - } - - return redirect()->route('document.index')->with('error', 'Document updated failed.'); - } - }); - } - } diff --git a/app/Http/Requests/UpdateDocumentTypeRequest.php b/app/Http/Requests/UpdateDocumentTypeRequest.php deleted file mode 100644 index b52bfdb..0000000 --- a/app/Http/Requests/UpdateDocumentTypeRequest.php +++ /dev/null @@ -1,47 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'kode' => 'required|string|max:2|min:2|unique:document_types,kode,'.$this->id, - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash( $value[0]); - } - - return redirect()->route('document-type.index')->with('error', 'Document Type updated failed.'); - } - }); - } -} diff --git a/app/Http/Requests/UpdateJobRequest.php b/app/Http/Requests/UpdateJobRequest.php deleted file mode 100644 index cb31973..0000000 --- a/app/Http/Requests/UpdateJobRequest.php +++ /dev/null @@ -1,49 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'directorat_id' => 'required|exists:directorats,id', - 'sub_directorat_id' => 'required|exists:sub_directorats,id', - 'kode' => 'required|string|max:2|min:2|unique:jobs,kode,'.$this->id, - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash( $value[0]); - } - - return redirect()->route('jobs.index')->with('error', 'Job updated failed.'); - } - }); - } -} diff --git a/app/Http/Requests/UpdateSpecialCodeRequest.php b/app/Http/Requests/UpdateSpecialCodeRequest.php deleted file mode 100644 index 41c231b..0000000 --- a/app/Http/Requests/UpdateSpecialCodeRequest.php +++ /dev/null @@ -1,47 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'kode' => 'required|string|max:2|min:2|unique:special_codes,kode,'.$this->id, - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash( $value[0]); - } - - return redirect()->route('special-code.index')->with('error', 'Special Code updated failed.'); - } - }); - } -} diff --git a/app/Http/Requests/UpdateSubDirectoratRequest.php b/app/Http/Requests/UpdateSubDirectoratRequest.php deleted file mode 100644 index fdd6abc..0000000 --- a/app/Http/Requests/UpdateSubDirectoratRequest.php +++ /dev/null @@ -1,48 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'directorat_id' => 'required|exists:directorats,id', - 'kode' => 'required|string|max:2|min:2|unique:sub_directorats,kode,'.$this->id, - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash( $value[0]); - } - - return redirect()->route('sub-directorat.index')->with('error', 'Sub Directorat updated failed.'); - } - }); - } -} diff --git a/app/Http/Requests/UpdateSubJobRequest.php b/app/Http/Requests/UpdateSubJobRequest.php deleted file mode 100644 index cc05295..0000000 --- a/app/Http/Requests/UpdateSubJobRequest.php +++ /dev/null @@ -1,50 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'directorat_id' => 'required|exists:directorats,id', - 'sub_directorat_id' => 'required|exists:sub_directorats,id', - 'job_id' => 'required|exists:jobs,id', - 'kode' => 'required|string|max:2|min:2|unique:sub_jobs,kode,'.$this->id, - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash( $value[0]); - } - - return redirect()->route('jobs.index')->with('error', 'Sub Job updated failed.'); - } - }); - } -} diff --git a/app/Http/Requests/UpdateSubSubJobRequest.php b/app/Http/Requests/UpdateSubSubJobRequest.php deleted file mode 100644 index 80f3e0e..0000000 --- a/app/Http/Requests/UpdateSubSubJobRequest.php +++ /dev/null @@ -1,52 +0,0 @@ - - */ - public function rules(): array - { - return [ - 'directorat_id' => 'required|exists:directorats,id', - 'sub_directorat_id' => 'required|exists:sub_directorats,id', - 'job_id' => 'required|exists:jobs,id', - 'sub_job_id' => 'required|exists:sub_jobs,id', - 'kode' => 'required|string|max:2|min:2|unique:sub_sub_jobs,kode,' . $this->id, - 'name' => 'required|string|max:50' - ]; - } - - /** - * Configure the validator instance. - */ - public function withValidator(Validator $validator): void - { - $validator->after(function (Validator $validator) { - if ($validator->errors()->any()) { - $error = json_decode($validator->errors()->toJson(), true); - foreach ($error as $key => $value) { - flash($value[0]); - } - - return redirect()->route('jobs.index')->with('error', 'Sub Sub Job updated failed.'); - } - }); - } -} diff --git a/app/Models/Address.php b/app/Models/Address.php new file mode 100644 index 0000000..14f5391 --- /dev/null +++ b/app/Models/Address.php @@ -0,0 +1,11 @@ +logAll() - ->useLogName('master data'); - } - - public function subDirectorat() - { - return $this->hasMany(SubDirectorat::class); - } -} diff --git a/app/Models/Document.php b/app/Models/Document.php deleted file mode 100644 index a1fc9dc..0000000 --- a/app/Models/Document.php +++ /dev/null @@ -1,69 +0,0 @@ -logAll() - ->useLogName('master data'); - } - - public function directorat() - { - return $this->belongsTo(Directorat::class); - } - - public function sub_directorat() - { - return $this->belongsTo(SubDirectorat::class); - } - - public function job() - { - return $this->belongsTo(Job::class); - } - - public function sub_job() - { - return $this->belongsTo(SubJob::class); - } - - public function sub_sub_job() - { - return $this->belongsTo(SubSubJob::class); - } - - public function special_code() - { - return $this->belongsTo(SpecialCode::class); - } - - public function document_details() - { - return $this->hasMany(DocumentDetail::class); - } -} diff --git a/app/Models/DocumentDetail.php b/app/Models/DocumentDetail.php deleted file mode 100644 index e059e25..0000000 --- a/app/Models/DocumentDetail.php +++ /dev/null @@ -1,44 +0,0 @@ -logAll() - ->useLogName('master data'); - } -} diff --git a/app/Models/DocumentType.php b/app/Models/DocumentType.php deleted file mode 100644 index bacfacc..0000000 --- a/app/Models/DocumentType.php +++ /dev/null @@ -1,26 +0,0 @@ -logAll() - ->useLogName('master data'); - } -} diff --git a/app/Models/Job.php b/app/Models/Job.php deleted file mode 100644 index 748ebe3..0000000 --- a/app/Models/Job.php +++ /dev/null @@ -1,41 +0,0 @@ -logAll() - ->useLogName('system'); - } - public function directorat() - { - return $this->belongsTo(Directorat::class); - } - - public function subDirectorat() - { - return $this->belongsTo(SubDirectorat::class); - } - - public function subJob() - { - return $this->hasMany(SubJob::class); - } -} diff --git a/app/Models/Permission.php b/app/Models/Permission.php deleted file mode 100644 index 02aed77..0000000 --- a/app/Models/Permission.php +++ /dev/null @@ -1,23 +0,0 @@ -logAll() - ->useLogName('master data'); - } - - public function group() - { - return $this->hasOne(PermissionGroup::class); - } -} diff --git a/app/Models/PermissionGroup.php b/app/Models/PermissionGroup.php deleted file mode 100644 index d710e08..0000000 --- a/app/Models/PermissionGroup.php +++ /dev/null @@ -1,55 +0,0 @@ -logAll() - ->useLogName('master data'); - } - - public function permission(){ - return $this->hasMany(Permission::class); - } - - public function roles($group){ - $permission = Permission::where('permission_group_id', $group->id)->first(); - - $data = []; - - $roles = Role::all(); - - foreach($roles as $role){ - if($role->hasPermissionTo($permission->name)){ - array_push($data,$role); - } - } - - return $data; - } - - public static function getpermissionsByGroupId($id) - { - $permissions = DB::table('permissions') - ->select('name', 'id') - ->where('permission_group_id', $id) - ->get(); - return $permissions; - } - -} diff --git a/app/Models/SpecialCode.php b/app/Models/SpecialCode.php deleted file mode 100644 index 26f9598..0000000 --- a/app/Models/SpecialCode.php +++ /dev/null @@ -1,26 +0,0 @@ -logAll() - ->useLogName('master data'); - } -} diff --git a/app/Models/SubDirectorat.php b/app/Models/SubDirectorat.php deleted file mode 100644 index fc17ba7..0000000 --- a/app/Models/SubDirectorat.php +++ /dev/null @@ -1,41 +0,0 @@ -logAll() - ->useLogName('system'); - } - - public function directorat() - { - return $this->belongsTo(Directorat::class); - } - - public function subJobs() - { - return $this->hasMany(SubJob::class); - } - - public function jobs() - { - return $this->hasManyThrough(Job::class, SubJob::class); - } -} diff --git a/app/Models/SubJob.php b/app/Models/SubJob.php deleted file mode 100644 index 89eb581..0000000 --- a/app/Models/SubJob.php +++ /dev/null @@ -1,48 +0,0 @@ -logAll() - ->useLogName('system'); - } - - public function directorat() - { - return $this->belongsTo(Directorat::class); - } - - public function subDirectorat() - { - return $this->belongsTo(SubDirectorat::class); - } - - public function job() - { - return $this->belongsTo(Job::class); - } - - public function subSubJob() - { - return $this->hasMany(SubSubJob::class); - } -} diff --git a/app/Models/SubSubJob.php b/app/Models/SubSubJob.php deleted file mode 100644 index 81285eb..0000000 --- a/app/Models/SubSubJob.php +++ /dev/null @@ -1,49 +0,0 @@ -logAll() - ->useLogName('system'); - } - - public function directorat() - { - return $this->belongsTo(Directorat::class); - } - - public function subDirectorat() - { - return $this->belongsTo(SubDirectorat::class); - } - - public function job() - { - return $this->belongsTo(Job::class); - } - - public function subJob() - { - return $this->belongsTo(SubJob::class); - } -} diff --git a/app/Models/User.php b/app/Models/User.php index 823f794..5dca447 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -2,17 +2,16 @@ namespace App\Models; -// use Illuminate\Contracts\Auth\MustVerifyEmail; +use Illuminate\Contracts\Auth\MustVerifyEmail; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Notifications\Notifiable; use Laravel\Sanctum\HasApiTokens; use Spatie\Permission\Traits\HasRoles; -use Wildside\Userstamps\Userstamps; -class User extends Authenticatable +class User extends Authenticatable implements MustVerifyEmail { - use HasApiTokens, HasFactory, Notifiable, Userstamps; + use HasApiTokens, HasFactory, Notifiable; use HasRoles; /** @@ -24,8 +23,9 @@ class User extends Authenticatable 'name', 'email', 'password', - 'directorat_id', - 'sub_directorat_id', + 'last_login_at', + 'last_login_ip', + 'profile_photo_path', ]; /** @@ -45,5 +45,25 @@ class User extends Authenticatable */ protected $casts = [ 'email_verified_at' => 'datetime', + 'last_login_at' => 'datetime', ]; + + public function getProfilePhotoUrlAttribute() + { + if ($this->profile_photo_path) { + return asset('storage/' . $this->profile_photo_path); + } + + return $this->profile_photo_path; + } + + public function addresses() + { + return $this->hasMany(Address::class); + } + + public function getDefaultAddressAttribute() + { + return $this->addresses?->first(); + } } diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index d6e082e..ab18e81 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -2,6 +2,7 @@ namespace App\Providers; +use App\Core\KTBootstrap; use Illuminate\Database\Schema\Builder; use Illuminate\Support\ServiceProvider; @@ -26,5 +27,7 @@ class AppServiceProvider extends ServiceProvider { // Update defaultStringLength Builder::defaultStringLength(191); + + KTBootstrap::init(); } } diff --git a/composer.json b/composer.json index 8b98480..1494cd7 100644 --- a/composer.json +++ b/composer.json @@ -2,19 +2,37 @@ "name": "laravel/laravel", "type": "project", "description": "The Laravel Framework.", - "keywords": ["framework", "laravel"], + "keywords": [ + "framework", + "laravel" + ], "license": "MIT", + "version": "8.2.2", "require": { "php": "^8.0.2", "anlutro/l4-settings": "^1.3", + "deployer/deployer": "^7.0", + "diglactic/laravel-breadcrumbs": "^8.1", + "dompdf/dompdf": "^2.0", "guzzlehttp/guzzle": "^7.2", "haruncpi/laravel-id-generator": "^1.1", "jackiedo/log-reader": "2.*", + "joshbrw/laravel-module-installer": "^2.0", "laracasts/flash": "^3.2", "laravel/framework": "^10.0", - "laravel/sanctum": "^3.0", + "laravel/octane": "^1.5", + "laravel/sanctum": "^3.2", + "laravel/socialite": "^5.6", "laravel/tinker": "^2.7", "laravelcollective/html": "^6.4", + "laravolt/avatar": "^5.0", + "livewire/livewire": "^3.0", + "mhmiton/laravel-modules-livewire": "^2.1", + "nwidart/laravel-modules": "^10.0", + "pharaonic/livewire-select2": "^1.2", + "putrakuningan/logs-module": "dev-master", + "putrakuningan/usermanager-module": "dev-sit", + "simplesoftwareio/simple-qrcode": "^4.2", "spatie/laravel-activitylog": "^4.7", "spatie/laravel-permission": "^5.10", "wildside/userstamps": "^2.3", @@ -30,6 +48,7 @@ "nunomaduro/collision": "^7.0", "phpunit/phpunit": "^10.0", "spatie/laravel-ignition": "^2.0" + }, "autoload": { "psr-4": { @@ -40,13 +59,15 @@ }, "autoload-dev": { "psr-4": { - "Tests\\": "tests/" + "Tests\\": "tests/", + "Modules\\": "Modules/" } }, "scripts": { "post-autoload-dump": [ "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", - "@php artisan package:discover --ansi" + "@php artisan package:discover --ansi", + "@php artisan vendor:publish --force --tag=livewire:assets --ansi" ], "post-update-cmd": [ "@php artisan vendor:publish --tag=laravel-assets --ansi --force" @@ -68,9 +89,27 @@ "preferred-install": "dist", "sort-packages": true, "allow-plugins": { - "pestphp/pest-plugin": true + "pestphp/pest-plugin": true, + "joshbrw/laravel-module-installer": true } }, "minimum-stability": "dev", - "prefer-stable": true + "prefer-stable": true, + "repositories": [ + { + "name": "putrakuningan/logs-module", + "type": "vcs", + "url": "https://git.putrakuningan.com/putrakuningan/Logs" + }, + { + "name": "putrakuningan/usermanager-module", + "type": "vcs", + "url": "https://git.putrakuningan.com/putrakuningan/Usermanager" + }, + { + "name": "putrakuningan/writeoff-module", + "type": "vcs", + "url": "https://git.putrakuningan.com/putrakuningan/Writeoff" + } + ] } diff --git a/composer.lock b/composer.lock deleted file mode 100644 index 6fa51d8..0000000 --- a/composer.lock +++ /dev/null @@ -1,9653 +0,0 @@ -{ - "_readme": [ - "This file locks the dependencies of your project to a known state", - "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", - "This file is @generated automatically" - ], - "content-hash": "0e87e4f9bda92e486cd97bf407e9f234", - "packages": [ - { - "name": "anlutro/l4-settings", - "version": "v1.3.1", - "source": { - "type": "git", - "url": "https://github.com/anlutro/laravel-settings.git", - "reference": "8f3c602b6eb440fb4211d2aa028f879a779f037f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/anlutro/laravel-settings/zipball/8f3c602b6eb440fb4211d2aa028f879a779f037f", - "reference": "8f3c602b6eb440fb4211d2aa028f879a779f037f", - "shasum": "" - }, - "require": { - "illuminate/cache": "^4.2|^5|^6|^7|^8|^9|^10", - "illuminate/support": "^4.2|^5|^6|^7|^8|^9|^10" - }, - "require-dev": { - "laravel/framework": ">=5.7", - "mockery/mockery": "^1.2", - "phpunit/phpunit": "^8.0" - }, - "suggest": { - "illuminate/database": "Save settings to a database table.", - "illuminate/filesystem": "Save settings to a JSON file." - }, - "type": "library", - "extra": { - "laravel": { - "aliases": { - "Setting": "anlutro\\LaravelSettings\\Facade" - }, - "providers": [ - "anlutro\\LaravelSettings\\ServiceProvider" - ] - } - }, - "autoload": { - "files": [ - "src/helpers.php" - ], - "psr-4": { - "anlutro\\LaravelSettings\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Andreas Lutro", - "email": "anlutro@gmail.com" - } - ], - "description": "Persistent settings in Laravel.", - "support": { - "issues": "https://github.com/anlutro/laravel-settings/issues", - "source": "https://github.com/anlutro/laravel-settings/tree/v1.3.1" - }, - "time": "2023-03-27T09:47:32+00:00" - }, - { - "name": "brick/math", - "version": "0.11.0", - "source": { - "type": "git", - "url": "https://github.com/brick/math.git", - "reference": "0ad82ce168c82ba30d1c01ec86116ab52f589478" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/brick/math/zipball/0ad82ce168c82ba30d1c01ec86116ab52f589478", - "reference": "0ad82ce168c82ba30d1c01ec86116ab52f589478", - "shasum": "" - }, - "require": { - "php": "^8.0" - }, - "require-dev": { - "php-coveralls/php-coveralls": "^2.2", - "phpunit/phpunit": "^9.0", - "vimeo/psalm": "5.0.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Brick\\Math\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Arbitrary-precision arithmetic library", - "keywords": [ - "Arbitrary-precision", - "BigInteger", - "BigRational", - "arithmetic", - "bigdecimal", - "bignum", - "brick", - "math" - ], - "support": { - "issues": "https://github.com/brick/math/issues", - "source": "https://github.com/brick/math/tree/0.11.0" - }, - "funding": [ - { - "url": "https://github.com/BenMorel", - "type": "github" - } - ], - "time": "2023-01-15T23:15:59+00:00" - }, - { - "name": "dflydev/dot-access-data", - "version": "v3.0.2", - "source": { - "type": "git", - "url": "https://github.com/dflydev/dflydev-dot-access-data.git", - "reference": "f41715465d65213d644d3141a6a93081be5d3549" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/f41715465d65213d644d3141a6a93081be5d3549", - "reference": "f41715465d65213d644d3141a6a93081be5d3549", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "phpstan/phpstan": "^0.12.42", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", - "scrutinizer/ocular": "1.6.0", - "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^4.0.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Dflydev\\DotAccessData\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Dragonfly Development Inc.", - "email": "info@dflydev.com", - "homepage": "http://dflydev.com" - }, - { - "name": "Beau Simensen", - "email": "beau@dflydev.com", - "homepage": "http://beausimensen.com" - }, - { - "name": "Carlos Frutos", - "email": "carlos@kiwing.it", - "homepage": "https://github.com/cfrutos" - }, - { - "name": "Colin O'Dell", - "email": "colinodell@gmail.com", - "homepage": "https://www.colinodell.com" - } - ], - "description": "Given a deep data structure, access data by dot notation.", - "homepage": "https://github.com/dflydev/dflydev-dot-access-data", - "keywords": [ - "access", - "data", - "dot", - "notation" - ], - "support": { - "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", - "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.2" - }, - "time": "2022-10-27T11:44:00+00:00" - }, - { - "name": "doctrine/inflector", - "version": "2.0.6", - "source": { - "type": "git", - "url": "https://github.com/doctrine/inflector.git", - "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/inflector/zipball/d9d313a36c872fd6ee06d9a6cbcf713eaa40f024", - "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^10", - "phpstan/phpstan": "^1.8", - "phpstan/phpstan-phpunit": "^1.1", - "phpstan/phpstan-strict-rules": "^1.3", - "phpunit/phpunit": "^8.5 || ^9.5", - "vimeo/psalm": "^4.25" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Inflector\\": "lib/Doctrine/Inflector" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lowercase and singular/plural forms of words.", - "homepage": "https://www.doctrine-project.org/projects/inflector.html", - "keywords": [ - "inflection", - "inflector", - "lowercase", - "manipulation", - "php", - "plural", - "singular", - "strings", - "uppercase", - "words" - ], - "support": { - "issues": "https://github.com/doctrine/inflector/issues", - "source": "https://github.com/doctrine/inflector/tree/2.0.6" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finflector", - "type": "tidelift" - } - ], - "time": "2022-10-20T09:10:12+00:00" - }, - { - "name": "doctrine/lexer", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/lexer.git", - "reference": "84a527db05647743d50373e0ec53a152f2cde568" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/84a527db05647743d50373e0ec53a152f2cde568", - "reference": "84a527db05647743d50373e0ec53a152f2cde568", - "shasum": "" - }, - "require": { - "php": "^8.1" - }, - "require-dev": { - "doctrine/coding-standard": "^10", - "phpstan/phpstan": "^1.9", - "phpunit/phpunit": "^9.5", - "psalm/plugin-phpunit": "^0.18.3", - "vimeo/psalm": "^5.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Common\\Lexer\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", - "homepage": "https://www.doctrine-project.org/projects/lexer.html", - "keywords": [ - "annotations", - "docblock", - "lexer", - "parser", - "php" - ], - "support": { - "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/3.0.0" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer", - "type": "tidelift" - } - ], - "time": "2022-12-15T16:57:16+00:00" - }, - { - "name": "dragonmantank/cron-expression", - "version": "v3.3.2", - "source": { - "type": "git", - "url": "https://github.com/dragonmantank/cron-expression.git", - "reference": "782ca5968ab8b954773518e9e49a6f892a34b2a8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/782ca5968ab8b954773518e9e49a6f892a34b2a8", - "reference": "782ca5968ab8b954773518e9e49a6f892a34b2a8", - "shasum": "" - }, - "require": { - "php": "^7.2|^8.0", - "webmozart/assert": "^1.0" - }, - "replace": { - "mtdowling/cron-expression": "^1.0" - }, - "require-dev": { - "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^1.0", - "phpstan/phpstan-webmozart-assert": "^1.0", - "phpunit/phpunit": "^7.0|^8.0|^9.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Cron\\": "src/Cron/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Chris Tankersley", - "email": "chris@ctankersley.com", - "homepage": "https://github.com/dragonmantank" - } - ], - "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due", - "keywords": [ - "cron", - "schedule" - ], - "support": { - "issues": "https://github.com/dragonmantank/cron-expression/issues", - "source": "https://github.com/dragonmantank/cron-expression/tree/v3.3.2" - }, - "funding": [ - { - "url": "https://github.com/dragonmantank", - "type": "github" - } - ], - "time": "2022-09-10T18:51:20+00:00" - }, - { - "name": "egulias/email-validator", - "version": "4.0.1", - "source": { - "type": "git", - "url": "https://github.com/egulias/EmailValidator.git", - "reference": "3a85486b709bc384dae8eb78fb2eec649bdb64ff" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/3a85486b709bc384dae8eb78fb2eec649bdb64ff", - "reference": "3a85486b709bc384dae8eb78fb2eec649bdb64ff", - "shasum": "" - }, - "require": { - "doctrine/lexer": "^2.0 || ^3.0", - "php": ">=8.1", - "symfony/polyfill-intl-idn": "^1.26" - }, - "require-dev": { - "phpunit/phpunit": "^9.5.27", - "vimeo/psalm": "^4.30" - }, - "suggest": { - "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Egulias\\EmailValidator\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Eduardo Gulias Davis" - } - ], - "description": "A library for validating emails against several RFCs", - "homepage": "https://github.com/egulias/EmailValidator", - "keywords": [ - "email", - "emailvalidation", - "emailvalidator", - "validation", - "validator" - ], - "support": { - "issues": "https://github.com/egulias/EmailValidator/issues", - "source": "https://github.com/egulias/EmailValidator/tree/4.0.1" - }, - "funding": [ - { - "url": "https://github.com/egulias", - "type": "github" - } - ], - "time": "2023-01-14T14:17:03+00:00" - }, - { - "name": "ezyang/htmlpurifier", - "version": "v4.16.0", - "source": { - "type": "git", - "url": "https://github.com/ezyang/htmlpurifier.git", - "reference": "523407fb06eb9e5f3d59889b3978d5bfe94299c8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ezyang/htmlpurifier/zipball/523407fb06eb9e5f3d59889b3978d5bfe94299c8", - "reference": "523407fb06eb9e5f3d59889b3978d5bfe94299c8", - "shasum": "" - }, - "require": { - "php": "~5.6.0 || ~7.0.0 || ~7.1.0 || ~7.2.0 || ~7.3.0 || ~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0" - }, - "require-dev": { - "cerdic/css-tidy": "^1.7 || ^2.0", - "simpletest/simpletest": "dev-master" - }, - "suggest": { - "cerdic/css-tidy": "If you want to use the filter 'Filter.ExtractStyleBlocks'.", - "ext-bcmath": "Used for unit conversion and imagecrash protection", - "ext-iconv": "Converts text to and from non-UTF-8 encodings", - "ext-tidy": "Used for pretty-printing HTML" - }, - "type": "library", - "autoload": { - "files": [ - "library/HTMLPurifier.composer.php" - ], - "psr-0": { - "HTMLPurifier": "library/" - }, - "exclude-from-classmap": [ - "/library/HTMLPurifier/Language/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-2.1-or-later" - ], - "authors": [ - { - "name": "Edward Z. Yang", - "email": "admin@htmlpurifier.org", - "homepage": "http://ezyang.com" - } - ], - "description": "Standards compliant HTML filter written in PHP", - "homepage": "http://htmlpurifier.org/", - "keywords": [ - "html" - ], - "support": { - "issues": "https://github.com/ezyang/htmlpurifier/issues", - "source": "https://github.com/ezyang/htmlpurifier/tree/v4.16.0" - }, - "time": "2022-09-18T07:06:19+00:00" - }, - { - "name": "fruitcake/php-cors", - "version": "v1.2.0", - "source": { - "type": "git", - "url": "https://github.com/fruitcake/php-cors.git", - "reference": "58571acbaa5f9f462c9c77e911700ac66f446d4e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/fruitcake/php-cors/zipball/58571acbaa5f9f462c9c77e911700ac66f446d4e", - "reference": "58571acbaa5f9f462c9c77e911700ac66f446d4e", - "shasum": "" - }, - "require": { - "php": "^7.4|^8.0", - "symfony/http-foundation": "^4.4|^5.4|^6" - }, - "require-dev": { - "phpstan/phpstan": "^1.4", - "phpunit/phpunit": "^9", - "squizlabs/php_codesniffer": "^3.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.1-dev" - } - }, - "autoload": { - "psr-4": { - "Fruitcake\\Cors\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fruitcake", - "homepage": "https://fruitcake.nl" - }, - { - "name": "Barryvdh", - "email": "barryvdh@gmail.com" - } - ], - "description": "Cross-origin resource sharing library for the Symfony HttpFoundation", - "homepage": "https://github.com/fruitcake/php-cors", - "keywords": [ - "cors", - "laravel", - "symfony" - ], - "support": { - "issues": "https://github.com/fruitcake/php-cors/issues", - "source": "https://github.com/fruitcake/php-cors/tree/v1.2.0" - }, - "funding": [ - { - "url": "https://fruitcake.nl", - "type": "custom" - }, - { - "url": "https://github.com/barryvdh", - "type": "github" - } - ], - "time": "2022-02-20T15:07:15+00:00" - }, - { - "name": "graham-campbell/result-type", - "version": "v1.1.1", - "source": { - "type": "git", - "url": "https://github.com/GrahamCampbell/Result-Type.git", - "reference": "672eff8cf1d6fe1ef09ca0f89c4b287d6a3eb831" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/672eff8cf1d6fe1ef09ca0f89c4b287d6a3eb831", - "reference": "672eff8cf1d6fe1ef09ca0f89c4b287d6a3eb831", - "shasum": "" - }, - "require": { - "php": "^7.2.5 || ^8.0", - "phpoption/phpoption": "^1.9.1" - }, - "require-dev": { - "phpunit/phpunit": "^8.5.32 || ^9.6.3 || ^10.0.12" - }, - "type": "library", - "autoload": { - "psr-4": { - "GrahamCampbell\\ResultType\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - } - ], - "description": "An Implementation Of The Result Type", - "keywords": [ - "Graham Campbell", - "GrahamCampbell", - "Result Type", - "Result-Type", - "result" - ], - "support": { - "issues": "https://github.com/GrahamCampbell/Result-Type/issues", - "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.1" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type", - "type": "tidelift" - } - ], - "time": "2023-02-25T20:23:15+00:00" - }, - { - "name": "guzzlehttp/guzzle", - "version": "7.5.0", - "source": { - "type": "git", - "url": "https://github.com/guzzle/guzzle.git", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/b50a2a1251152e43f6a37f0fa053e730a67d25ba", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba", - "shasum": "" - }, - "require": { - "ext-json": "*", - "guzzlehttp/promises": "^1.5", - "guzzlehttp/psr7": "^1.9 || ^2.4", - "php": "^7.2.5 || ^8.0", - "psr/http-client": "^1.0", - "symfony/deprecation-contracts": "^2.2 || ^3.0" - }, - "provide": { - "psr/http-client-implementation": "1.0" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.8.1", - "ext-curl": "*", - "php-http/client-integration-tests": "^3.0", - "phpunit/phpunit": "^8.5.29 || ^9.5.23", - "psr/log": "^1.1 || ^2.0 || ^3.0" - }, - "suggest": { - "ext-curl": "Required for CURL handler support", - "ext-intl": "Required for Internationalized Domain Name (IDN) support", - "psr/log": "Required for using the Log middleware" - }, - "type": "library", - "extra": { - "bamarni-bin": { - "bin-links": true, - "forward-command": false - }, - "branch-alias": { - "dev-master": "7.5-dev" - } - }, - "autoload": { - "files": [ - "src/functions_include.php" - ], - "psr-4": { - "GuzzleHttp\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - }, - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, - { - "name": "Jeremy Lindblom", - "email": "jeremeamia@gmail.com", - "homepage": "https://github.com/jeremeamia" - }, - { - "name": "George Mponos", - "email": "gmponos@gmail.com", - "homepage": "https://github.com/gmponos" - }, - { - "name": "Tobias Nyholm", - "email": "tobias.nyholm@gmail.com", - "homepage": "https://github.com/Nyholm" - }, - { - "name": "Márk Sági-Kazár", - "email": "mark.sagikazar@gmail.com", - "homepage": "https://github.com/sagikazarmark" - }, - { - "name": "Tobias Schultze", - "email": "webmaster@tubo-world.de", - "homepage": "https://github.com/Tobion" - } - ], - "description": "Guzzle is a PHP HTTP client library", - "keywords": [ - "client", - "curl", - "framework", - "http", - "http client", - "psr-18", - "psr-7", - "rest", - "web service" - ], - "support": { - "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.5.0" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/guzzle", - "type": "tidelift" - } - ], - "time": "2022-08-28T15:39:27+00:00" - }, - { - "name": "guzzlehttp/promises", - "version": "1.5.2", - "source": { - "type": "git", - "url": "https://github.com/guzzle/promises.git", - "reference": "b94b2807d85443f9719887892882d0329d1e2598" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", - "reference": "b94b2807d85443f9719887892882d0329d1e2598", - "shasum": "" - }, - "require": { - "php": ">=5.5" - }, - "require-dev": { - "symfony/phpunit-bridge": "^4.4 || ^5.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.5-dev" - } - }, - "autoload": { - "files": [ - "src/functions_include.php" - ], - "psr-4": { - "GuzzleHttp\\Promise\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - }, - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, - { - "name": "Tobias Nyholm", - "email": "tobias.nyholm@gmail.com", - "homepage": "https://github.com/Nyholm" - }, - { - "name": "Tobias Schultze", - "email": "webmaster@tubo-world.de", - "homepage": "https://github.com/Tobion" - } - ], - "description": "Guzzle promises library", - "keywords": [ - "promise" - ], - "support": { - "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/1.5.2" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/promises", - "type": "tidelift" - } - ], - "time": "2022-08-28T14:55:35+00:00" - }, - { - "name": "guzzlehttp/psr7", - "version": "2.4.4", - "source": { - "type": "git", - "url": "https://github.com/guzzle/psr7.git", - "reference": "3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf", - "reference": "3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf", - "shasum": "" - }, - "require": { - "php": "^7.2.5 || ^8.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "ralouphie/getallheaders": "^3.0" - }, - "provide": { - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.8.1", - "http-interop/http-factory-tests": "^0.9", - "phpunit/phpunit": "^8.5.29 || ^9.5.23" - }, - "suggest": { - "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" - }, - "type": "library", - "extra": { - "bamarni-bin": { - "bin-links": true, - "forward-command": false - }, - "branch-alias": { - "dev-master": "2.4-dev" - } - }, - "autoload": { - "psr-4": { - "GuzzleHttp\\Psr7\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - }, - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, - { - "name": "George Mponos", - "email": "gmponos@gmail.com", - "homepage": "https://github.com/gmponos" - }, - { - "name": "Tobias Nyholm", - "email": "tobias.nyholm@gmail.com", - "homepage": "https://github.com/Nyholm" - }, - { - "name": "Márk Sági-Kazár", - "email": "mark.sagikazar@gmail.com", - "homepage": "https://github.com/sagikazarmark" - }, - { - "name": "Tobias Schultze", - "email": "webmaster@tubo-world.de", - "homepage": "https://github.com/Tobion" - }, - { - "name": "Márk Sági-Kazár", - "email": "mark.sagikazar@gmail.com", - "homepage": "https://sagikazarmark.hu" - } - ], - "description": "PSR-7 message implementation that also provides common utility methods", - "keywords": [ - "http", - "message", - "psr-7", - "request", - "response", - "stream", - "uri", - "url" - ], - "support": { - "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.4" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7", - "type": "tidelift" - } - ], - "time": "2023-03-09T13:19:02+00:00" - }, - { - "name": "guzzlehttp/uri-template", - "version": "v1.0.1", - "source": { - "type": "git", - "url": "https://github.com/guzzle/uri-template.git", - "reference": "b945d74a55a25a949158444f09ec0d3c120d69e2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/uri-template/zipball/b945d74a55a25a949158444f09ec0d3c120d69e2", - "reference": "b945d74a55a25a949158444f09ec0d3c120d69e2", - "shasum": "" - }, - "require": { - "php": "^7.2.5 || ^8.0", - "symfony/polyfill-php80": "^1.17" - }, - "require-dev": { - "phpunit/phpunit": "^8.5.19 || ^9.5.8", - "uri-template/tests": "1.0.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "psr-4": { - "GuzzleHttp\\UriTemplate\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - }, - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, - { - "name": "George Mponos", - "email": "gmponos@gmail.com", - "homepage": "https://github.com/gmponos" - }, - { - "name": "Tobias Nyholm", - "email": "tobias.nyholm@gmail.com", - "homepage": "https://github.com/Nyholm" - } - ], - "description": "A polyfill class for uri_template of PHP", - "keywords": [ - "guzzlehttp", - "uri-template" - ], - "support": { - "issues": "https://github.com/guzzle/uri-template/issues", - "source": "https://github.com/guzzle/uri-template/tree/v1.0.1" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/uri-template", - "type": "tidelift" - } - ], - "time": "2021-10-07T12:57:01+00:00" - }, - { - "name": "haruncpi/laravel-id-generator", - "version": "v1.1.0", - "source": { - "type": "git", - "url": "https://github.com/haruncpi/laravel-id-generator.git", - "reference": "b227dc2391ea45e9d070f19d35dc0a5f7a8f4185" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/haruncpi/laravel-id-generator/zipball/b227dc2391ea45e9d070f19d35dc0a5f7a8f4185", - "reference": "b227dc2391ea45e9d070f19d35dc0a5f7a8f4185", - "shasum": "" - }, - "require": { - "php": ">=5.6.0" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Haruncpi\\LaravelIdGenerator\\IdGeneratorServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Haruncpi\\LaravelIdGenerator\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "cc-by-4.0" - ], - "authors": [ - { - "name": "Md.Harun-Ur-Rashid", - "email": "harun.cox@gmail.com" - } - ], - "description": "Easy way to generate custom ID in laravel framework", - "support": { - "issues": "https://github.com/haruncpi/laravel-id-generator/issues", - "source": "https://github.com/haruncpi/laravel-id-generator/tree/v1.1.0" - }, - "time": "2021-10-01T06:16:03+00:00" - }, - { - "name": "jackiedo/log-reader", - "version": "2.3.0", - "source": { - "type": "git", - "url": "https://github.com/JackieDo/Laravel-Log-Reader.git", - "reference": "c5bfb0f361383089934cd4059d7a37b9c2640609" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/JackieDo/Laravel-Log-Reader/zipball/c5bfb0f361383089934cd4059d7a37b9c2640609", - "reference": "c5bfb0f361383089934cd4059d7a37b9c2640609", - "shasum": "" - }, - "require": { - "illuminate/cache": "^9.0|^8.0|^7.0|^6.0|5.*|^10.0", - "illuminate/config": "^9.0|^8.0|^7.0|^6.0|5.*|^10.0", - "illuminate/console": "^9.0|^8.0|^7.0|^6.0|5.*|^10.0", - "illuminate/http": "^9.0|^8.0|^7.0|^6.0|5.*|^10.0", - "illuminate/pagination": "^9.0|^8.0|^7.0|^6.0|5.*|^10.0", - "illuminate/support": "^9.0|^8.0|^7.0|^6.0|5.*|^10.0", - "nesbot/carbon": "^2.0|~1.20" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Jackiedo\\LogReader\\LogReaderServiceProvider" - ], - "aliases": { - "LogReader": "Jackiedo\\LogReader\\Facades\\LogReader" - } - } - }, - "autoload": { - "psr-4": { - "Jackiedo\\LogReader\\": "src/Jackiedo/LogReader" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jackie Do", - "email": "anhvudo@gmail.com" - } - ], - "description": "An easy log reader and management tool for Laravel", - "keywords": [ - "Viewer", - "laravel", - "log", - "log-manager", - "log-reader", - "log-viewer", - "logs", - "reader" - ], - "support": { - "issues": "https://github.com/JackieDo/Laravel-Log-Reader/issues", - "source": "https://github.com/JackieDo/Laravel-Log-Reader/tree/2.3.0" - }, - "time": "2023-02-18T21:01:57+00:00" - }, - { - "name": "laracasts/flash", - "version": "3.2.2", - "source": { - "type": "git", - "url": "https://github.com/laracasts/flash.git", - "reference": "6330bc3c027d3c03188b41c58133016f8226b8fb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laracasts/flash/zipball/6330bc3c027d3c03188b41c58133016f8226b8fb", - "reference": "6330bc3c027d3c03188b41c58133016f8226b8fb", - "shasum": "" - }, - "require": { - "illuminate/support": "~5.0|^6.0|^7.0|^8.0|^9.0|^10.0", - "php": ">=5.4.0" - }, - "require-dev": { - "mockery/mockery": "dev-master", - "phpunit/phpunit": "^6.1|^9.5.10" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Laracasts\\Flash\\FlashServiceProvider" - ], - "aliases": { - "Flash": "Laracasts\\Flash\\Flash" - } - } - }, - "autoload": { - "files": [ - "src/Laracasts/Flash/functions.php" - ], - "psr-0": { - "Laracasts\\Flash": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jeffrey Way", - "email": "jeffrey@laracasts.com" - } - ], - "description": "Easy flash notifications", - "support": { - "source": "https://github.com/laracasts/flash/tree/3.2.2" - }, - "time": "2023-01-30T20:31:40+00:00" - }, - { - "name": "laravel/framework", - "version": "v10.7.1", - "source": { - "type": "git", - "url": "https://github.com/laravel/framework.git", - "reference": "ddbbb2b50388721fe63312bb4469cae13163fd36" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/ddbbb2b50388721fe63312bb4469cae13163fd36", - "reference": "ddbbb2b50388721fe63312bb4469cae13163fd36", - "shasum": "" - }, - "require": { - "brick/math": "^0.9.3|^0.10.2|^0.11", - "composer-runtime-api": "^2.2", - "doctrine/inflector": "^2.0.5", - "dragonmantank/cron-expression": "^3.3.2", - "egulias/email-validator": "^3.2.1|^4.0", - "ext-ctype": "*", - "ext-filter": "*", - "ext-hash": "*", - "ext-mbstring": "*", - "ext-openssl": "*", - "ext-session": "*", - "ext-tokenizer": "*", - "fruitcake/php-cors": "^1.2", - "guzzlehttp/uri-template": "^1.0", - "laravel/serializable-closure": "^1.3", - "league/commonmark": "^2.2.1", - "league/flysystem": "^3.8.0", - "monolog/monolog": "^3.0", - "nesbot/carbon": "^2.62.1", - "nunomaduro/termwind": "^1.13", - "php": "^8.1", - "psr/container": "^1.1.1|^2.0.1", - "psr/log": "^1.0|^2.0|^3.0", - "psr/simple-cache": "^1.0|^2.0|^3.0", - "ramsey/uuid": "^4.7", - "symfony/console": "^6.2", - "symfony/error-handler": "^6.2", - "symfony/finder": "^6.2", - "symfony/http-foundation": "^6.2", - "symfony/http-kernel": "^6.2", - "symfony/mailer": "^6.2", - "symfony/mime": "^6.2", - "symfony/process": "^6.2", - "symfony/routing": "^6.2", - "symfony/uid": "^6.2", - "symfony/var-dumper": "^6.2", - "tijsverkoyen/css-to-inline-styles": "^2.2.5", - "vlucas/phpdotenv": "^5.4.1", - "voku/portable-ascii": "^2.0" - }, - "conflict": { - "tightenco/collect": "<5.5.33" - }, - "provide": { - "psr/container-implementation": "1.1|2.0", - "psr/simple-cache-implementation": "1.0|2.0|3.0" - }, - "replace": { - "illuminate/auth": "self.version", - "illuminate/broadcasting": "self.version", - "illuminate/bus": "self.version", - "illuminate/cache": "self.version", - "illuminate/collections": "self.version", - "illuminate/conditionable": "self.version", - "illuminate/config": "self.version", - "illuminate/console": "self.version", - "illuminate/container": "self.version", - "illuminate/contracts": "self.version", - "illuminate/cookie": "self.version", - "illuminate/database": "self.version", - "illuminate/encryption": "self.version", - "illuminate/events": "self.version", - "illuminate/filesystem": "self.version", - "illuminate/hashing": "self.version", - "illuminate/http": "self.version", - "illuminate/log": "self.version", - "illuminate/macroable": "self.version", - "illuminate/mail": "self.version", - "illuminate/notifications": "self.version", - "illuminate/pagination": "self.version", - "illuminate/pipeline": "self.version", - "illuminate/process": "self.version", - "illuminate/queue": "self.version", - "illuminate/redis": "self.version", - "illuminate/routing": "self.version", - "illuminate/session": "self.version", - "illuminate/support": "self.version", - "illuminate/testing": "self.version", - "illuminate/translation": "self.version", - "illuminate/validation": "self.version", - "illuminate/view": "self.version" - }, - "require-dev": { - "ably/ably-php": "^1.0", - "aws/aws-sdk-php": "^3.235.5", - "doctrine/dbal": "^3.5.1", - "ext-gmp": "*", - "fakerphp/faker": "^1.21", - "guzzlehttp/guzzle": "^7.5", - "league/flysystem-aws-s3-v3": "^3.0", - "league/flysystem-ftp": "^3.0", - "league/flysystem-path-prefixing": "^3.3", - "league/flysystem-read-only": "^3.3", - "league/flysystem-sftp-v3": "^3.0", - "mockery/mockery": "^1.5.1", - "orchestra/testbench-core": "^8.4", - "pda/pheanstalk": "^4.0", - "phpstan/phpdoc-parser": "^1.15", - "phpstan/phpstan": "^1.4.7", - "phpunit/phpunit": "^10.0.7", - "predis/predis": "^2.0.2", - "symfony/cache": "^6.2", - "symfony/http-client": "^6.2.4" - }, - "suggest": { - "ably/ably-php": "Required to use the Ably broadcast driver (^1.0).", - "aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage, and SES mail driver (^3.235.5).", - "brianium/paratest": "Required to run tests in parallel (^6.0).", - "doctrine/dbal": "Required to rename columns and drop SQLite columns (^3.5.1).", - "ext-apcu": "Required to use the APC cache driver.", - "ext-fileinfo": "Required to use the Filesystem class.", - "ext-ftp": "Required to use the Flysystem FTP driver.", - "ext-gd": "Required to use Illuminate\\Http\\Testing\\FileFactory::image().", - "ext-memcached": "Required to use the memcache cache driver.", - "ext-pcntl": "Required to use all features of the queue worker and console signal trapping.", - "ext-pdo": "Required to use all database features.", - "ext-posix": "Required to use all features of the queue worker.", - "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0).", - "fakerphp/faker": "Required to use the eloquent factory builder (^1.9.1).", - "filp/whoops": "Required for friendly error pages in development (^2.14.3).", - "guzzlehttp/guzzle": "Required to use the HTTP Client and the ping methods on schedules (^7.5).", - "laravel/tinker": "Required to use the tinker console command (^2.0).", - "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.0).", - "league/flysystem-ftp": "Required to use the Flysystem FTP driver (^3.0).", - "league/flysystem-path-prefixing": "Required to use the scoped driver (^3.3).", - "league/flysystem-read-only": "Required to use read-only disks (^3.3)", - "league/flysystem-sftp-v3": "Required to use the Flysystem SFTP driver (^3.0).", - "mockery/mockery": "Required to use mocking (^1.5.1).", - "nyholm/psr7": "Required to use PSR-7 bridging features (^1.2).", - "pda/pheanstalk": "Required to use the beanstalk queue driver (^4.0).", - "phpunit/phpunit": "Required to use assertions and run tests (^9.5.8|^10.0.7).", - "predis/predis": "Required to use the predis connector (^2.0.2).", - "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", - "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^6.0|^7.0).", - "symfony/cache": "Required to PSR-6 cache bridge (^6.2).", - "symfony/filesystem": "Required to enable support for relative symbolic links (^6.2).", - "symfony/http-client": "Required to enable support for the Symfony API mail transports (^6.2).", - "symfony/mailgun-mailer": "Required to enable support for the Mailgun mail transport (^6.2).", - "symfony/postmark-mailer": "Required to enable support for the Postmark mail transport (^6.2).", - "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^2.0)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "10.x-dev" - } - }, - "autoload": { - "files": [ - "src/Illuminate/Collections/helpers.php", - "src/Illuminate/Events/functions.php", - "src/Illuminate/Foundation/helpers.php", - "src/Illuminate/Support/helpers.php" - ], - "psr-4": { - "Illuminate\\": "src/Illuminate/", - "Illuminate\\Support\\": [ - "src/Illuminate/Macroable/", - "src/Illuminate/Collections/", - "src/Illuminate/Conditionable/" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Laravel Framework.", - "homepage": "https://laravel.com", - "keywords": [ - "framework", - "laravel" - ], - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2023-04-11T14:11:49+00:00" - }, - { - "name": "laravel/sanctum", - "version": "v3.2.1", - "source": { - "type": "git", - "url": "https://github.com/laravel/sanctum.git", - "reference": "d09d69bac55708fcd4a3b305d760e673d888baf9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel/sanctum/zipball/d09d69bac55708fcd4a3b305d760e673d888baf9", - "reference": "d09d69bac55708fcd4a3b305d760e673d888baf9", - "shasum": "" - }, - "require": { - "ext-json": "*", - "illuminate/console": "^9.21|^10.0", - "illuminate/contracts": "^9.21|^10.0", - "illuminate/database": "^9.21|^10.0", - "illuminate/support": "^9.21|^10.0", - "php": "^8.0.2" - }, - "require-dev": { - "mockery/mockery": "^1.0", - "orchestra/testbench": "^7.0|^8.0", - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.x-dev" - }, - "laravel": { - "providers": [ - "Laravel\\Sanctum\\SanctumServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Laravel\\Sanctum\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "Laravel Sanctum provides a featherweight authentication system for SPAs and simple APIs.", - "keywords": [ - "auth", - "laravel", - "sanctum" - ], - "support": { - "issues": "https://github.com/laravel/sanctum/issues", - "source": "https://github.com/laravel/sanctum" - }, - "time": "2023-01-13T15:41:49+00:00" - }, - { - "name": "laravel/serializable-closure", - "version": "v1.3.0", - "source": { - "type": "git", - "url": "https://github.com/laravel/serializable-closure.git", - "reference": "f23fe9d4e95255dacee1bf3525e0810d1a1b0f37" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/f23fe9d4e95255dacee1bf3525e0810d1a1b0f37", - "reference": "f23fe9d4e95255dacee1bf3525e0810d1a1b0f37", - "shasum": "" - }, - "require": { - "php": "^7.3|^8.0" - }, - "require-dev": { - "nesbot/carbon": "^2.61", - "pestphp/pest": "^1.21.3", - "phpstan/phpstan": "^1.8.2", - "symfony/var-dumper": "^5.4.11" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Laravel\\SerializableClosure\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - }, - { - "name": "Nuno Maduro", - "email": "nuno@laravel.com" - } - ], - "description": "Laravel Serializable Closure provides an easy and secure way to serialize closures in PHP.", - "keywords": [ - "closure", - "laravel", - "serializable" - ], - "support": { - "issues": "https://github.com/laravel/serializable-closure/issues", - "source": "https://github.com/laravel/serializable-closure" - }, - "time": "2023-01-30T18:31:20+00:00" - }, - { - "name": "laravel/tinker", - "version": "v2.8.1", - "source": { - "type": "git", - "url": "https://github.com/laravel/tinker.git", - "reference": "04a2d3bd0d650c0764f70bf49d1ee39393e4eb10" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel/tinker/zipball/04a2d3bd0d650c0764f70bf49d1ee39393e4eb10", - "reference": "04a2d3bd0d650c0764f70bf49d1ee39393e4eb10", - "shasum": "" - }, - "require": { - "illuminate/console": "^6.0|^7.0|^8.0|^9.0|^10.0", - "illuminate/contracts": "^6.0|^7.0|^8.0|^9.0|^10.0", - "illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0", - "php": "^7.2.5|^8.0", - "psy/psysh": "^0.10.4|^0.11.1", - "symfony/var-dumper": "^4.3.4|^5.0|^6.0" - }, - "require-dev": { - "mockery/mockery": "~1.3.3|^1.4.2", - "phpunit/phpunit": "^8.5.8|^9.3.3" - }, - "suggest": { - "illuminate/database": "The Illuminate Database package (^6.0|^7.0|^8.0|^9.0|^10.0)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.x-dev" - }, - "laravel": { - "providers": [ - "Laravel\\Tinker\\TinkerServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Laravel\\Tinker\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "Powerful REPL for the Laravel framework.", - "keywords": [ - "REPL", - "Tinker", - "laravel", - "psysh" - ], - "support": { - "issues": "https://github.com/laravel/tinker/issues", - "source": "https://github.com/laravel/tinker/tree/v2.8.1" - }, - "time": "2023-02-15T16:40:09+00:00" - }, - { - "name": "laravelcollective/html", - "version": "v6.4.0", - "source": { - "type": "git", - "url": "https://github.com/LaravelCollective/html.git", - "reference": "ac74f580459a5120079b8def0404e5d312a09504" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/LaravelCollective/html/zipball/ac74f580459a5120079b8def0404e5d312a09504", - "reference": "ac74f580459a5120079b8def0404e5d312a09504", - "shasum": "" - }, - "require": { - "illuminate/http": "^6.0|^7.0|^8.0|^9.0|^10.0", - "illuminate/routing": "^6.0|^7.0|^8.0|^9.0|^10.0", - "illuminate/session": "^6.0|^7.0|^8.0|^9.0|^10.0", - "illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0", - "illuminate/view": "^6.0|^7.0|^8.0|^9.0|^10.0", - "php": ">=7.2.5" - }, - "require-dev": { - "illuminate/database": "^6.0|^7.0|^8.0|^9.0|^10.0", - "mockery/mockery": "~1.0", - "phpunit/phpunit": "~8.5|^9.5.10" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "6.x-dev" - }, - "laravel": { - "providers": [ - "Collective\\Html\\HtmlServiceProvider" - ], - "aliases": { - "Form": "Collective\\Html\\FormFacade", - "Html": "Collective\\Html\\HtmlFacade" - } - } - }, - "autoload": { - "files": [ - "src/helpers.php" - ], - "psr-4": { - "Collective\\Html\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adam Engebretson", - "email": "adam@laravelcollective.com" - }, - { - "name": "Taylor Otwell", - "email": "taylorotwell@gmail.com" - } - ], - "description": "HTML and Form Builders for the Laravel Framework", - "homepage": "https://laravelcollective.com", - "support": { - "issues": "https://github.com/LaravelCollective/html/issues", - "source": "https://github.com/LaravelCollective/html" - }, - "time": "2023-02-13T18:15:35+00:00" - }, - { - "name": "league/commonmark", - "version": "2.4.0", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/commonmark.git", - "reference": "d44a24690f16b8c1808bf13b1bd54ae4c63ea048" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/d44a24690f16b8c1808bf13b1bd54ae4c63ea048", - "reference": "d44a24690f16b8c1808bf13b1bd54ae4c63ea048", - "shasum": "" - }, - "require": { - "ext-mbstring": "*", - "league/config": "^1.1.1", - "php": "^7.4 || ^8.0", - "psr/event-dispatcher": "^1.0", - "symfony/deprecation-contracts": "^2.1 || ^3.0", - "symfony/polyfill-php80": "^1.16" - }, - "require-dev": { - "cebe/markdown": "^1.0", - "commonmark/cmark": "0.30.0", - "commonmark/commonmark.js": "0.30.0", - "composer/package-versions-deprecated": "^1.8", - "embed/embed": "^4.4", - "erusev/parsedown": "^1.0", - "ext-json": "*", - "github/gfm": "0.29.0", - "michelf/php-markdown": "^1.4 || ^2.0", - "nyholm/psr7": "^1.5", - "phpstan/phpstan": "^1.8.2", - "phpunit/phpunit": "^9.5.21", - "scrutinizer/ocular": "^1.8.1", - "symfony/finder": "^5.3 | ^6.0", - "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", - "unleashedtech/php-coding-standard": "^3.1.1", - "vimeo/psalm": "^4.24.0 || ^5.0.0" - }, - "suggest": { - "symfony/yaml": "v2.3+ required if using the Front Matter extension" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "2.5-dev" - } - }, - "autoload": { - "psr-4": { - "League\\CommonMark\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Colin O'Dell", - "email": "colinodell@gmail.com", - "homepage": "https://www.colinodell.com", - "role": "Lead Developer" - } - ], - "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and GitHub-Flavored Markdown (GFM)", - "homepage": "https://commonmark.thephpleague.com", - "keywords": [ - "commonmark", - "flavored", - "gfm", - "github", - "github-flavored", - "markdown", - "md", - "parser" - ], - "support": { - "docs": "https://commonmark.thephpleague.com/", - "forum": "https://github.com/thephpleague/commonmark/discussions", - "issues": "https://github.com/thephpleague/commonmark/issues", - "rss": "https://github.com/thephpleague/commonmark/releases.atom", - "source": "https://github.com/thephpleague/commonmark" - }, - "funding": [ - { - "url": "https://www.colinodell.com/sponsor", - "type": "custom" - }, - { - "url": "https://www.paypal.me/colinpodell/10.00", - "type": "custom" - }, - { - "url": "https://github.com/colinodell", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/league/commonmark", - "type": "tidelift" - } - ], - "time": "2023-03-24T15:16:10+00:00" - }, - { - "name": "league/config", - "version": "v1.2.0", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/config.git", - "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/config/zipball/754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", - "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", - "shasum": "" - }, - "require": { - "dflydev/dot-access-data": "^3.0.1", - "nette/schema": "^1.2", - "php": "^7.4 || ^8.0" - }, - "require-dev": { - "phpstan/phpstan": "^1.8.2", - "phpunit/phpunit": "^9.5.5", - "scrutinizer/ocular": "^1.8.1", - "unleashedtech/php-coding-standard": "^3.1", - "vimeo/psalm": "^4.7.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.2-dev" - } - }, - "autoload": { - "psr-4": { - "League\\Config\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Colin O'Dell", - "email": "colinodell@gmail.com", - "homepage": "https://www.colinodell.com", - "role": "Lead Developer" - } - ], - "description": "Define configuration arrays with strict schemas and access values with dot notation", - "homepage": "https://config.thephpleague.com", - "keywords": [ - "array", - "config", - "configuration", - "dot", - "dot-access", - "nested", - "schema" - ], - "support": { - "docs": "https://config.thephpleague.com/", - "issues": "https://github.com/thephpleague/config/issues", - "rss": "https://github.com/thephpleague/config/releases.atom", - "source": "https://github.com/thephpleague/config" - }, - "funding": [ - { - "url": "https://www.colinodell.com/sponsor", - "type": "custom" - }, - { - "url": "https://www.paypal.me/colinpodell/10.00", - "type": "custom" - }, - { - "url": "https://github.com/colinodell", - "type": "github" - } - ], - "time": "2022-12-11T20:36:23+00:00" - }, - { - "name": "league/flysystem", - "version": "3.14.0", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/flysystem.git", - "reference": "e2a279d7f47d9098e479e8b21f7fb8b8de230158" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/e2a279d7f47d9098e479e8b21f7fb8b8de230158", - "reference": "e2a279d7f47d9098e479e8b21f7fb8b8de230158", - "shasum": "" - }, - "require": { - "league/mime-type-detection": "^1.0.0", - "php": "^8.0.2" - }, - "conflict": { - "aws/aws-sdk-php": "3.209.31 || 3.210.0", - "guzzlehttp/guzzle": "<7.0", - "guzzlehttp/ringphp": "<1.1.1", - "phpseclib/phpseclib": "3.0.15", - "symfony/http-client": "<5.2" - }, - "require-dev": { - "async-aws/s3": "^1.5", - "async-aws/simple-s3": "^1.1", - "aws/aws-sdk-php": "^3.220.0", - "composer/semver": "^3.0", - "ext-fileinfo": "*", - "ext-ftp": "*", - "ext-zip": "*", - "friendsofphp/php-cs-fixer": "^3.5", - "google/cloud-storage": "^1.23", - "microsoft/azure-storage-blob": "^1.1", - "phpseclib/phpseclib": "^3.0.14", - "phpstan/phpstan": "^0.12.26", - "phpunit/phpunit": "^9.5.11", - "sabre/dav": "^4.3.1" - }, - "type": "library", - "autoload": { - "psr-4": { - "League\\Flysystem\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Frank de Jonge", - "email": "info@frankdejonge.nl" - } - ], - "description": "File storage abstraction for PHP", - "keywords": [ - "WebDAV", - "aws", - "cloud", - "file", - "files", - "filesystem", - "filesystems", - "ftp", - "s3", - "sftp", - "storage" - ], - "support": { - "issues": "https://github.com/thephpleague/flysystem/issues", - "source": "https://github.com/thephpleague/flysystem/tree/3.14.0" - }, - "funding": [ - { - "url": "https://ecologi.com/frankdejonge", - "type": "custom" - }, - { - "url": "https://github.com/frankdejonge", - "type": "github" - } - ], - "time": "2023-04-11T18:11:47+00:00" - }, - { - "name": "league/fractal", - "version": "0.20.1", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/fractal.git", - "reference": "8b9d39b67624db9195c06f9c1ffd0355151eaf62" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/fractal/zipball/8b9d39b67624db9195c06f9c1ffd0355151eaf62", - "reference": "8b9d39b67624db9195c06f9c1ffd0355151eaf62", - "shasum": "" - }, - "require": { - "php": ">=7.4" - }, - "require-dev": { - "doctrine/orm": "^2.5", - "illuminate/contracts": "~5.0", - "mockery/mockery": "^1.3", - "pagerfanta/pagerfanta": "~1.0.0", - "phpstan/phpstan": "^1.4", - "phpunit/phpunit": "^9.5", - "squizlabs/php_codesniffer": "~3.4", - "vimeo/psalm": "^4.22", - "zendframework/zend-paginator": "~2.3" - }, - "suggest": { - "illuminate/pagination": "The Illuminate Pagination component.", - "pagerfanta/pagerfanta": "Pagerfanta Paginator", - "zendframework/zend-paginator": "Zend Framework Paginator" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "0.20.x-dev" - } - }, - "autoload": { - "psr-4": { - "League\\Fractal\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Phil Sturgeon", - "email": "me@philsturgeon.uk", - "homepage": "http://philsturgeon.uk/", - "role": "Developer" - } - ], - "description": "Handle the output of complex data structures ready for API output.", - "homepage": "http://fractal.thephpleague.com/", - "keywords": [ - "api", - "json", - "league", - "rest" - ], - "support": { - "issues": "https://github.com/thephpleague/fractal/issues", - "source": "https://github.com/thephpleague/fractal/tree/0.20.1" - }, - "time": "2022-04-11T12:47:17+00:00" - }, - { - "name": "league/mime-type-detection", - "version": "1.11.0", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/mime-type-detection.git", - "reference": "ff6248ea87a9f116e78edd6002e39e5128a0d4dd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/mime-type-detection/zipball/ff6248ea87a9f116e78edd6002e39e5128a0d4dd", - "reference": "ff6248ea87a9f116e78edd6002e39e5128a0d4dd", - "shasum": "" - }, - "require": { - "ext-fileinfo": "*", - "php": "^7.2 || ^8.0" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^3.2", - "phpstan/phpstan": "^0.12.68", - "phpunit/phpunit": "^8.5.8 || ^9.3" - }, - "type": "library", - "autoload": { - "psr-4": { - "League\\MimeTypeDetection\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Frank de Jonge", - "email": "info@frankdejonge.nl" - } - ], - "description": "Mime-type detection for Flysystem", - "support": { - "issues": "https://github.com/thephpleague/mime-type-detection/issues", - "source": "https://github.com/thephpleague/mime-type-detection/tree/1.11.0" - }, - "funding": [ - { - "url": "https://github.com/frankdejonge", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/league/flysystem", - "type": "tidelift" - } - ], - "time": "2022-04-17T13:12:02+00:00" - }, - { - "name": "livewire/livewire", - "version": "v2.12.3", - "source": { - "type": "git", - "url": "https://github.com/livewire/livewire.git", - "reference": "019b1e69d8cd8c7e749eba7a38e4fa69ecbc8f74" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/livewire/livewire/zipball/019b1e69d8cd8c7e749eba7a38e4fa69ecbc8f74", - "reference": "019b1e69d8cd8c7e749eba7a38e4fa69ecbc8f74", - "shasum": "" - }, - "require": { - "illuminate/database": "^7.0|^8.0|^9.0|^10.0", - "illuminate/support": "^7.0|^8.0|^9.0|^10.0", - "illuminate/validation": "^7.0|^8.0|^9.0|^10.0", - "league/mime-type-detection": "^1.9", - "php": "^7.2.5|^8.0", - "symfony/http-kernel": "^5.0|^6.0" - }, - "require-dev": { - "calebporzio/sushi": "^2.1", - "laravel/framework": "^7.0|^8.0|^9.0|^10.0", - "mockery/mockery": "^1.3.1", - "orchestra/testbench": "^5.0|^6.0|^7.0|^8.0", - "orchestra/testbench-dusk": "^5.2|^6.0|^7.0|^8.0", - "phpunit/phpunit": "^8.4|^9.0", - "psy/psysh": "@stable" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Livewire\\LivewireServiceProvider" - ], - "aliases": { - "Livewire": "Livewire\\Livewire" - } - } - }, - "autoload": { - "files": [ - "src/helpers.php" - ], - "psr-4": { - "Livewire\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Caleb Porzio", - "email": "calebporzio@gmail.com" - } - ], - "description": "A front-end framework for Laravel.", - "support": { - "issues": "https://github.com/livewire/livewire/issues", - "source": "https://github.com/livewire/livewire/tree/v2.12.3" - }, - "funding": [ - { - "url": "https://github.com/livewire", - "type": "github" - } - ], - "time": "2023-03-03T20:12:38+00:00" - }, - { - "name": "maennchen/zipstream-php", - "version": "v2.4.0", - "source": { - "type": "git", - "url": "https://github.com/maennchen/ZipStream-PHP.git", - "reference": "3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/maennchen/ZipStream-PHP/zipball/3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3", - "reference": "3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3", - "shasum": "" - }, - "require": { - "ext-mbstring": "*", - "myclabs/php-enum": "^1.5", - "php": "^8.0", - "psr/http-message": "^1.0" - }, - "require-dev": { - "ext-zip": "*", - "friendsofphp/php-cs-fixer": "^3.9", - "guzzlehttp/guzzle": "^6.5.3 || ^7.2.0", - "mikey179/vfsstream": "^1.6", - "php-coveralls/php-coveralls": "^2.4", - "phpunit/phpunit": "^8.5.8 || ^9.4.2", - "vimeo/psalm": "^5.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "ZipStream\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Paul Duncan", - "email": "pabs@pablotron.org" - }, - { - "name": "Jonatan Männchen", - "email": "jonatan@maennchen.ch" - }, - { - "name": "Jesse Donat", - "email": "donatj@gmail.com" - }, - { - "name": "András Kolesár", - "email": "kolesar@kolesar.hu" - } - ], - "description": "ZipStream is a library for dynamically streaming dynamic zip files from PHP without writing to the disk at all on the server.", - "keywords": [ - "stream", - "zip" - ], - "support": { - "issues": "https://github.com/maennchen/ZipStream-PHP/issues", - "source": "https://github.com/maennchen/ZipStream-PHP/tree/v2.4.0" - }, - "funding": [ - { - "url": "https://github.com/maennchen", - "type": "github" - }, - { - "url": "https://opencollective.com/zipstream", - "type": "open_collective" - } - ], - "time": "2022-12-08T12:29:14+00:00" - }, - { - "name": "markbaker/complex", - "version": "3.0.2", - "source": { - "type": "git", - "url": "https://github.com/MarkBaker/PHPComplex.git", - "reference": "95c56caa1cf5c766ad6d65b6344b807c1e8405b9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/MarkBaker/PHPComplex/zipball/95c56caa1cf5c766ad6d65b6344b807c1e8405b9", - "reference": "95c56caa1cf5c766ad6d65b6344b807c1e8405b9", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "dev-master", - "phpcompatibility/php-compatibility": "^9.3", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", - "squizlabs/php_codesniffer": "^3.7" - }, - "type": "library", - "autoload": { - "psr-4": { - "Complex\\": "classes/src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mark Baker", - "email": "mark@lange.demon.co.uk" - } - ], - "description": "PHP Class for working with complex numbers", - "homepage": "https://github.com/MarkBaker/PHPComplex", - "keywords": [ - "complex", - "mathematics" - ], - "support": { - "issues": "https://github.com/MarkBaker/PHPComplex/issues", - "source": "https://github.com/MarkBaker/PHPComplex/tree/3.0.2" - }, - "time": "2022-12-06T16:21:08+00:00" - }, - { - "name": "markbaker/matrix", - "version": "3.0.1", - "source": { - "type": "git", - "url": "https://github.com/MarkBaker/PHPMatrix.git", - "reference": "728434227fe21be27ff6d86621a1b13107a2562c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/MarkBaker/PHPMatrix/zipball/728434227fe21be27ff6d86621a1b13107a2562c", - "reference": "728434227fe21be27ff6d86621a1b13107a2562c", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "dev-master", - "phpcompatibility/php-compatibility": "^9.3", - "phpdocumentor/phpdocumentor": "2.*", - "phploc/phploc": "^4.0", - "phpmd/phpmd": "2.*", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", - "sebastian/phpcpd": "^4.0", - "squizlabs/php_codesniffer": "^3.7" - }, - "type": "library", - "autoload": { - "psr-4": { - "Matrix\\": "classes/src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mark Baker", - "email": "mark@demon-angel.eu" - } - ], - "description": "PHP Class for working with matrices", - "homepage": "https://github.com/MarkBaker/PHPMatrix", - "keywords": [ - "mathematics", - "matrix", - "vector" - ], - "support": { - "issues": "https://github.com/MarkBaker/PHPMatrix/issues", - "source": "https://github.com/MarkBaker/PHPMatrix/tree/3.0.1" - }, - "time": "2022-12-02T22:17:43+00:00" - }, - { - "name": "monolog/monolog", - "version": "3.3.1", - "source": { - "type": "git", - "url": "https://github.com/Seldaek/monolog.git", - "reference": "9b5daeaffce5b926cac47923798bba91059e60e2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/9b5daeaffce5b926cac47923798bba91059e60e2", - "reference": "9b5daeaffce5b926cac47923798bba91059e60e2", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "psr/log": "^2.0 || ^3.0" - }, - "provide": { - "psr/log-implementation": "3.0.0" - }, - "require-dev": { - "aws/aws-sdk-php": "^3.0", - "doctrine/couchdb": "~1.0@dev", - "elasticsearch/elasticsearch": "^7 || ^8", - "ext-json": "*", - "graylog2/gelf-php": "^1.4.2 || ^2@dev", - "guzzlehttp/guzzle": "^7.4.5", - "guzzlehttp/psr7": "^2.2", - "mongodb/mongodb": "^1.8", - "php-amqplib/php-amqplib": "~2.4 || ^3", - "phpstan/phpstan": "^1.9", - "phpstan/phpstan-deprecation-rules": "^1.0", - "phpstan/phpstan-strict-rules": "^1.4", - "phpunit/phpunit": "^9.5.26", - "predis/predis": "^1.1 || ^2", - "ruflin/elastica": "^7", - "symfony/mailer": "^5.4 || ^6", - "symfony/mime": "^5.4 || ^6" - }, - "suggest": { - "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB", - "doctrine/couchdb": "Allow sending log messages to a CouchDB server", - "elasticsearch/elasticsearch": "Allow sending log messages to an Elasticsearch server via official client", - "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)", - "ext-curl": "Required to send log messages using the IFTTTHandler, the LogglyHandler, the SendGridHandler, the SlackWebhookHandler or the TelegramBotHandler", - "ext-mbstring": "Allow to work properly with unicode symbols", - "ext-mongodb": "Allow sending log messages to a MongoDB server (via driver)", - "ext-openssl": "Required to send log messages using SSL", - "ext-sockets": "Allow sending log messages to a Syslog server (via UDP driver)", - "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", - "mongodb/mongodb": "Allow sending log messages to a MongoDB server (via library)", - "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", - "rollbar/rollbar": "Allow sending log messages to Rollbar", - "ruflin/elastica": "Allow sending log messages to an Elastic Search server" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Monolog\\": "src/Monolog" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "https://seld.be" - } - ], - "description": "Sends your logs to files, sockets, inboxes, databases and various web services", - "homepage": "https://github.com/Seldaek/monolog", - "keywords": [ - "log", - "logging", - "psr-3" - ], - "support": { - "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/3.3.1" - }, - "funding": [ - { - "url": "https://github.com/Seldaek", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/monolog/monolog", - "type": "tidelift" - } - ], - "time": "2023-02-06T13:46:10+00:00" - }, - { - "name": "myclabs/php-enum", - "version": "1.8.4", - "source": { - "type": "git", - "url": "https://github.com/myclabs/php-enum.git", - "reference": "a867478eae49c9f59ece437ae7f9506bfaa27483" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/myclabs/php-enum/zipball/a867478eae49c9f59ece437ae7f9506bfaa27483", - "reference": "a867478eae49c9f59ece437ae7f9506bfaa27483", - "shasum": "" - }, - "require": { - "ext-json": "*", - "php": "^7.3 || ^8.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.5", - "squizlabs/php_codesniffer": "1.*", - "vimeo/psalm": "^4.6.2" - }, - "type": "library", - "autoload": { - "psr-4": { - "MyCLabs\\Enum\\": "src/" - }, - "classmap": [ - "stubs/Stringable.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP Enum contributors", - "homepage": "https://github.com/myclabs/php-enum/graphs/contributors" - } - ], - "description": "PHP Enum implementation", - "homepage": "http://github.com/myclabs/php-enum", - "keywords": [ - "enum" - ], - "support": { - "issues": "https://github.com/myclabs/php-enum/issues", - "source": "https://github.com/myclabs/php-enum/tree/1.8.4" - }, - "funding": [ - { - "url": "https://github.com/mnapoli", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/myclabs/php-enum", - "type": "tidelift" - } - ], - "time": "2022-08-04T09:53:51+00:00" - }, - { - "name": "nesbot/carbon", - "version": "2.66.0", - "source": { - "type": "git", - "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "496712849902241f04902033b0441b269effe001" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/496712849902241f04902033b0441b269effe001", - "reference": "496712849902241f04902033b0441b269effe001", - "shasum": "" - }, - "require": { - "ext-json": "*", - "php": "^7.1.8 || ^8.0", - "symfony/polyfill-mbstring": "^1.0", - "symfony/polyfill-php80": "^1.16", - "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" - }, - "require-dev": { - "doctrine/dbal": "^2.0 || ^3.1.4", - "doctrine/orm": "^2.7", - "friendsofphp/php-cs-fixer": "^3.0", - "kylekatarnls/multi-tester": "^2.0", - "ondrejmirtes/better-reflection": "*", - "phpmd/phpmd": "^2.9", - "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^0.12.99 || ^1.7.14", - "phpunit/php-file-iterator": "^2.0.5 || ^3.0.6", - "phpunit/phpunit": "^7.5.20 || ^8.5.26 || ^9.5.20", - "squizlabs/php_codesniffer": "^3.4" - }, - "bin": [ - "bin/carbon" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-3.x": "3.x-dev", - "dev-master": "2.x-dev" - }, - "laravel": { - "providers": [ - "Carbon\\Laravel\\ServiceProvider" - ] - }, - "phpstan": { - "includes": [ - "extension.neon" - ] - } - }, - "autoload": { - "psr-4": { - "Carbon\\": "src/Carbon/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Brian Nesbitt", - "email": "brian@nesbot.com", - "homepage": "https://markido.com" - }, - { - "name": "kylekatarnls", - "homepage": "https://github.com/kylekatarnls" - } - ], - "description": "An API extension for DateTime that supports 281 different languages.", - "homepage": "https://carbon.nesbot.com", - "keywords": [ - "date", - "datetime", - "time" - ], - "support": { - "docs": "https://carbon.nesbot.com/docs", - "issues": "https://github.com/briannesbitt/Carbon/issues", - "source": "https://github.com/briannesbitt/Carbon" - }, - "funding": [ - { - "url": "https://github.com/sponsors/kylekatarnls", - "type": "github" - }, - { - "url": "https://opencollective.com/Carbon#sponsor", - "type": "opencollective" - }, - { - "url": "https://tidelift.com/subscription/pkg/packagist-nesbot-carbon?utm_source=packagist-nesbot-carbon&utm_medium=referral&utm_campaign=readme", - "type": "tidelift" - } - ], - "time": "2023-01-29T18:53:47+00:00" - }, - { - "name": "nette/schema", - "version": "v1.2.3", - "source": { - "type": "git", - "url": "https://github.com/nette/schema.git", - "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nette/schema/zipball/abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", - "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", - "shasum": "" - }, - "require": { - "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", - "php": ">=7.1 <8.3" - }, - "require-dev": { - "nette/tester": "^2.3 || ^2.4", - "phpstan/phpstan-nette": "^1.0", - "tracy/tracy": "^2.7" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause", - "GPL-2.0-only", - "GPL-3.0-only" - ], - "authors": [ - { - "name": "David Grudl", - "homepage": "https://davidgrudl.com" - }, - { - "name": "Nette Community", - "homepage": "https://nette.org/contributors" - } - ], - "description": "📐 Nette Schema: validating data structures against a given Schema.", - "homepage": "https://nette.org", - "keywords": [ - "config", - "nette" - ], - "support": { - "issues": "https://github.com/nette/schema/issues", - "source": "https://github.com/nette/schema/tree/v1.2.3" - }, - "time": "2022-10-13T01:24:26+00:00" - }, - { - "name": "nette/utils", - "version": "v4.0.0", - "source": { - "type": "git", - "url": "https://github.com/nette/utils.git", - "reference": "cacdbf5a91a657ede665c541eda28941d4b09c1e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nette/utils/zipball/cacdbf5a91a657ede665c541eda28941d4b09c1e", - "reference": "cacdbf5a91a657ede665c541eda28941d4b09c1e", - "shasum": "" - }, - "require": { - "php": ">=8.0 <8.3" - }, - "conflict": { - "nette/finder": "<3", - "nette/schema": "<1.2.2" - }, - "require-dev": { - "jetbrains/phpstorm-attributes": "dev-master", - "nette/tester": "^2.4", - "phpstan/phpstan": "^1.0", - "tracy/tracy": "^2.9" - }, - "suggest": { - "ext-gd": "to use Image", - "ext-iconv": "to use Strings::webalize(), toAscii(), chr() and reverse()", - "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()", - "ext-json": "to use Nette\\Utils\\Json", - "ext-mbstring": "to use Strings::lower() etc...", - "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()", - "ext-xml": "to use Strings::length() etc. when mbstring is not available" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause", - "GPL-2.0-only", - "GPL-3.0-only" - ], - "authors": [ - { - "name": "David Grudl", - "homepage": "https://davidgrudl.com" - }, - { - "name": "Nette Community", - "homepage": "https://nette.org/contributors" - } - ], - "description": "🛠 Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or strong password generating etc.", - "homepage": "https://nette.org", - "keywords": [ - "array", - "core", - "datetime", - "images", - "json", - "nette", - "paginator", - "password", - "slugify", - "string", - "unicode", - "utf-8", - "utility", - "validation" - ], - "support": { - "issues": "https://github.com/nette/utils/issues", - "source": "https://github.com/nette/utils/tree/v4.0.0" - }, - "time": "2023-02-02T10:41:53+00:00" - }, - { - "name": "nikic/php-parser", - "version": "v4.15.4", - "source": { - "type": "git", - "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/6bb5176bc4af8bcb7d926f88718db9b96a2d4290", - "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290", - "shasum": "" - }, - "require": { - "ext-tokenizer": "*", - "php": ">=7.0" - }, - "require-dev": { - "ircmaxell/php-yacc": "^0.0.7", - "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" - }, - "bin": [ - "bin/php-parse" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.9-dev" - } - }, - "autoload": { - "psr-4": { - "PhpParser\\": "lib/PhpParser" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Nikita Popov" - } - ], - "description": "A PHP parser written in PHP", - "keywords": [ - "parser", - "php" - ], - "support": { - "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.4" - }, - "time": "2023-03-05T19:49:14+00:00" - }, - { - "name": "nunomaduro/termwind", - "version": "v1.15.1", - "source": { - "type": "git", - "url": "https://github.com/nunomaduro/termwind.git", - "reference": "8ab0b32c8caa4a2e09700ea32925441385e4a5dc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/8ab0b32c8caa4a2e09700ea32925441385e4a5dc", - "reference": "8ab0b32c8caa4a2e09700ea32925441385e4a5dc", - "shasum": "" - }, - "require": { - "ext-mbstring": "*", - "php": "^8.0", - "symfony/console": "^5.3.0|^6.0.0" - }, - "require-dev": { - "ergebnis/phpstan-rules": "^1.0.", - "illuminate/console": "^8.0|^9.0", - "illuminate/support": "^8.0|^9.0", - "laravel/pint": "^1.0.0", - "pestphp/pest": "^1.21.0", - "pestphp/pest-plugin-mock": "^1.0", - "phpstan/phpstan": "^1.4.6", - "phpstan/phpstan-strict-rules": "^1.1.0", - "symfony/var-dumper": "^5.2.7|^6.0.0", - "thecodingmachine/phpstan-strict-rules": "^1.0.0" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Termwind\\Laravel\\TermwindServiceProvider" - ] - } - }, - "autoload": { - "files": [ - "src/Functions.php" - ], - "psr-4": { - "Termwind\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" - } - ], - "description": "Its like Tailwind CSS, but for the console.", - "keywords": [ - "cli", - "console", - "css", - "package", - "php", - "style" - ], - "support": { - "issues": "https://github.com/nunomaduro/termwind/issues", - "source": "https://github.com/nunomaduro/termwind/tree/v1.15.1" - }, - "funding": [ - { - "url": "https://www.paypal.com/paypalme/enunomaduro", - "type": "custom" - }, - { - "url": "https://github.com/nunomaduro", - "type": "github" - }, - { - "url": "https://github.com/xiCO2k", - "type": "github" - } - ], - "time": "2023-02-08T01:06:31+00:00" - }, - { - "name": "openspout/openspout", - "version": "v4.13.1", - "source": { - "type": "git", - "url": "https://github.com/openspout/openspout.git", - "reference": "dd73318406b1fffdeaa333a32e175149d28224f7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/openspout/openspout/zipball/dd73318406b1fffdeaa333a32e175149d28224f7", - "reference": "dd73318406b1fffdeaa333a32e175149d28224f7", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-fileinfo": "*", - "ext-filter": "*", - "ext-libxml": "*", - "ext-xmlreader": "*", - "ext-zip": "*", - "php": "~8.0.0 || ~8.1.0 || ~8.2.0" - }, - "require-dev": { - "ext-zlib": "*", - "friendsofphp/php-cs-fixer": "^3.8.0", - "infection/infection": "^0.26.10", - "phpbench/phpbench": "^1.2.5", - "phpstan/phpstan": "^1.6.8", - "phpstan/phpstan-phpunit": "^1.1.1", - "phpstan/phpstan-strict-rules": "^1.2.3", - "phpunit/phpunit": "^9.5.20" - }, - "suggest": { - "ext-iconv": "To handle non UTF-8 CSV files (if \"php-intl\" is not already installed or is too limited)", - "ext-intl": "To handle non UTF-8 CSV files (if \"iconv\" is not already installed)" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.3.x-dev" - } - }, - "autoload": { - "psr-4": { - "OpenSpout\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adrien Loison", - "email": "adrien@box.com" - } - ], - "description": "PHP Library to read and write spreadsheet files (CSV, XLSX and ODS), in a fast and scalable way", - "homepage": "https://github.com/openspout/openspout", - "keywords": [ - "OOXML", - "csv", - "excel", - "memory", - "odf", - "ods", - "office", - "open", - "php", - "read", - "scale", - "spreadsheet", - "stream", - "write", - "xlsx" - ], - "support": { - "issues": "https://github.com/openspout/openspout/issues", - "source": "https://github.com/openspout/openspout/tree/v4.13.1" - }, - "funding": [ - { - "url": "https://paypal.me/filippotessarotto", - "type": "custom" - }, - { - "url": "https://github.com/Slamdunk", - "type": "github" - } - ], - "time": "2023-03-30T15:40:03+00:00" - }, - { - "name": "phpoffice/phpspreadsheet", - "version": "1.28.0", - "source": { - "type": "git", - "url": "https://github.com/PHPOffice/PhpSpreadsheet.git", - "reference": "6e81cf39bbd93ebc3a4e8150444c41e8aa9b769a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/PHPOffice/PhpSpreadsheet/zipball/6e81cf39bbd93ebc3a4e8150444c41e8aa9b769a", - "reference": "6e81cf39bbd93ebc3a4e8150444c41e8aa9b769a", - "shasum": "" - }, - "require": { - "ext-ctype": "*", - "ext-dom": "*", - "ext-fileinfo": "*", - "ext-gd": "*", - "ext-iconv": "*", - "ext-libxml": "*", - "ext-mbstring": "*", - "ext-simplexml": "*", - "ext-xml": "*", - "ext-xmlreader": "*", - "ext-xmlwriter": "*", - "ext-zip": "*", - "ext-zlib": "*", - "ezyang/htmlpurifier": "^4.15", - "maennchen/zipstream-php": "^2.1", - "markbaker/complex": "^3.0", - "markbaker/matrix": "^3.0", - "php": "^7.4 || ^8.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/simple-cache": "^1.0 || ^2.0 || ^3.0" - }, - "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "dev-main", - "dompdf/dompdf": "^1.0 || ^2.0", - "friendsofphp/php-cs-fixer": "^3.2", - "mitoteam/jpgraph": "^10.2.4", - "mpdf/mpdf": "^8.1.1", - "phpcompatibility/php-compatibility": "^9.3", - "phpstan/phpstan": "^1.1", - "phpstan/phpstan-phpunit": "^1.0", - "phpunit/phpunit": "^8.5 || ^9.0", - "squizlabs/php_codesniffer": "^3.7", - "tecnickcom/tcpdf": "^6.5" - }, - "suggest": { - "dompdf/dompdf": "Option for rendering PDF with PDF Writer", - "ext-intl": "PHP Internationalization Functions", - "mitoteam/jpgraph": "Option for rendering charts, or including charts with PDF or HTML Writers", - "mpdf/mpdf": "Option for rendering PDF with PDF Writer", - "tecnickcom/tcpdf": "Option for rendering PDF with PDF Writer" - }, - "type": "library", - "autoload": { - "psr-4": { - "PhpOffice\\PhpSpreadsheet\\": "src/PhpSpreadsheet" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Maarten Balliauw", - "homepage": "https://blog.maartenballiauw.be" - }, - { - "name": "Mark Baker", - "homepage": "https://markbakeruk.net" - }, - { - "name": "Franck Lefevre", - "homepage": "https://rootslabs.net" - }, - { - "name": "Erik Tilt" - }, - { - "name": "Adrien Crivelli" - } - ], - "description": "PHPSpreadsheet - Read, Create and Write Spreadsheet documents in PHP - Spreadsheet engine", - "homepage": "https://github.com/PHPOffice/PhpSpreadsheet", - "keywords": [ - "OpenXML", - "excel", - "gnumeric", - "ods", - "php", - "spreadsheet", - "xls", - "xlsx" - ], - "support": { - "issues": "https://github.com/PHPOffice/PhpSpreadsheet/issues", - "source": "https://github.com/PHPOffice/PhpSpreadsheet/tree/1.28.0" - }, - "time": "2023-02-25T12:24:49+00:00" - }, - { - "name": "phpoption/phpoption", - "version": "1.9.1", - "source": { - "type": "git", - "url": "https://github.com/schmittjoh/php-option.git", - "reference": "dd3a383e599f49777d8b628dadbb90cae435b87e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/dd3a383e599f49777d8b628dadbb90cae435b87e", - "reference": "dd3a383e599f49777d8b628dadbb90cae435b87e", - "shasum": "" - }, - "require": { - "php": "^7.2.5 || ^8.0" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.8.2", - "phpunit/phpunit": "^8.5.32 || ^9.6.3 || ^10.0.12" - }, - "type": "library", - "extra": { - "bamarni-bin": { - "bin-links": true, - "forward-command": true - }, - "branch-alias": { - "dev-master": "1.9-dev" - } - }, - "autoload": { - "psr-4": { - "PhpOption\\": "src/PhpOption/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "Apache-2.0" - ], - "authors": [ - { - "name": "Johannes M. Schmitt", - "email": "schmittjoh@gmail.com", - "homepage": "https://github.com/schmittjoh" - }, - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - } - ], - "description": "Option Type for PHP", - "keywords": [ - "language", - "option", - "php", - "type" - ], - "support": { - "issues": "https://github.com/schmittjoh/php-option/issues", - "source": "https://github.com/schmittjoh/php-option/tree/1.9.1" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/phpoption/phpoption", - "type": "tidelift" - } - ], - "time": "2023-02-25T19:38:58+00:00" - }, - { - "name": "psr/container", - "version": "2.0.2", - "source": { - "type": "git", - "url": "https://github.com/php-fig/container.git", - "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", - "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", - "shasum": "" - }, - "require": { - "php": ">=7.4.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Container\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common Container Interface (PHP FIG PSR-11)", - "homepage": "https://github.com/php-fig/container", - "keywords": [ - "PSR-11", - "container", - "container-interface", - "container-interop", - "psr" - ], - "support": { - "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/2.0.2" - }, - "time": "2021-11-05T16:47:00+00:00" - }, - { - "name": "psr/event-dispatcher", - "version": "1.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/event-dispatcher.git", - "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", - "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", - "shasum": "" - }, - "require": { - "php": ">=7.2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\EventDispatcher\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Standard interfaces for event handling.", - "keywords": [ - "events", - "psr", - "psr-14" - ], - "support": { - "issues": "https://github.com/php-fig/event-dispatcher/issues", - "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" - }, - "time": "2019-01-08T18:20:26+00:00" - }, - { - "name": "psr/http-client", - "version": "1.0.2", - "source": { - "type": "git", - "url": "https://github.com/php-fig/http-client.git", - "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-client/zipball/0955afe48220520692d2d09f7ab7e0f93ffd6a31", - "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31", - "shasum": "" - }, - "require": { - "php": "^7.0 || ^8.0", - "psr/http-message": "^1.0 || ^2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Http\\Client\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common interface for HTTP clients", - "homepage": "https://github.com/php-fig/http-client", - "keywords": [ - "http", - "http-client", - "psr", - "psr-18" - ], - "support": { - "source": "https://github.com/php-fig/http-client/tree/1.0.2" - }, - "time": "2023-04-10T20:12:12+00:00" - }, - { - "name": "psr/http-factory", - "version": "1.0.2", - "source": { - "type": "git", - "url": "https://github.com/php-fig/http-factory.git", - "reference": "e616d01114759c4c489f93b099585439f795fe35" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35", - "reference": "e616d01114759c4c489f93b099585439f795fe35", - "shasum": "" - }, - "require": { - "php": ">=7.0.0", - "psr/http-message": "^1.0 || ^2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Http\\Message\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common interfaces for PSR-7 HTTP message factories", - "keywords": [ - "factory", - "http", - "message", - "psr", - "psr-17", - "psr-7", - "request", - "response" - ], - "support": { - "source": "https://github.com/php-fig/http-factory/tree/1.0.2" - }, - "time": "2023-04-10T20:10:41+00:00" - }, - { - "name": "psr/http-message", - "version": "1.1", - "source": { - "type": "git", - "url": "https://github.com/php-fig/http-message.git", - "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba", - "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Http\\Message\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common interface for HTTP messages", - "homepage": "https://github.com/php-fig/http-message", - "keywords": [ - "http", - "http-message", - "psr", - "psr-7", - "request", - "response" - ], - "support": { - "source": "https://github.com/php-fig/http-message/tree/1.1" - }, - "time": "2023-04-04T09:50:52+00:00" - }, - { - "name": "psr/log", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/log.git", - "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001", - "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001", - "shasum": "" - }, - "require": { - "php": ">=8.0.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Log\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common interface for logging libraries", - "homepage": "https://github.com/php-fig/log", - "keywords": [ - "log", - "psr", - "psr-3" - ], - "support": { - "source": "https://github.com/php-fig/log/tree/3.0.0" - }, - "time": "2021-07-14T16:46:02+00:00" - }, - { - "name": "psr/simple-cache", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/simple-cache.git", - "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865", - "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865", - "shasum": "" - }, - "require": { - "php": ">=8.0.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\SimpleCache\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common interfaces for simple caching", - "keywords": [ - "cache", - "caching", - "psr", - "psr-16", - "simple-cache" - ], - "support": { - "source": "https://github.com/php-fig/simple-cache/tree/3.0.0" - }, - "time": "2021-10-29T13:26:27+00:00" - }, - { - "name": "psy/psysh", - "version": "v0.11.15", - "source": { - "type": "git", - "url": "https://github.com/bobthecow/psysh.git", - "reference": "5350ce0ec8ecf2c5b5cf554cd2496f97b444af85" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/bobthecow/psysh/zipball/5350ce0ec8ecf2c5b5cf554cd2496f97b444af85", - "reference": "5350ce0ec8ecf2c5b5cf554cd2496f97b444af85", - "shasum": "" - }, - "require": { - "ext-json": "*", - "ext-tokenizer": "*", - "nikic/php-parser": "^4.0 || ^3.1", - "php": "^8.0 || ^7.0.8", - "symfony/console": "^6.0 || ^5.0 || ^4.0 || ^3.4", - "symfony/var-dumper": "^6.0 || ^5.0 || ^4.0 || ^3.4" - }, - "conflict": { - "symfony/console": "4.4.37 || 5.3.14 || 5.3.15 || 5.4.3 || 5.4.4 || 6.0.3 || 6.0.4" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.2" - }, - "suggest": { - "ext-pcntl": "Enabling the PCNTL extension makes PsySH a lot happier :)", - "ext-pdo-sqlite": "The doc command requires SQLite to work.", - "ext-posix": "If you have PCNTL, you'll want the POSIX extension as well.", - "ext-readline": "Enables support for arrow-key history navigation, and showing and manipulating command history." - }, - "bin": [ - "bin/psysh" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "0.11.x-dev" - } - }, - "autoload": { - "files": [ - "src/functions.php" - ], - "psr-4": { - "Psy\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Justin Hileman", - "email": "justin@justinhileman.info", - "homepage": "http://justinhileman.com" - } - ], - "description": "An interactive shell for modern PHP.", - "homepage": "http://psysh.org", - "keywords": [ - "REPL", - "console", - "interactive", - "shell" - ], - "support": { - "issues": "https://github.com/bobthecow/psysh/issues", - "source": "https://github.com/bobthecow/psysh/tree/v0.11.15" - }, - "time": "2023-04-07T21:57:09+00:00" - }, - { - "name": "ralouphie/getallheaders", - "version": "3.0.3", - "source": { - "type": "git", - "url": "https://github.com/ralouphie/getallheaders.git", - "reference": "120b605dfeb996808c31b6477290a714d356e822" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", - "reference": "120b605dfeb996808c31b6477290a714d356e822", - "shasum": "" - }, - "require": { - "php": ">=5.6" - }, - "require-dev": { - "php-coveralls/php-coveralls": "^2.1", - "phpunit/phpunit": "^5 || ^6.5" - }, - "type": "library", - "autoload": { - "files": [ - "src/getallheaders.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ralph Khattar", - "email": "ralph.khattar@gmail.com" - } - ], - "description": "A polyfill for getallheaders.", - "support": { - "issues": "https://github.com/ralouphie/getallheaders/issues", - "source": "https://github.com/ralouphie/getallheaders/tree/develop" - }, - "time": "2019-03-08T08:55:37+00:00" - }, - { - "name": "ramsey/collection", - "version": "2.0.0", - "source": { - "type": "git", - "url": "https://github.com/ramsey/collection.git", - "reference": "a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ramsey/collection/zipball/a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5", - "reference": "a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5", - "shasum": "" - }, - "require": { - "php": "^8.1" - }, - "require-dev": { - "captainhook/plugin-composer": "^5.3", - "ergebnis/composer-normalize": "^2.28.3", - "fakerphp/faker": "^1.21", - "hamcrest/hamcrest-php": "^2.0", - "jangregor/phpstan-prophecy": "^1.0", - "mockery/mockery": "^1.5", - "php-parallel-lint/php-console-highlighter": "^1.0", - "php-parallel-lint/php-parallel-lint": "^1.3", - "phpcsstandards/phpcsutils": "^1.0.0-rc1", - "phpspec/prophecy-phpunit": "^2.0", - "phpstan/extension-installer": "^1.2", - "phpstan/phpstan": "^1.9", - "phpstan/phpstan-mockery": "^1.1", - "phpstan/phpstan-phpunit": "^1.3", - "phpunit/phpunit": "^9.5", - "psalm/plugin-mockery": "^1.1", - "psalm/plugin-phpunit": "^0.18.4", - "ramsey/coding-standard": "^2.0.3", - "ramsey/conventional-commits": "^1.3", - "vimeo/psalm": "^5.4" - }, - "type": "library", - "extra": { - "captainhook": { - "force-install": true - }, - "ramsey/conventional-commits": { - "configFile": "conventional-commits.json" - } - }, - "autoload": { - "psr-4": { - "Ramsey\\Collection\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ben Ramsey", - "email": "ben@benramsey.com", - "homepage": "https://benramsey.com" - } - ], - "description": "A PHP library for representing and manipulating collections.", - "keywords": [ - "array", - "collection", - "hash", - "map", - "queue", - "set" - ], - "support": { - "issues": "https://github.com/ramsey/collection/issues", - "source": "https://github.com/ramsey/collection/tree/2.0.0" - }, - "funding": [ - { - "url": "https://github.com/ramsey", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/ramsey/collection", - "type": "tidelift" - } - ], - "time": "2022-12-31T21:50:55+00:00" - }, - { - "name": "ramsey/uuid", - "version": "4.7.4", - "source": { - "type": "git", - "url": "https://github.com/ramsey/uuid.git", - "reference": "60a4c63ab724854332900504274f6150ff26d286" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ramsey/uuid/zipball/60a4c63ab724854332900504274f6150ff26d286", - "reference": "60a4c63ab724854332900504274f6150ff26d286", - "shasum": "" - }, - "require": { - "brick/math": "^0.8.8 || ^0.9 || ^0.10 || ^0.11", - "ext-json": "*", - "php": "^8.0", - "ramsey/collection": "^1.2 || ^2.0" - }, - "replace": { - "rhumsaa/uuid": "self.version" - }, - "require-dev": { - "captainhook/captainhook": "^5.10", - "captainhook/plugin-composer": "^5.3", - "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", - "doctrine/annotations": "^1.8", - "ergebnis/composer-normalize": "^2.15", - "mockery/mockery": "^1.3", - "paragonie/random-lib": "^2", - "php-mock/php-mock": "^2.2", - "php-mock/php-mock-mockery": "^1.3", - "php-parallel-lint/php-parallel-lint": "^1.1", - "phpbench/phpbench": "^1.0", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan": "^1.8", - "phpstan/phpstan-mockery": "^1.1", - "phpstan/phpstan-phpunit": "^1.1", - "phpunit/phpunit": "^8.5 || ^9", - "ramsey/composer-repl": "^1.4", - "slevomat/coding-standard": "^8.4", - "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^4.9" - }, - "suggest": { - "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.", - "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.", - "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.", - "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter", - "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." - }, - "type": "library", - "extra": { - "captainhook": { - "force-install": true - } - }, - "autoload": { - "files": [ - "src/functions.php" - ], - "psr-4": { - "Ramsey\\Uuid\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "A PHP library for generating and working with universally unique identifiers (UUIDs).", - "keywords": [ - "guid", - "identifier", - "uuid" - ], - "support": { - "issues": "https://github.com/ramsey/uuid/issues", - "source": "https://github.com/ramsey/uuid/tree/4.7.4" - }, - "funding": [ - { - "url": "https://github.com/ramsey", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/ramsey/uuid", - "type": "tidelift" - } - ], - "time": "2023-04-15T23:01:58+00:00" - }, - { - "name": "spatie/laravel-activitylog", - "version": "4.7.3", - "source": { - "type": "git", - "url": "https://github.com/spatie/laravel-activitylog.git", - "reference": "ec65a478a909b8df1b4f0c3c45de2592ca7639e5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-activitylog/zipball/ec65a478a909b8df1b4f0c3c45de2592ca7639e5", - "reference": "ec65a478a909b8df1b4f0c3c45de2592ca7639e5", - "shasum": "" - }, - "require": { - "illuminate/config": "^8.0 || ^9.0 || ^10.0", - "illuminate/database": "^8.69 || ^9.27 || ^10.0", - "illuminate/support": "^8.0 || ^9.0 || ^10.0", - "php": "^8.0", - "spatie/laravel-package-tools": "^1.6.3" - }, - "require-dev": { - "ext-json": "*", - "orchestra/testbench": "^6.23 || ^7.0 || ^8.0", - "pestphp/pest": "^1.20" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Spatie\\Activitylog\\ActivitylogServiceProvider" - ] - } - }, - "autoload": { - "files": [ - "src/helpers.php" - ], - "psr-4": { - "Spatie\\Activitylog\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Freek Van der Herten", - "email": "freek@spatie.be", - "homepage": "https://spatie.be", - "role": "Developer" - }, - { - "name": "Sebastian De Deyne", - "email": "sebastian@spatie.be", - "homepage": "https://spatie.be", - "role": "Developer" - }, - { - "name": "Tom Witkowski", - "email": "dev.gummibeer@gmail.com", - "homepage": "https://gummibeer.de", - "role": "Developer" - } - ], - "description": "A very simple activity logger to monitor the users of your website or application", - "homepage": "https://github.com/spatie/activitylog", - "keywords": [ - "activity", - "laravel", - "log", - "spatie", - "user" - ], - "support": { - "issues": "https://github.com/spatie/laravel-activitylog/issues", - "source": "https://github.com/spatie/laravel-activitylog/tree/4.7.3" - }, - "funding": [ - { - "url": "https://spatie.be/open-source/support-us", - "type": "custom" - }, - { - "url": "https://github.com/spatie", - "type": "github" - } - ], - "time": "2023-01-25T17:04:51+00:00" - }, - { - "name": "spatie/laravel-package-tools", - "version": "1.14.2", - "source": { - "type": "git", - "url": "https://github.com/spatie/laravel-package-tools.git", - "reference": "bab62023a4745a61170ad5424184533685e73c2d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-package-tools/zipball/bab62023a4745a61170ad5424184533685e73c2d", - "reference": "bab62023a4745a61170ad5424184533685e73c2d", - "shasum": "" - }, - "require": { - "illuminate/contracts": "^9.28|^10.0", - "php": "^8.0" - }, - "require-dev": { - "mockery/mockery": "^1.5", - "orchestra/testbench": "^7.7|^8.0", - "pestphp/pest": "^1.22", - "phpunit/phpunit": "^9.5.24", - "spatie/pest-plugin-test-time": "^1.1" - }, - "type": "library", - "autoload": { - "psr-4": { - "Spatie\\LaravelPackageTools\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Freek Van der Herten", - "email": "freek@spatie.be", - "role": "Developer" - } - ], - "description": "Tools for creating Laravel packages", - "homepage": "https://github.com/spatie/laravel-package-tools", - "keywords": [ - "laravel-package-tools", - "spatie" - ], - "support": { - "issues": "https://github.com/spatie/laravel-package-tools/issues", - "source": "https://github.com/spatie/laravel-package-tools/tree/1.14.2" - }, - "funding": [ - { - "url": "https://github.com/spatie", - "type": "github" - } - ], - "time": "2023-03-14T16:41:21+00:00" - }, - { - "name": "spatie/laravel-permission", - "version": "5.10.1", - "source": { - "type": "git", - "url": "https://github.com/spatie/laravel-permission.git", - "reference": "d08b3ffc5870cce4a47a39f22174947b33c191ae" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-permission/zipball/d08b3ffc5870cce4a47a39f22174947b33c191ae", - "reference": "d08b3ffc5870cce4a47a39f22174947b33c191ae", - "shasum": "" - }, - "require": { - "illuminate/auth": "^7.0|^8.0|^9.0|^10.0", - "illuminate/container": "^7.0|^8.0|^9.0|^10.0", - "illuminate/contracts": "^7.0|^8.0|^9.0|^10.0", - "illuminate/database": "^7.0|^8.0|^9.0|^10.0", - "php": "^7.3|^8.0" - }, - "require-dev": { - "orchestra/testbench": "^5.0|^6.0|^7.0|^8.0", - "phpunit/phpunit": "^9.4", - "predis/predis": "^1.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "5.x-dev", - "dev-master": "5.x-dev" - }, - "laravel": { - "providers": [ - "Spatie\\Permission\\PermissionServiceProvider" - ] - } - }, - "autoload": { - "files": [ - "src/helpers.php" - ], - "psr-4": { - "Spatie\\Permission\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Freek Van der Herten", - "email": "freek@spatie.be", - "homepage": "https://spatie.be", - "role": "Developer" - } - ], - "description": "Permission handling for Laravel 6.0 and up", - "homepage": "https://github.com/spatie/laravel-permission", - "keywords": [ - "acl", - "laravel", - "permission", - "permissions", - "rbac", - "roles", - "security", - "spatie" - ], - "support": { - "issues": "https://github.com/spatie/laravel-permission/issues", - "source": "https://github.com/spatie/laravel-permission/tree/5.10.1" - }, - "funding": [ - { - "url": "https://github.com/spatie", - "type": "github" - } - ], - "time": "2023-04-12T17:08:32+00:00" - }, - { - "name": "symfony/console", - "version": "v6.2.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/console.git", - "reference": "3582d68a64a86ec25240aaa521ec8bc2342b369b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/3582d68a64a86ec25240aaa521ec8bc2342b369b", - "reference": "3582d68a64a86ec25240aaa521ec8bc2342b369b", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-mbstring": "~1.0", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/string": "^5.4|^6.0" - }, - "conflict": { - "symfony/dependency-injection": "<5.4", - "symfony/dotenv": "<5.4", - "symfony/event-dispatcher": "<5.4", - "symfony/lock": "<5.4", - "symfony/process": "<5.4" - }, - "provide": { - "psr/log-implementation": "1.0|2.0|3.0" - }, - "require-dev": { - "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/event-dispatcher": "^5.4|^6.0", - "symfony/lock": "^5.4|^6.0", - "symfony/process": "^5.4|^6.0", - "symfony/var-dumper": "^5.4|^6.0" - }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/lock": "", - "symfony/process": "" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Console\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Eases the creation of beautiful and testable command line interfaces", - "homepage": "https://symfony.com", - "keywords": [ - "cli", - "command-line", - "console", - "terminal" - ], - "support": { - "source": "https://github.com/symfony/console/tree/v6.2.8" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-29T21:42:15+00:00" - }, - { - "name": "symfony/css-selector", - "version": "v6.2.7", - "source": { - "type": "git", - "url": "https://github.com/symfony/css-selector.git", - "reference": "aedf3cb0f5b929ec255d96bbb4909e9932c769e0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/aedf3cb0f5b929ec255d96bbb4909e9932c769e0", - "reference": "aedf3cb0f5b929ec255d96bbb4909e9932c769e0", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\CssSelector\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Jean-François Simon", - "email": "jeanfrancois.simon@sensiolabs.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Converts CSS selectors to XPath expressions", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/css-selector/tree/v6.2.7" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-02-14T08:44:56+00:00" - }, - { - "name": "symfony/deprecation-contracts", - "version": "v3.2.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", - "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.3-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "files": [ - "function.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "A generic function and convention to trigger deprecation notices", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.1" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-01T10:25:55+00:00" - }, - { - "name": "symfony/error-handler", - "version": "v6.2.9", - "source": { - "type": "git", - "url": "https://github.com/symfony/error-handler.git", - "reference": "e95f1273b3953c3b5e5341172dae838bacee11ee" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/e95f1273b3953c3b5e5341172dae838bacee11ee", - "reference": "e95f1273b3953c3b5e5341172dae838bacee11ee", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "psr/log": "^1|^2|^3", - "symfony/var-dumper": "^5.4|^6.0" - }, - "require-dev": { - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/http-kernel": "^5.4|^6.0", - "symfony/serializer": "^5.4|^6.0" - }, - "bin": [ - "Resources/bin/patch-type-declarations" - ], - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\ErrorHandler\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides tools to manage errors and ease debugging PHP code", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/error-handler/tree/v6.2.9" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-04-11T16:03:19+00:00" - }, - { - "name": "symfony/event-dispatcher", - "version": "v6.2.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "04046f35fd7d72f9646e721fc2ecb8f9c67d3339" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/04046f35fd7d72f9646e721fc2ecb8f9c67d3339", - "reference": "04046f35fd7d72f9646e721fc2ecb8f9c67d3339", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "symfony/event-dispatcher-contracts": "^2|^3" - }, - "conflict": { - "symfony/dependency-injection": "<5.4" - }, - "provide": { - "psr/event-dispatcher-implementation": "1.0", - "symfony/event-dispatcher-implementation": "2.0|3.0" - }, - "require-dev": { - "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/error-handler": "^5.4|^6.0", - "symfony/expression-language": "^5.4|^6.0", - "symfony/http-foundation": "^5.4|^6.0", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/stopwatch": "^5.4|^6.0" - }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\EventDispatcher\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.8" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-20T16:06:02+00:00" - }, - { - "name": "symfony/event-dispatcher-contracts", - "version": "v3.2.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", - "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "psr/event-dispatcher": "^1" - }, - "suggest": { - "symfony/event-dispatcher-implementation": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.3-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\EventDispatcher\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to dispatching event", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.2.1" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-01T10:32:47+00:00" - }, - { - "name": "symfony/finder", - "version": "v6.2.7", - "source": { - "type": "git", - "url": "https://github.com/symfony/finder.git", - "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/20808dc6631aecafbe67c186af5dcb370be3a0eb", - "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "symfony/filesystem": "^6.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Finder\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Finds files and directories via an intuitive fluent interface", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/finder/tree/v6.2.7" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-02-16T09:57:23+00:00" - }, - { - "name": "symfony/http-foundation", - "version": "v6.2.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-foundation.git", - "reference": "511a524affeefc191939348823ac75e9921c2112" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/511a524affeefc191939348823ac75e9921c2112", - "reference": "511a524affeefc191939348823ac75e9921c2112", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-mbstring": "~1.1" - }, - "conflict": { - "symfony/cache": "<6.2" - }, - "require-dev": { - "predis/predis": "~1.0", - "symfony/cache": "^5.4|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/expression-language": "^5.4|^6.0", - "symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4", - "symfony/mime": "^5.4|^6.0", - "symfony/rate-limiter": "^5.2|^6.0" - }, - "suggest": { - "symfony/mime": "To use the file extension guesser" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\HttpFoundation\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Defines an object-oriented layer for the HTTP specification", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/http-foundation/tree/v6.2.8" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-29T21:42:15+00:00" - }, - { - "name": "symfony/http-kernel", - "version": "v6.2.9", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-kernel.git", - "reference": "02246510cf7031726f7237138d61b796b95799b3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/02246510cf7031726f7237138d61b796b95799b3", - "reference": "02246510cf7031726f7237138d61b796b95799b3", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "psr/log": "^1|^2|^3", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/error-handler": "^6.1", - "symfony/event-dispatcher": "^5.4|^6.0", - "symfony/http-foundation": "^5.4.21|^6.2.7", - "symfony/polyfill-ctype": "^1.8" - }, - "conflict": { - "symfony/browser-kit": "<5.4", - "symfony/cache": "<5.4", - "symfony/config": "<6.1", - "symfony/console": "<5.4", - "symfony/dependency-injection": "<6.2", - "symfony/doctrine-bridge": "<5.4", - "symfony/form": "<5.4", - "symfony/http-client": "<5.4", - "symfony/mailer": "<5.4", - "symfony/messenger": "<5.4", - "symfony/translation": "<5.4", - "symfony/twig-bridge": "<5.4", - "symfony/validator": "<5.4", - "twig/twig": "<2.13" - }, - "provide": { - "psr/log-implementation": "1.0|2.0|3.0" - }, - "require-dev": { - "psr/cache": "^1.0|^2.0|^3.0", - "symfony/browser-kit": "^5.4|^6.0", - "symfony/config": "^6.1", - "symfony/console": "^5.4|^6.0", - "symfony/css-selector": "^5.4|^6.0", - "symfony/dependency-injection": "^6.2", - "symfony/dom-crawler": "^5.4|^6.0", - "symfony/expression-language": "^5.4|^6.0", - "symfony/finder": "^5.4|^6.0", - "symfony/http-client-contracts": "^1.1|^2|^3", - "symfony/process": "^5.4|^6.0", - "symfony/routing": "^5.4|^6.0", - "symfony/stopwatch": "^5.4|^6.0", - "symfony/translation": "^5.4|^6.0", - "symfony/translation-contracts": "^1.1|^2|^3", - "symfony/uid": "^5.4|^6.0", - "twig/twig": "^2.13|^3.0.4" - }, - "suggest": { - "symfony/browser-kit": "", - "symfony/config": "", - "symfony/console": "", - "symfony/dependency-injection": "" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\HttpKernel\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides a structured process for converting a Request into a Response", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/http-kernel/tree/v6.2.9" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-04-13T16:41:43+00:00" - }, - { - "name": "symfony/mailer", - "version": "v6.2.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/mailer.git", - "reference": "bfcfa015c67e19c6fdb7ca6fe70700af1e740a17" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/bfcfa015c67e19c6fdb7ca6fe70700af1e740a17", - "reference": "bfcfa015c67e19c6fdb7ca6fe70700af1e740a17", - "shasum": "" - }, - "require": { - "egulias/email-validator": "^2.1.10|^3|^4", - "php": ">=8.1", - "psr/event-dispatcher": "^1", - "psr/log": "^1|^2|^3", - "symfony/event-dispatcher": "^5.4|^6.0", - "symfony/mime": "^6.2", - "symfony/service-contracts": "^1.1|^2|^3" - }, - "conflict": { - "symfony/http-kernel": "<5.4", - "symfony/messenger": "<6.2", - "symfony/mime": "<6.2", - "symfony/twig-bridge": "<6.2.1" - }, - "require-dev": { - "symfony/console": "^5.4|^6.0", - "symfony/http-client": "^5.4|^6.0", - "symfony/messenger": "^6.2", - "symfony/twig-bridge": "^6.2" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Mailer\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Helps sending emails", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/mailer/tree/v6.2.8" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-14T15:00:05+00:00" - }, - { - "name": "symfony/mime", - "version": "v6.2.7", - "source": { - "type": "git", - "url": "https://github.com/symfony/mime.git", - "reference": "62e341f80699badb0ad70b31149c8df89a2d778e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/62e341f80699badb0ad70b31149c8df89a2d778e", - "reference": "62e341f80699badb0ad70b31149c8df89a2d778e", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.0" - }, - "conflict": { - "egulias/email-validator": "~3.0.0", - "phpdocumentor/reflection-docblock": "<3.2.2", - "phpdocumentor/type-resolver": "<1.4.0", - "symfony/mailer": "<5.4", - "symfony/serializer": "<6.2" - }, - "require-dev": { - "egulias/email-validator": "^2.1.10|^3.1|^4", - "league/html-to-markdown": "^5.0", - "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/property-access": "^5.4|^6.0", - "symfony/property-info": "^5.4|^6.0", - "symfony/serializer": "^6.2" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Mime\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Allows manipulating MIME messages", - "homepage": "https://symfony.com", - "keywords": [ - "mime", - "mime-type" - ], - "support": { - "source": "https://github.com/symfony/mime/tree/v6.2.7" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-02-24T10:42:00+00:00" - }, - { - "name": "symfony/polyfill-ctype", - "version": "v1.27.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "5bbc823adecdae860bb64756d639ecfec17b050a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a", - "reference": "5bbc823adecdae860bb64756d639ecfec17b050a", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "provide": { - "ext-ctype": "*" - }, - "suggest": { - "ext-ctype": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Ctype\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Gert de Pagter", - "email": "BackEndTea@gmail.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for ctype functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "ctype", - "polyfill", - "portable" - ], - "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-11-03T14:55:06+00:00" - }, - { - "name": "symfony/polyfill-intl-grapheme", - "version": "v1.27.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "511a08c03c1960e08a883f4cffcacd219b758354" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354", - "reference": "511a08c03c1960e08a883f4cffcacd219b758354", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "suggest": { - "ext-intl": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Intl\\Grapheme\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for intl's grapheme_* functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "grapheme", - "intl", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-11-03T14:55:06+00:00" - }, - { - "name": "symfony/polyfill-intl-idn", - "version": "v1.27.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "639084e360537a19f9ee352433b84ce831f3d2da" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/639084e360537a19f9ee352433b84ce831f3d2da", - "reference": "639084e360537a19f9ee352433b84ce831f3d2da", - "shasum": "" - }, - "require": { - "php": ">=7.1", - "symfony/polyfill-intl-normalizer": "^1.10", - "symfony/polyfill-php72": "^1.10" - }, - "suggest": { - "ext-intl": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Intl\\Idn\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Laurent Bassin", - "email": "laurent@bassin.info" - }, - { - "name": "Trevor Rowbotham", - "email": "trevor.rowbotham@pm.me" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for intl's idn_to_ascii and idn_to_utf8 functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "idn", - "intl", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.27.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-11-03T14:55:06+00:00" - }, - { - "name": "symfony/polyfill-intl-normalizer", - "version": "v1.27.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6", - "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "suggest": { - "ext-intl": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Intl\\Normalizer\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for intl's Normalizer class and related functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "intl", - "normalizer", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.27.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-11-03T14:55:06+00:00" - }, - { - "name": "symfony/polyfill-mbstring", - "version": "v1.27.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534", - "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "provide": { - "ext-mbstring": "*" - }, - "suggest": { - "ext-mbstring": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Mbstring\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for the Mbstring extension", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "mbstring", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.27.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-11-03T14:55:06+00:00" - }, - { - "name": "symfony/polyfill-php72", - "version": "v1.27.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "869329b1e9894268a8a61dabb69153029b7a8c97" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/869329b1e9894268a8a61dabb69153029b7a8c97", - "reference": "869329b1e9894268a8a61dabb69153029b7a8c97", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php72\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php72/tree/v1.27.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-11-03T14:55:06+00:00" - }, - { - "name": "symfony/polyfill-php80", - "version": "v1.27.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php80\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ion Bazan", - "email": "ion.bazan@gmail.com" - }, - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-11-03T14:55:06+00:00" - }, - { - "name": "symfony/polyfill-uuid", - "version": "v1.27.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-uuid.git", - "reference": "f3cf1a645c2734236ed1e2e671e273eeb3586166" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-uuid/zipball/f3cf1a645c2734236ed1e2e671e273eeb3586166", - "reference": "f3cf1a645c2734236ed1e2e671e273eeb3586166", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "provide": { - "ext-uuid": "*" - }, - "suggest": { - "ext-uuid": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Uuid\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Grégoire Pineau", - "email": "lyrixx@lyrixx.info" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for uuid functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "uuid" - ], - "support": { - "source": "https://github.com/symfony/polyfill-uuid/tree/v1.27.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-11-03T14:55:06+00:00" - }, - { - "name": "symfony/process", - "version": "v6.2.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/process.git", - "reference": "75ed64103df4f6615e15a7fe38b8111099f47416" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/75ed64103df4f6615e15a7fe38b8111099f47416", - "reference": "75ed64103df4f6615e15a7fe38b8111099f47416", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Process\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Executes commands in sub-processes", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/process/tree/v6.2.8" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-09T16:20:02+00:00" - }, - { - "name": "symfony/routing", - "version": "v6.2.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/routing.git", - "reference": "69062e2823f03b82265d73a966999660f0e1e404" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/69062e2823f03b82265d73a966999660f0e1e404", - "reference": "69062e2823f03b82265d73a966999660f0e1e404", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "conflict": { - "doctrine/annotations": "<1.12", - "symfony/config": "<6.2", - "symfony/dependency-injection": "<5.4", - "symfony/yaml": "<5.4" - }, - "require-dev": { - "doctrine/annotations": "^1.12|^2", - "psr/log": "^1|^2|^3", - "symfony/config": "^6.2", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/expression-language": "^5.4|^6.0", - "symfony/http-foundation": "^5.4|^6.0", - "symfony/yaml": "^5.4|^6.0" - }, - "suggest": { - "symfony/config": "For using the all-in-one router or any loader", - "symfony/expression-language": "For using expression matching", - "symfony/http-foundation": "For using a Symfony Request object", - "symfony/yaml": "For using the YAML loader" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Routing\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Maps an HTTP request to a set of configuration variables", - "homepage": "https://symfony.com", - "keywords": [ - "router", - "routing", - "uri", - "url" - ], - "support": { - "source": "https://github.com/symfony/routing/tree/v6.2.8" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-14T15:00:05+00:00" - }, - { - "name": "symfony/service-contracts", - "version": "v3.2.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/service-contracts.git", - "reference": "a8c9cedf55f314f3a186041d19537303766df09a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/a8c9cedf55f314f3a186041d19537303766df09a", - "reference": "a8c9cedf55f314f3a186041d19537303766df09a", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "psr/container": "^2.0" - }, - "conflict": { - "ext-psr": "<1.1|>=2" - }, - "suggest": { - "symfony/service-implementation": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.3-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\Service\\": "" - }, - "exclude-from-classmap": [ - "/Test/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to writing services", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.2.1" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-01T10:32:47+00:00" - }, - { - "name": "symfony/string", - "version": "v6.2.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/string.git", - "reference": "193e83bbd6617d6b2151c37fff10fa7168ebddef" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/193e83bbd6617d6b2151c37fff10fa7168ebddef", - "reference": "193e83bbd6617d6b2151c37fff10fa7168ebddef", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-intl-grapheme": "~1.0", - "symfony/polyfill-intl-normalizer": "~1.0", - "symfony/polyfill-mbstring": "~1.0" - }, - "conflict": { - "symfony/translation-contracts": "<2.0" - }, - "require-dev": { - "symfony/error-handler": "^5.4|^6.0", - "symfony/http-client": "^5.4|^6.0", - "symfony/intl": "^6.2", - "symfony/translation-contracts": "^2.0|^3.0", - "symfony/var-exporter": "^5.4|^6.0" - }, - "type": "library", - "autoload": { - "files": [ - "Resources/functions.php" - ], - "psr-4": { - "Symfony\\Component\\String\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", - "homepage": "https://symfony.com", - "keywords": [ - "grapheme", - "i18n", - "string", - "unicode", - "utf-8", - "utf8" - ], - "support": { - "source": "https://github.com/symfony/string/tree/v6.2.8" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-20T16:06:02+00:00" - }, - { - "name": "symfony/translation", - "version": "v6.2.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/translation.git", - "reference": "817535dbb1721df8b3a8f2489dc7e50bcd6209b5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/817535dbb1721df8b3a8f2489dc7e50bcd6209b5", - "reference": "817535dbb1721df8b3a8f2489dc7e50bcd6209b5", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "symfony/polyfill-mbstring": "~1.0", - "symfony/translation-contracts": "^2.3|^3.0" - }, - "conflict": { - "symfony/config": "<5.4", - "symfony/console": "<5.4", - "symfony/dependency-injection": "<5.4", - "symfony/http-kernel": "<5.4", - "symfony/twig-bundle": "<5.4", - "symfony/yaml": "<5.4" - }, - "provide": { - "symfony/translation-implementation": "2.3|3.0" - }, - "require-dev": { - "nikic/php-parser": "^4.13", - "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0", - "symfony/console": "^5.4|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/finder": "^5.4|^6.0", - "symfony/http-client-contracts": "^1.1|^2.0|^3.0", - "symfony/http-kernel": "^5.4|^6.0", - "symfony/intl": "^5.4|^6.0", - "symfony/polyfill-intl-icu": "^1.21", - "symfony/routing": "^5.4|^6.0", - "symfony/service-contracts": "^1.1.2|^2|^3", - "symfony/yaml": "^5.4|^6.0" - }, - "suggest": { - "nikic/php-parser": "To use PhpAstExtractor", - "psr/log-implementation": "To use logging capability in translator", - "symfony/config": "", - "symfony/yaml": "" - }, - "type": "library", - "autoload": { - "files": [ - "Resources/functions.php" - ], - "psr-4": { - "Symfony\\Component\\Translation\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides tools to internationalize your application", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/translation/tree/v6.2.8" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-31T09:14:44+00:00" - }, - { - "name": "symfony/translation-contracts", - "version": "v3.2.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/translation-contracts.git", - "reference": "dfec258b9dd17a6b24420d464c43bffe347441c8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/dfec258b9dd17a6b24420d464c43bffe347441c8", - "reference": "dfec258b9dd17a6b24420d464c43bffe347441c8", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "suggest": { - "symfony/translation-implementation": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.3-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\Translation\\": "" - }, - "exclude-from-classmap": [ - "/Test/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to translation", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.2.1" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-01T10:32:47+00:00" - }, - { - "name": "symfony/uid", - "version": "v6.2.7", - "source": { - "type": "git", - "url": "https://github.com/symfony/uid.git", - "reference": "d30c72a63897cfa043e1de4d4dd2ffa9ecefcdc0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/uid/zipball/d30c72a63897cfa043e1de4d4dd2ffa9ecefcdc0", - "reference": "d30c72a63897cfa043e1de4d4dd2ffa9ecefcdc0", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "symfony/polyfill-uuid": "^1.15" - }, - "require-dev": { - "symfony/console": "^5.4|^6.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Uid\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Grégoire Pineau", - "email": "lyrixx@lyrixx.info" - }, - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides an object-oriented API to generate and represent UIDs", - "homepage": "https://symfony.com", - "keywords": [ - "UID", - "ulid", - "uuid" - ], - "support": { - "source": "https://github.com/symfony/uid/tree/v6.2.7" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-02-14T08:44:56+00:00" - }, - { - "name": "symfony/var-dumper", - "version": "v6.2.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/var-dumper.git", - "reference": "d37ab6787be2db993747b6218fcc96e8e3bb4bd0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/d37ab6787be2db993747b6218fcc96e8e3bb4bd0", - "reference": "d37ab6787be2db993747b6218fcc96e8e3bb4bd0", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "symfony/polyfill-mbstring": "~1.0" - }, - "conflict": { - "phpunit/phpunit": "<5.4.3", - "symfony/console": "<5.4" - }, - "require-dev": { - "ext-iconv": "*", - "symfony/console": "^5.4|^6.0", - "symfony/process": "^5.4|^6.0", - "symfony/uid": "^5.4|^6.0", - "twig/twig": "^2.13|^3.0.4" - }, - "suggest": { - "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).", - "ext-intl": "To show region name in time zone dump", - "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script" - }, - "bin": [ - "Resources/bin/var-dump-server" - ], - "type": "library", - "autoload": { - "files": [ - "Resources/functions/dump.php" - ], - "psr-4": { - "Symfony\\Component\\VarDumper\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides mechanisms for walking through any arbitrary PHP variable", - "homepage": "https://symfony.com", - "keywords": [ - "debug", - "dump" - ], - "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.2.8" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-03-29T21:42:15+00:00" - }, - { - "name": "tijsverkoyen/css-to-inline-styles", - "version": "2.2.6", - "source": { - "type": "git", - "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", - "reference": "c42125b83a4fa63b187fdf29f9c93cb7733da30c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/c42125b83a4fa63b187fdf29f9c93cb7733da30c", - "reference": "c42125b83a4fa63b187fdf29f9c93cb7733da30c", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-libxml": "*", - "php": "^5.5 || ^7.0 || ^8.0", - "symfony/css-selector": "^2.7 || ^3.0 || ^4.0 || ^5.0 || ^6.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0 || ^7.5 || ^8.5.21 || ^9.5.10" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2.x-dev" - } - }, - "autoload": { - "psr-4": { - "TijsVerkoyen\\CssToInlineStyles\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Tijs Verkoyen", - "email": "css_to_inline_styles@verkoyen.eu", - "role": "Developer" - } - ], - "description": "CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.", - "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", - "support": { - "issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues", - "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.6" - }, - "time": "2023-01-03T09:29:04+00:00" - }, - { - "name": "vlucas/phpdotenv", - "version": "v5.5.0", - "source": { - "type": "git", - "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7", - "reference": "1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7", - "shasum": "" - }, - "require": { - "ext-pcre": "*", - "graham-campbell/result-type": "^1.0.2", - "php": "^7.1.3 || ^8.0", - "phpoption/phpoption": "^1.8", - "symfony/polyfill-ctype": "^1.23", - "symfony/polyfill-mbstring": "^1.23.1", - "symfony/polyfill-php80": "^1.23.1" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", - "ext-filter": "*", - "phpunit/phpunit": "^7.5.20 || ^8.5.30 || ^9.5.25" - }, - "suggest": { - "ext-filter": "Required to use the boolean validator." - }, - "type": "library", - "extra": { - "bamarni-bin": { - "bin-links": true, - "forward-command": true - }, - "branch-alias": { - "dev-master": "5.5-dev" - } - }, - "autoload": { - "psr-4": { - "Dotenv\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - }, - { - "name": "Vance Lucas", - "email": "vance@vancelucas.com", - "homepage": "https://github.com/vlucas" - } - ], - "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", - "keywords": [ - "dotenv", - "env", - "environment" - ], - "support": { - "issues": "https://github.com/vlucas/phpdotenv/issues", - "source": "https://github.com/vlucas/phpdotenv/tree/v5.5.0" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv", - "type": "tidelift" - } - ], - "time": "2022-10-16T01:01:54+00:00" - }, - { - "name": "voku/portable-ascii", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://github.com/voku/portable-ascii.git", - "reference": "b56450eed252f6801410d810c8e1727224ae0743" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/voku/portable-ascii/zipball/b56450eed252f6801410d810c8e1727224ae0743", - "reference": "b56450eed252f6801410d810c8e1727224ae0743", - "shasum": "" - }, - "require": { - "php": ">=7.0.0" - }, - "require-dev": { - "phpunit/phpunit": "~6.0 || ~7.0 || ~9.0" - }, - "suggest": { - "ext-intl": "Use Intl for transliterator_transliterate() support" - }, - "type": "library", - "autoload": { - "psr-4": { - "voku\\": "src/voku/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Lars Moelleken", - "homepage": "http://www.moelleken.org/" - } - ], - "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", - "homepage": "https://github.com/voku/portable-ascii", - "keywords": [ - "ascii", - "clean", - "php" - ], - "support": { - "issues": "https://github.com/voku/portable-ascii/issues", - "source": "https://github.com/voku/portable-ascii/tree/2.0.1" - }, - "funding": [ - { - "url": "https://www.paypal.me/moelleken", - "type": "custom" - }, - { - "url": "https://github.com/voku", - "type": "github" - }, - { - "url": "https://opencollective.com/portable-ascii", - "type": "open_collective" - }, - { - "url": "https://www.patreon.com/voku", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/voku/portable-ascii", - "type": "tidelift" - } - ], - "time": "2022-03-08T17:03:00+00:00" - }, - { - "name": "webmozart/assert", - "version": "1.11.0", - "source": { - "type": "git", - "url": "https://github.com/webmozarts/assert.git", - "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991", - "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991", - "shasum": "" - }, - "require": { - "ext-ctype": "*", - "php": "^7.2 || ^8.0" - }, - "conflict": { - "phpstan/phpstan": "<0.12.20", - "vimeo/psalm": "<4.6.1 || 4.6.2" - }, - "require-dev": { - "phpunit/phpunit": "^8.5.13" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.10-dev" - } - }, - "autoload": { - "psr-4": { - "Webmozart\\Assert\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - } - ], - "description": "Assertions to validate method input/output with nice error messages.", - "keywords": [ - "assert", - "check", - "validate" - ], - "support": { - "issues": "https://github.com/webmozarts/assert/issues", - "source": "https://github.com/webmozarts/assert/tree/1.11.0" - }, - "time": "2022-06-03T18:03:27+00:00" - }, - { - "name": "wildside/userstamps", - "version": "2.3.0", - "source": { - "type": "git", - "url": "https://github.com/WildsideUK/Laravel-Userstamps.git", - "reference": "371cfbf5fda1872cc487888c6a8ac01e3e8249aa" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/WildsideUK/Laravel-Userstamps/zipball/371cfbf5fda1872cc487888c6a8ac01e3e8249aa", - "reference": "371cfbf5fda1872cc487888c6a8ac01e3e8249aa", - "shasum": "" - }, - "require": { - "illuminate/support": "^5.2|^6.0|^7.0|^8.0|^9.0|^10.0", - "php": ">=5.5.9" - }, - "require-dev": { - "illuminate/database": "^5.2|^6.0|^7.0|^8.0|^9.0|^10.0", - "orchestra/testbench": "^3.1|^4.0|^5.0|^6.0|^7.0|^8.0", - "phpunit/phpunit": "^5.0|^6.0|^7.0|^8.4|^9.0|^10.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Wildside\\Userstamps\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "WILDSIDE", - "email": "hello@wildside.uk", - "homepage": "https://wildside.uk" - } - ], - "description": "Laravel Userstamps provides an Eloquent trait which automatically maintains `created_by` and `updated_by` columns on your model, populated by the currently authenticated user in your application.", - "keywords": [ - "created_by", - "deleted_by", - "eloquent", - "laravel", - "updated_by", - "userstamps" - ], - "support": { - "issues": "https://github.com/WildsideUK/Laravel-Userstamps/issues", - "source": "https://github.com/WildsideUK/Laravel-Userstamps/tree/2.3.0" - }, - "time": "2023-02-15T09:35:24+00:00" - }, - { - "name": "yajra/laravel-datatables", - "version": "v10.1.0", - "source": { - "type": "git", - "url": "https://github.com/yajra/datatables.git", - "reference": "7837d079edd88f088755a62b254e32068dfe16e1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/yajra/datatables/zipball/7837d079edd88f088755a62b254e32068dfe16e1", - "reference": "7837d079edd88f088755a62b254e32068dfe16e1", - "shasum": "" - }, - "require": { - "php": "^8.1", - "yajra/laravel-datatables-buttons": "^10", - "yajra/laravel-datatables-editor": "1.*", - "yajra/laravel-datatables-export": "^10", - "yajra/laravel-datatables-fractal": "^10", - "yajra/laravel-datatables-html": "^10", - "yajra/laravel-datatables-oracle": "^10" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "10.0-dev" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Arjay Angeles", - "email": "aqangeles@gmail.com" - } - ], - "description": "Laravel DataTables Complete Package.", - "keywords": [ - "datatables", - "jquery", - "laravel" - ], - "support": { - "issues": "https://github.com/yajra/datatables/issues", - "source": "https://github.com/yajra/datatables/tree/v10.1.0" - }, - "funding": [ - { - "url": "https://github.com/sponsors/yajra", - "type": "github" - } - ], - "time": "2023-02-20T05:26:34+00:00" - }, - { - "name": "yajra/laravel-datatables-buttons", - "version": "v10.0.6", - "source": { - "type": "git", - "url": "https://github.com/yajra/laravel-datatables-buttons.git", - "reference": "da9e4493809b2d4c6e9f53c61184da7f881c1f51" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/yajra/laravel-datatables-buttons/zipball/da9e4493809b2d4c6e9f53c61184da7f881c1f51", - "reference": "da9e4493809b2d4c6e9f53c61184da7f881c1f51", - "shasum": "" - }, - "require": { - "illuminate/console": "^10", - "php": "^8.1", - "yajra/laravel-datatables-html": "^10", - "yajra/laravel-datatables-oracle": "^10" - }, - "require-dev": { - "barryvdh/laravel-snappy": "^1.0.1", - "maatwebsite/excel": "^3.1.46", - "nunomaduro/larastan": "^2.4", - "orchestra/testbench": "^8", - "rap2hpoutre/fast-excel": "^5.1" - }, - "suggest": { - "barryvdh/laravel-snappy": "Allows exporting of dataTable to PDF using the print view.", - "dompdf/dompdf": "Allows exporting of dataTable to PDF using the DomPDF.", - "maatwebsite/excel": "Exporting of dataTables (excel, csv and PDF) using maatwebsite package.", - "rap2hpoutre/fast-excel": "Faster exporting of dataTables using fast-excel package.", - "yajra/laravel-datatables-export": "Exporting of dataTables (excel, csv and PDF) via livewire and queue worker." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "10.0-dev" - }, - "laravel": { - "providers": [ - "Yajra\\DataTables\\ButtonsServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Yajra\\DataTables\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Arjay Angeles", - "email": "aqangeles@gmail.com" - } - ], - "description": "Laravel DataTables Buttons Plugin.", - "keywords": [ - "buttons", - "datatables", - "jquery", - "laravel" - ], - "support": { - "issues": "https://github.com/yajra/laravel-datatables-buttons/issues", - "source": "https://github.com/yajra/laravel-datatables-buttons/tree/v10.0.6" - }, - "funding": [ - { - "url": "https://github.com/sponsors/yajra", - "type": "github" - } - ], - "time": "2023-02-28T06:08:22+00:00" - }, - { - "name": "yajra/laravel-datatables-editor", - "version": "v1.25.4", - "source": { - "type": "git", - "url": "https://github.com/yajra/laravel-datatables-editor.git", - "reference": "23962356700d6b31f49bb119665b13e87303e13f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/yajra/laravel-datatables-editor/zipball/23962356700d6b31f49bb119665b13e87303e13f", - "reference": "23962356700d6b31f49bb119665b13e87303e13f", - "shasum": "" - }, - "require": { - "illuminate/console": "*", - "illuminate/database": "*", - "illuminate/http": "*", - "illuminate/validation": "*", - "php": ">=7.0" - }, - "require-dev": { - "orchestra/testbench": "~3.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - }, - "laravel": { - "providers": [ - "Yajra\\DataTables\\EditorServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Yajra\\DataTables\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Arjay Angeles", - "email": "aqangeles@gmail.com" - } - ], - "description": "Laravel DataTables Editor plugin for Laravel 5.5+.", - "keywords": [ - "JS", - "datatables", - "editor", - "html", - "jquery", - "laravel" - ], - "support": { - "issues": "https://github.com/yajra/laravel-datatables-editor/issues", - "source": "https://github.com/yajra/laravel-datatables-editor/tree/v1.25.4" - }, - "funding": [ - { - "url": "https://www.paypal.me/yajra", - "type": "custom" - }, - { - "url": "https://github.com/yajra", - "type": "github" - }, - { - "url": "https://www.patreon.com/yajra", - "type": "patreon" - } - ], - "time": "2023-02-21T06:57:59+00:00" - }, - { - "name": "yajra/laravel-datatables-export", - "version": "v10.0.0", - "source": { - "type": "git", - "url": "https://github.com/yajra/laravel-datatables-export.git", - "reference": "1c5472a1ac71ec59e2a3e41172276b461ef172e1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/yajra/laravel-datatables-export/zipball/1c5472a1ac71ec59e2a3e41172276b461ef172e1", - "reference": "1c5472a1ac71ec59e2a3e41172276b461ef172e1", - "shasum": "" - }, - "require": { - "ext-json": "*", - "livewire/livewire": "^2.11.2", - "openspout/openspout": "^4.12.1", - "php": "^8.1", - "phpoffice/phpspreadsheet": "^1.27", - "yajra/laravel-datatables": "^10.0" - }, - "require-dev": { - "nunomaduro/larastan": "^2.4.1", - "orchestra/testbench": "^8.0.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "10.0-dev" - }, - "laravel": { - "providers": [ - "Yajra\\DataTables\\ExportServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Yajra\\DataTables\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Arjay Angeles", - "email": "aqangeles@gmail.com" - } - ], - "description": "Laravel DataTables Queued Export Plugin.", - "keywords": [ - "datatables", - "excel", - "export", - "laravel", - "livewire", - "queue" - ], - "support": { - "issues": "https://github.com/yajra/laravel-datatables-export/issues", - "source": "https://github.com/yajra/laravel-datatables-export/tree/v10.0.0" - }, - "funding": [ - { - "url": "https://github.com/sponsors/yajra", - "type": "github" - } - ], - "time": "2023-02-20T05:22:06+00:00" - }, - { - "name": "yajra/laravel-datatables-fractal", - "version": "v10.0.0", - "source": { - "type": "git", - "url": "https://github.com/yajra/laravel-datatables-fractal.git", - "reference": "765198d1f2b3f0a7c0c00f08ee41ba11be4ab1e2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/yajra/laravel-datatables-fractal/zipball/765198d1f2b3f0a7c0c00f08ee41ba11be4ab1e2", - "reference": "765198d1f2b3f0a7c0c00f08ee41ba11be4ab1e2", - "shasum": "" - }, - "require": { - "league/fractal": "^0.20.1", - "php": "^8.1", - "yajra/laravel-datatables-oracle": "^10.0" - }, - "require-dev": { - "nunomaduro/larastan": "^2.4", - "orchestra/testbench": "^7.21" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "10.0-dev" - }, - "laravel": { - "providers": [ - "Yajra\\DataTables\\FractalServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Yajra\\DataTables\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Arjay Angeles", - "email": "aqangeles@gmail.com" - } - ], - "description": "Laravel DataTables Fractal Plugin.", - "keywords": [ - "api", - "datatables", - "fractal", - "laravel" - ], - "support": { - "issues": "https://github.com/yajra/laravel-datatables-fractal/issues", - "source": "https://github.com/yajra/laravel-datatables-fractal/tree/v10.0.0" - }, - "time": "2023-02-07T03:46:04+00:00" - }, - { - "name": "yajra/laravel-datatables-html", - "version": "v10.6.0", - "source": { - "type": "git", - "url": "https://github.com/yajra/laravel-datatables-html.git", - "reference": "eee4dac665d8f854233212eab3840f16c57ceaa8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/yajra/laravel-datatables-html/zipball/eee4dac665d8f854233212eab3840f16c57ceaa8", - "reference": "eee4dac665d8f854233212eab3840f16c57ceaa8", - "shasum": "" - }, - "require": { - "ext-json": "*", - "php": "^8.1", - "yajra/laravel-datatables-oracle": "^10.0" - }, - "require-dev": { - "nunomaduro/larastan": "^2.4", - "orchestra/testbench": "^7.21" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "10.0-dev" - }, - "laravel": { - "providers": [ - "Yajra\\DataTables\\HtmlServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Yajra\\DataTables\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Arjay Angeles", - "email": "aqangeles@gmail.com" - } - ], - "description": "Laravel DataTables HTML builder plugin for Laravel 5.4+.", - "keywords": [ - "JS", - "datatables", - "html", - "jquery", - "laravel" - ], - "support": { - "issues": "https://github.com/yajra/laravel-datatables-html/issues", - "source": "https://github.com/yajra/laravel-datatables-html/tree/v10.6.0" - }, - "funding": [ - { - "url": "https://www.paypal.me/yajra", - "type": "custom" - }, - { - "url": "https://github.com/yajra", - "type": "github" - }, - { - "url": "https://www.patreon.com/yajra", - "type": "patreon" - } - ], - "time": "2023-03-31T07:26:51+00:00" - }, - { - "name": "yajra/laravel-datatables-oracle", - "version": "v10.4.0", - "source": { - "type": "git", - "url": "https://github.com/yajra/laravel-datatables.git", - "reference": "2e641c3a5d4414dc2b0fce89ab0c74d73fbf7eb3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/yajra/laravel-datatables/zipball/2e641c3a5d4414dc2b0fce89ab0c74d73fbf7eb3", - "reference": "2e641c3a5d4414dc2b0fce89ab0c74d73fbf7eb3", - "shasum": "" - }, - "require": { - "illuminate/database": "^9|^10", - "illuminate/filesystem": "^9|^10", - "illuminate/http": "^9|^10", - "illuminate/support": "^9|^10", - "illuminate/view": "^9|^10", - "php": "^8.0.2" - }, - "require-dev": { - "nunomaduro/larastan": "^2.4", - "orchestra/testbench": "^8", - "yajra/laravel-datatables-html": "^9.3.4|^10" - }, - "suggest": { - "yajra/laravel-datatables-buttons": "Plugin for server-side exporting of dataTables.", - "yajra/laravel-datatables-editor": "Plugin to use DataTables Editor (requires a license).", - "yajra/laravel-datatables-export": "Plugin for server-side exporting using livewire and queue worker.", - "yajra/laravel-datatables-fractal": "Plugin for server-side response using Fractal.", - "yajra/laravel-datatables-html": "Plugin for server-side HTML builder of dataTables." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "10.x-dev" - }, - "laravel": { - "providers": [ - "Yajra\\DataTables\\DataTablesServiceProvider" - ], - "aliases": { - "DataTables": "Yajra\\DataTables\\Facades\\DataTables" - } - } - }, - "autoload": { - "files": [ - "src/helper.php" - ], - "psr-4": { - "Yajra\\DataTables\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Arjay Angeles", - "email": "aqangeles@gmail.com" - } - ], - "description": "jQuery DataTables API for Laravel 4|5|6|7|8|9|10", - "keywords": [ - "datatables", - "jquery", - "laravel" - ], - "support": { - "issues": "https://github.com/yajra/laravel-datatables/issues", - "source": "https://github.com/yajra/laravel-datatables/tree/v10.4.0" - }, - "funding": [ - { - "url": "https://github.com/sponsors/yajra", - "type": "github" - } - ], - "time": "2023-03-28T07:33:58+00:00" - } - ], - "packages-dev": [ - { - "name": "fakerphp/faker", - "version": "v1.21.0", - "source": { - "type": "git", - "url": "https://github.com/FakerPHP/Faker.git", - "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/92efad6a967f0b79c499705c69b662f738cc9e4d", - "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d", - "shasum": "" - }, - "require": { - "php": "^7.4 || ^8.0", - "psr/container": "^1.0 || ^2.0", - "symfony/deprecation-contracts": "^2.2 || ^3.0" - }, - "conflict": { - "fzaninotto/faker": "*" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", - "doctrine/persistence": "^1.3 || ^2.0", - "ext-intl": "*", - "phpunit/phpunit": "^9.5.26", - "symfony/phpunit-bridge": "^5.4.16" - }, - "suggest": { - "doctrine/orm": "Required to use Faker\\ORM\\Doctrine", - "ext-curl": "Required by Faker\\Provider\\Image to download images.", - "ext-dom": "Required by Faker\\Provider\\HtmlLorem for generating random HTML.", - "ext-iconv": "Required by Faker\\Provider\\ru_RU\\Text::realText() for generating real Russian text.", - "ext-mbstring": "Required for multibyte Unicode string functionality." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "v1.21-dev" - } - }, - "autoload": { - "psr-4": { - "Faker\\": "src/Faker/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "François Zaninotto" - } - ], - "description": "Faker is a PHP library that generates fake data for you.", - "keywords": [ - "data", - "faker", - "fixtures" - ], - "support": { - "issues": "https://github.com/FakerPHP/Faker/issues", - "source": "https://github.com/FakerPHP/Faker/tree/v1.21.0" - }, - "time": "2022-12-13T13:54:32+00:00" - }, - { - "name": "filp/whoops", - "version": "2.15.2", - "source": { - "type": "git", - "url": "https://github.com/filp/whoops.git", - "reference": "aac9304c5ed61bf7b1b7a6064bf9806ab842ce73" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/aac9304c5ed61bf7b1b7a6064bf9806ab842ce73", - "reference": "aac9304c5ed61bf7b1b7a6064bf9806ab842ce73", - "shasum": "" - }, - "require": { - "php": "^5.5.9 || ^7.0 || ^8.0", - "psr/log": "^1.0.1 || ^2.0 || ^3.0" - }, - "require-dev": { - "mockery/mockery": "^0.9 || ^1.0", - "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.3", - "symfony/var-dumper": "^2.6 || ^3.0 || ^4.0 || ^5.0" - }, - "suggest": { - "symfony/var-dumper": "Pretty print complex values better with var-dumper available", - "whoops/soap": "Formats errors as SOAP responses" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.7-dev" - } - }, - "autoload": { - "psr-4": { - "Whoops\\": "src/Whoops/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Filipe Dobreira", - "homepage": "https://github.com/filp", - "role": "Developer" - } - ], - "description": "php error handling for cool kids", - "homepage": "https://filp.github.io/whoops/", - "keywords": [ - "error", - "exception", - "handling", - "library", - "throwable", - "whoops" - ], - "support": { - "issues": "https://github.com/filp/whoops/issues", - "source": "https://github.com/filp/whoops/tree/2.15.2" - }, - "funding": [ - { - "url": "https://github.com/denis-sokolov", - "type": "github" - } - ], - "time": "2023-04-12T12:00:00+00:00" - }, - { - "name": "hamcrest/hamcrest-php", - "version": "v2.0.1", - "source": { - "type": "git", - "url": "https://github.com/hamcrest/hamcrest-php.git", - "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/8c3d0a3f6af734494ad8f6fbbee0ba92422859f3", - "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3", - "shasum": "" - }, - "require": { - "php": "^5.3|^7.0|^8.0" - }, - "replace": { - "cordoval/hamcrest-php": "*", - "davedevelopment/hamcrest-php": "*", - "kodova/hamcrest-php": "*" - }, - "require-dev": { - "phpunit/php-file-iterator": "^1.4 || ^2.0", - "phpunit/phpunit": "^4.8.36 || ^5.7 || ^6.5 || ^7.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.1-dev" - } - }, - "autoload": { - "classmap": [ - "hamcrest" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "This is the PHP port of Hamcrest Matchers", - "keywords": [ - "test" - ], - "support": { - "issues": "https://github.com/hamcrest/hamcrest-php/issues", - "source": "https://github.com/hamcrest/hamcrest-php/tree/v2.0.1" - }, - "time": "2020-07-09T08:09:16+00:00" - }, - { - "name": "laravel/breeze", - "version": "v1.20.1", - "source": { - "type": "git", - "url": "https://github.com/laravel/breeze.git", - "reference": "bb2935f40d8396c6d0c77e4099a6e072c9095b33" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel/breeze/zipball/bb2935f40d8396c6d0c77e4099a6e072c9095b33", - "reference": "bb2935f40d8396c6d0c77e4099a6e072c9095b33", - "shasum": "" - }, - "require": { - "illuminate/console": "^10.0", - "illuminate/filesystem": "^10.0", - "illuminate/support": "^10.0", - "illuminate/validation": "^10.0", - "php": "^8.1.0" - }, - "require-dev": { - "orchestra/testbench": "^8.0", - "phpstan/phpstan": "^1.10" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - }, - "laravel": { - "providers": [ - "Laravel\\Breeze\\BreezeServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Laravel\\Breeze\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "Minimal Laravel authentication scaffolding with Blade and Tailwind.", - "keywords": [ - "auth", - "laravel" - ], - "support": { - "issues": "https://github.com/laravel/breeze/issues", - "source": "https://github.com/laravel/breeze" - }, - "time": "2023-03-28T14:37:27+00:00" - }, - { - "name": "laravel/pint", - "version": "v1.8.0", - "source": { - "type": "git", - "url": "https://github.com/laravel/pint.git", - "reference": "4b8f2ef22bfcddd1d163cfd282e3f42ee1a5cce2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel/pint/zipball/4b8f2ef22bfcddd1d163cfd282e3f42ee1a5cce2", - "reference": "4b8f2ef22bfcddd1d163cfd282e3f42ee1a5cce2", - "shasum": "" - }, - "require": { - "ext-json": "*", - "ext-mbstring": "*", - "ext-tokenizer": "*", - "ext-xml": "*", - "php": "^8.1.0" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^3.16.0", - "illuminate/view": "^10.5.1", - "laravel-zero/framework": "^10.0.2", - "mockery/mockery": "^1.5.1", - "nunomaduro/larastan": "^2.5.1", - "nunomaduro/termwind": "^1.15.1", - "pestphp/pest": "^2.4.0" - }, - "bin": [ - "builds/pint" - ], - "type": "project", - "autoload": { - "psr-4": { - "App\\": "app/", - "Database\\Seeders\\": "database/seeders/", - "Database\\Factories\\": "database/factories/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" - } - ], - "description": "An opinionated code formatter for PHP.", - "homepage": "https://laravel.com", - "keywords": [ - "format", - "formatter", - "lint", - "linter", - "php" - ], - "support": { - "issues": "https://github.com/laravel/pint/issues", - "source": "https://github.com/laravel/pint" - }, - "time": "2023-04-04T13:08:09+00:00" - }, - { - "name": "laravel/sail", - "version": "v1.21.4", - "source": { - "type": "git", - "url": "https://github.com/laravel/sail.git", - "reference": "5e59b4a57181020477e2b18943b27493638e3f89" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel/sail/zipball/5e59b4a57181020477e2b18943b27493638e3f89", - "reference": "5e59b4a57181020477e2b18943b27493638e3f89", - "shasum": "" - }, - "require": { - "illuminate/console": "^8.0|^9.0|^10.0", - "illuminate/contracts": "^8.0|^9.0|^10.0", - "illuminate/support": "^8.0|^9.0|^10.0", - "php": "^7.3|^8.0", - "symfony/yaml": "^6.0" - }, - "require-dev": { - "orchestra/testbench": "^6.0|^7.0|^8.0", - "phpstan/phpstan": "^1.10" - }, - "bin": [ - "bin/sail" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - }, - "laravel": { - "providers": [ - "Laravel\\Sail\\SailServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Laravel\\Sail\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "Docker files for running a basic Laravel application.", - "keywords": [ - "docker", - "laravel" - ], - "support": { - "issues": "https://github.com/laravel/sail/issues", - "source": "https://github.com/laravel/sail" - }, - "time": "2023-03-30T12:28:55+00:00" - }, - { - "name": "mockery/mockery", - "version": "1.5.1", - "source": { - "type": "git", - "url": "https://github.com/mockery/mockery.git", - "reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/mockery/mockery/zipball/e92dcc83d5a51851baf5f5591d32cb2b16e3684e", - "reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e", - "shasum": "" - }, - "require": { - "hamcrest/hamcrest-php": "^2.0.1", - "lib-pcre": ">=7.0", - "php": "^7.3 || ^8.0" - }, - "conflict": { - "phpunit/phpunit": "<8.0" - }, - "require-dev": { - "phpunit/phpunit": "^8.5 || ^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.4.x-dev" - } - }, - "autoload": { - "psr-0": { - "Mockery": "library/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Pádraic Brady", - "email": "padraic.brady@gmail.com", - "homepage": "http://blog.astrumfutura.com" - }, - { - "name": "Dave Marshall", - "email": "dave.marshall@atstsolutions.co.uk", - "homepage": "http://davedevelopment.co.uk" - } - ], - "description": "Mockery is a simple yet flexible PHP mock object framework", - "homepage": "https://github.com/mockery/mockery", - "keywords": [ - "BDD", - "TDD", - "library", - "mock", - "mock objects", - "mockery", - "stub", - "test", - "test double", - "testing" - ], - "support": { - "issues": "https://github.com/mockery/mockery/issues", - "source": "https://github.com/mockery/mockery/tree/1.5.1" - }, - "time": "2022-09-07T15:32:08+00:00" - }, - { - "name": "myclabs/deep-copy", - "version": "1.11.1", - "source": { - "type": "git", - "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", - "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "conflict": { - "doctrine/collections": "<1.6.8", - "doctrine/common": "<2.13.3 || >=3,<3.2.2" - }, - "require-dev": { - "doctrine/collections": "^1.6.8", - "doctrine/common": "^2.13.3 || ^3.2.2", - "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13" - }, - "type": "library", - "autoload": { - "files": [ - "src/DeepCopy/deep_copy.php" - ], - "psr-4": { - "DeepCopy\\": "src/DeepCopy/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Create deep copies (clones) of your objects", - "keywords": [ - "clone", - "copy", - "duplicate", - "object", - "object graph" - ], - "support": { - "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1" - }, - "funding": [ - { - "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy", - "type": "tidelift" - } - ], - "time": "2023-03-08T13:26:56+00:00" - }, - { - "name": "nunomaduro/collision", - "version": "v7.5.0", - "source": { - "type": "git", - "url": "https://github.com/nunomaduro/collision.git", - "reference": "bbbc6fb9c1ee88f8aa38e47abd15c465f946f85e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/collision/zipball/bbbc6fb9c1ee88f8aa38e47abd15c465f946f85e", - "reference": "bbbc6fb9c1ee88f8aa38e47abd15c465f946f85e", - "shasum": "" - }, - "require": { - "filp/whoops": "^2.15.2", - "nunomaduro/termwind": "^1.15.1", - "php": "^8.1.0", - "symfony/console": "^6.2.8" - }, - "conflict": { - "phpunit/phpunit": "<10.1.0" - }, - "require-dev": { - "brianium/paratest": "^7.1.3", - "laravel/framework": "^10.7.1", - "laravel/pint": "^1.8.0", - "laravel/sail": "^1.21.4", - "laravel/sanctum": "^3.2.1", - "laravel/tinker": "^2.8.1", - "nunomaduro/larastan": "^2.5.1", - "orchestra/testbench-core": "^8.4.2", - "pestphp/pest": "^2.5.0", - "phpunit/phpunit": "^10.1.0", - "sebastian/environment": "^6.0.1", - "spatie/laravel-ignition": "^2.1.0" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider" - ] - } - }, - "autoload": { - "files": [ - "./src/Adapters/Phpunit/Autoload.php" - ], - "psr-4": { - "NunoMaduro\\Collision\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" - } - ], - "description": "Cli error handling for console/command-line PHP applications.", - "keywords": [ - "artisan", - "cli", - "command-line", - "console", - "error", - "handling", - "laravel", - "laravel-zero", - "php", - "symfony" - ], - "support": { - "issues": "https://github.com/nunomaduro/collision/issues", - "source": "https://github.com/nunomaduro/collision" - }, - "funding": [ - { - "url": "https://www.paypal.com/paypalme/enunomaduro", - "type": "custom" - }, - { - "url": "https://github.com/nunomaduro", - "type": "github" - }, - { - "url": "https://www.patreon.com/nunomaduro", - "type": "patreon" - } - ], - "time": "2023-04-14T10:39:16+00:00" - }, - { - "name": "phar-io/manifest", - "version": "2.0.3", - "source": { - "type": "git", - "url": "https://github.com/phar-io/manifest.git", - "reference": "97803eca37d319dfa7826cc2437fc020857acb53" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53", - "reference": "97803eca37d319dfa7826cc2437fc020857acb53", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-phar": "*", - "ext-xmlwriter": "*", - "phar-io/version": "^3.0.1", - "php": "^7.2 || ^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - }, - { - "name": "Sebastian Heuer", - "email": "sebastian@phpeople.de", - "role": "Developer" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "Developer" - } - ], - "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", - "support": { - "issues": "https://github.com/phar-io/manifest/issues", - "source": "https://github.com/phar-io/manifest/tree/2.0.3" - }, - "time": "2021-07-20T11:28:43+00:00" - }, - { - "name": "phar-io/version", - "version": "3.2.1", - "source": { - "type": "git", - "url": "https://github.com/phar-io/version.git", - "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74", - "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - }, - { - "name": "Sebastian Heuer", - "email": "sebastian@phpeople.de", - "role": "Developer" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "Developer" - } - ], - "description": "Library for handling version information and constraints", - "support": { - "issues": "https://github.com/phar-io/version/issues", - "source": "https://github.com/phar-io/version/tree/3.2.1" - }, - "time": "2022-02-21T01:04:05+00:00" - }, - { - "name": "phpunit/php-code-coverage", - "version": "10.1.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "fc4f5ee614fa82d50ecf9014b51af0a9561f3df8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/fc4f5ee614fa82d50ecf9014b51af0a9561f3df8", - "reference": "fc4f5ee614fa82d50ecf9014b51af0a9561f3df8", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-libxml": "*", - "ext-xmlwriter": "*", - "nikic/php-parser": "^4.15", - "php": ">=8.1", - "phpunit/php-file-iterator": "^4.0", - "phpunit/php-text-template": "^3.0", - "sebastian/code-unit-reverse-lookup": "^3.0", - "sebastian/complexity": "^3.0", - "sebastian/environment": "^6.0", - "sebastian/lines-of-code": "^2.0", - "sebastian/version": "^4.0", - "theseer/tokenizer": "^1.2.0" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "suggest": { - "ext-pcov": "PHP extension that provides line coverage", - "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "10.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", - "homepage": "https://github.com/sebastianbergmann/php-code-coverage", - "keywords": [ - "coverage", - "testing", - "xunit" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/10.1.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-04-13T07:08:27+00:00" - }, - { - "name": "phpunit/php-file-iterator", - "version": "4.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "fd9329ab3368f59fe1fe808a189c51086bd4b6bd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/fd9329ab3368f59fe1fe808a189c51086bd4b6bd", - "reference": "fd9329ab3368f59fe1fe808a189c51086bd4b6bd", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "FilterIterator implementation that filters files based on a list of suffixes.", - "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", - "keywords": [ - "filesystem", - "iterator" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", - "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/4.0.1" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-10T16:53:14+00:00" - }, - { - "name": "phpunit/php-invoker", - "version": "4.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-invoker.git", - "reference": "f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7", - "reference": "f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "ext-pcntl": "*", - "phpunit/phpunit": "^10.0" - }, - "suggest": { - "ext-pcntl": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Invoke callables with a timeout", - "homepage": "https://github.com/sebastianbergmann/php-invoker/", - "keywords": [ - "process" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-invoker/issues", - "source": "https://github.com/sebastianbergmann/php-invoker/tree/4.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T06:56:09+00:00" - }, - { - "name": "phpunit/php-text-template", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "9f3d3709577a527025f55bcf0f7ab8052c8bb37d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/9f3d3709577a527025f55bcf0f7ab8052c8bb37d", - "reference": "9f3d3709577a527025f55bcf0f7ab8052c8bb37d", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Simple template engine.", - "homepage": "https://github.com/sebastianbergmann/php-text-template/", - "keywords": [ - "template" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-text-template/issues", - "source": "https://github.com/sebastianbergmann/php-text-template/tree/3.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T06:56:46+00:00" - }, - { - "name": "phpunit/php-timer", - "version": "6.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "e2a2d67966e740530f4a3343fe2e030ffdc1161d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/e2a2d67966e740530f4a3343fe2e030ffdc1161d", - "reference": "e2a2d67966e740530f4a3343fe2e030ffdc1161d", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "6.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Utility class for timing", - "homepage": "https://github.com/sebastianbergmann/php-timer/", - "keywords": [ - "timer" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-timer/issues", - "source": "https://github.com/sebastianbergmann/php-timer/tree/6.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T06:57:52+00:00" - }, - { - "name": "phpunit/phpunit", - "version": "10.1.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "5a477aea03e61329132935689ae2d73f418f5e25" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/5a477aea03e61329132935689ae2d73f418f5e25", - "reference": "5a477aea03e61329132935689ae2d73f418f5e25", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-json": "*", - "ext-libxml": "*", - "ext-mbstring": "*", - "ext-xml": "*", - "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.10.1", - "phar-io/manifest": "^2.0.3", - "phar-io/version": "^3.0.2", - "php": ">=8.1", - "phpunit/php-code-coverage": "^10.1", - "phpunit/php-file-iterator": "^4.0", - "phpunit/php-invoker": "^4.0", - "phpunit/php-text-template": "^3.0", - "phpunit/php-timer": "^6.0", - "sebastian/cli-parser": "^2.0", - "sebastian/code-unit": "^2.0", - "sebastian/comparator": "^5.0", - "sebastian/diff": "^5.0", - "sebastian/environment": "^6.0", - "sebastian/exporter": "^5.0", - "sebastian/global-state": "^6.0", - "sebastian/object-enumerator": "^5.0", - "sebastian/recursion-context": "^5.0", - "sebastian/type": "^4.0", - "sebastian/version": "^4.0" - }, - "suggest": { - "ext-soap": "To be able to generate mocks based on WSDL files" - }, - "bin": [ - "phpunit" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "10.1-dev" - } - }, - "autoload": { - "files": [ - "src/Framework/Assert/Functions.php" - ], - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "The PHP Unit Testing framework.", - "homepage": "https://phpunit.de/", - "keywords": [ - "phpunit", - "testing", - "xunit" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/10.1.0" - }, - "funding": [ - { - "url": "https://phpunit.de/sponsors.html", - "type": "custom" - }, - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", - "type": "tidelift" - } - ], - "time": "2023-04-14T05:15:09+00:00" - }, - { - "name": "sebastian/cli-parser", - "version": "2.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/cli-parser.git", - "reference": "efdc130dbbbb8ef0b545a994fd811725c5282cae" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/efdc130dbbbb8ef0b545a994fd811725c5282cae", - "reference": "efdc130dbbbb8ef0b545a994fd811725c5282cae", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for parsing CLI options", - "homepage": "https://github.com/sebastianbergmann/cli-parser", - "support": { - "issues": "https://github.com/sebastianbergmann/cli-parser/issues", - "source": "https://github.com/sebastianbergmann/cli-parser/tree/2.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T06:58:15+00:00" - }, - { - "name": "sebastian/code-unit", - "version": "2.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit.git", - "reference": "a81fee9eef0b7a76af11d121767abc44c104e503" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/a81fee9eef0b7a76af11d121767abc44c104e503", - "reference": "a81fee9eef0b7a76af11d121767abc44c104e503", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Collection of value objects that represent the PHP code units", - "homepage": "https://github.com/sebastianbergmann/code-unit", - "support": { - "issues": "https://github.com/sebastianbergmann/code-unit/issues", - "source": "https://github.com/sebastianbergmann/code-unit/tree/2.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T06:58:43+00:00" - }, - { - "name": "sebastian/code-unit-reverse-lookup", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "5e3a687f7d8ae33fb362c5c0743794bbb2420a1d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/5e3a687f7d8ae33fb362c5c0743794bbb2420a1d", - "reference": "5e3a687f7d8ae33fb362c5c0743794bbb2420a1d", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Looks up which function or method a line of code belongs to", - "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", - "support": { - "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", - "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/3.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T06:59:15+00:00" - }, - { - "name": "sebastian/comparator", - "version": "5.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "72f01e6586e0caf6af81297897bd112eb7e9627c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/72f01e6586e0caf6af81297897bd112eb7e9627c", - "reference": "72f01e6586e0caf6af81297897bd112eb7e9627c", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-mbstring": "*", - "php": ">=8.1", - "sebastian/diff": "^5.0", - "sebastian/exporter": "^5.0" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "5.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@2bepublished.at" - } - ], - "description": "Provides the functionality to compare PHP values for equality", - "homepage": "https://github.com/sebastianbergmann/comparator", - "keywords": [ - "comparator", - "compare", - "equality" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/5.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T07:07:16+00:00" - }, - { - "name": "sebastian/complexity", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/complexity.git", - "reference": "e67d240970c9dc7ea7b2123a6d520e334dd61dc6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/e67d240970c9dc7ea7b2123a6d520e334dd61dc6", - "reference": "e67d240970c9dc7ea7b2123a6d520e334dd61dc6", - "shasum": "" - }, - "require": { - "nikic/php-parser": "^4.10", - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for calculating the complexity of PHP code units", - "homepage": "https://github.com/sebastianbergmann/complexity", - "support": { - "issues": "https://github.com/sebastianbergmann/complexity/issues", - "source": "https://github.com/sebastianbergmann/complexity/tree/3.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T06:59:47+00:00" - }, - { - "name": "sebastian/diff", - "version": "5.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "aae9a0a43bff37bd5d8d0311426c87bf36153f02" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/aae9a0a43bff37bd5d8d0311426c87bf36153f02", - "reference": "aae9a0a43bff37bd5d8d0311426c87bf36153f02", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0", - "symfony/process": "^4.2 || ^5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "5.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - } - ], - "description": "Diff implementation", - "homepage": "https://github.com/sebastianbergmann/diff", - "keywords": [ - "diff", - "udiff", - "unidiff", - "unified diff" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/diff/issues", - "security": "https://github.com/sebastianbergmann/diff/security/policy", - "source": "https://github.com/sebastianbergmann/diff/tree/5.0.1" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-03-23T05:12:41+00:00" - }, - { - "name": "sebastian/environment", - "version": "6.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "43c751b41d74f96cbbd4e07b7aec9675651e2951" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/43c751b41d74f96cbbd4e07b7aec9675651e2951", - "reference": "43c751b41d74f96cbbd4e07b7aec9675651e2951", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "suggest": { - "ext-posix": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "6.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "https://github.com/sebastianbergmann/environment", - "keywords": [ - "Xdebug", - "environment", - "hhvm" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/environment/issues", - "security": "https://github.com/sebastianbergmann/environment/security/policy", - "source": "https://github.com/sebastianbergmann/environment/tree/6.0.1" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-04-11T05:39:26+00:00" - }, - { - "name": "sebastian/exporter", - "version": "5.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "f3ec4bf931c0b31e5b413f5b4fc970a7d03338c0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/f3ec4bf931c0b31e5b413f5b4fc970a7d03338c0", - "reference": "f3ec4bf931c0b31e5b413f5b4fc970a7d03338c0", - "shasum": "" - }, - "require": { - "ext-mbstring": "*", - "php": ">=8.1", - "sebastian/recursion-context": "^5.0" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "5.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - } - ], - "description": "Provides the functionality to export PHP variables for visualization", - "homepage": "https://www.github.com/sebastianbergmann/exporter", - "keywords": [ - "export", - "exporter" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/5.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T07:06:49+00:00" - }, - { - "name": "sebastian/global-state", - "version": "6.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "aab257c712de87b90194febd52e4d184551c2d44" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/aab257c712de87b90194febd52e4d184551c2d44", - "reference": "aab257c712de87b90194febd52e4d184551c2d44", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "sebastian/object-reflector": "^3.0", - "sebastian/recursion-context": "^5.0" - }, - "require-dev": { - "ext-dom": "*", - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "6.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Snapshotting of global state", - "homepage": "http://www.github.com/sebastianbergmann/global-state", - "keywords": [ - "global state" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/global-state/issues", - "source": "https://github.com/sebastianbergmann/global-state/tree/6.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T07:07:38+00:00" - }, - { - "name": "sebastian/lines-of-code", - "version": "2.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/lines-of-code.git", - "reference": "17c4d940ecafb3d15d2cf916f4108f664e28b130" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/17c4d940ecafb3d15d2cf916f4108f664e28b130", - "reference": "17c4d940ecafb3d15d2cf916f4108f664e28b130", - "shasum": "" - }, - "require": { - "nikic/php-parser": "^4.10", - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for counting the lines of code in PHP source code", - "homepage": "https://github.com/sebastianbergmann/lines-of-code", - "support": { - "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", - "source": "https://github.com/sebastianbergmann/lines-of-code/tree/2.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T07:08:02+00:00" - }, - { - "name": "sebastian/object-enumerator", - "version": "5.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "202d0e344a580d7f7d04b3fafce6933e59dae906" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/202d0e344a580d7f7d04b3fafce6933e59dae906", - "reference": "202d0e344a580d7f7d04b3fafce6933e59dae906", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "sebastian/object-reflector": "^3.0", - "sebastian/recursion-context": "^5.0" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "5.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Traverses array structures and object graphs to enumerate all referenced objects", - "homepage": "https://github.com/sebastianbergmann/object-enumerator/", - "support": { - "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", - "source": "https://github.com/sebastianbergmann/object-enumerator/tree/5.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T07:08:32+00:00" - }, - { - "name": "sebastian/object-reflector", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "24ed13d98130f0e7122df55d06c5c4942a577957" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/24ed13d98130f0e7122df55d06c5c4942a577957", - "reference": "24ed13d98130f0e7122df55d06c5c4942a577957", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Allows reflection of object attributes, including inherited and non-public ones", - "homepage": "https://github.com/sebastianbergmann/object-reflector/", - "support": { - "issues": "https://github.com/sebastianbergmann/object-reflector/issues", - "source": "https://github.com/sebastianbergmann/object-reflector/tree/3.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T07:06:18+00:00" - }, - { - "name": "sebastian/recursion-context", - "version": "5.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "05909fb5bc7df4c52992396d0116aed689f93712" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/05909fb5bc7df4c52992396d0116aed689f93712", - "reference": "05909fb5bc7df4c52992396d0116aed689f93712", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "5.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - } - ], - "description": "Provides functionality to recursively process PHP variables", - "homepage": "https://github.com/sebastianbergmann/recursion-context", - "support": { - "issues": "https://github.com/sebastianbergmann/recursion-context/issues", - "source": "https://github.com/sebastianbergmann/recursion-context/tree/5.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T07:05:40+00:00" - }, - { - "name": "sebastian/type", - "version": "4.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/type.git", - "reference": "462699a16464c3944eefc02ebdd77882bd3925bf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/462699a16464c3944eefc02ebdd77882bd3925bf", - "reference": "462699a16464c3944eefc02ebdd77882bd3925bf", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "require-dev": { - "phpunit/phpunit": "^10.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Collection of value objects that represent the types of the PHP type system", - "homepage": "https://github.com/sebastianbergmann/type", - "support": { - "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/4.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-03T07:10:45+00:00" - }, - { - "name": "sebastian/version", - "version": "4.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/version.git", - "reference": "c51fa83a5d8f43f1402e3f32a005e6262244ef17" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c51fa83a5d8f43f1402e3f32a005e6262244ef17", - "reference": "c51fa83a5d8f43f1402e3f32a005e6262244ef17", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library that helps with managing the version number of Git-hosted PHP projects", - "homepage": "https://github.com/sebastianbergmann/version", - "support": { - "issues": "https://github.com/sebastianbergmann/version/issues", - "source": "https://github.com/sebastianbergmann/version/tree/4.0.1" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-02-07T11:34:05+00:00" - }, - { - "name": "spatie/backtrace", - "version": "1.4.0", - "source": { - "type": "git", - "url": "https://github.com/spatie/backtrace.git", - "reference": "ec4dd16476b802dbdc6b4467f84032837e316b8c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/backtrace/zipball/ec4dd16476b802dbdc6b4467f84032837e316b8c", - "reference": "ec4dd16476b802dbdc6b4467f84032837e316b8c", - "shasum": "" - }, - "require": { - "php": "^7.3|^8.0" - }, - "require-dev": { - "ext-json": "*", - "phpunit/phpunit": "^9.3", - "spatie/phpunit-snapshot-assertions": "^4.2", - "symfony/var-dumper": "^5.1" - }, - "type": "library", - "autoload": { - "psr-4": { - "Spatie\\Backtrace\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Freek Van de Herten", - "email": "freek@spatie.be", - "homepage": "https://spatie.be", - "role": "Developer" - } - ], - "description": "A better backtrace", - "homepage": "https://github.com/spatie/backtrace", - "keywords": [ - "Backtrace", - "spatie" - ], - "support": { - "source": "https://github.com/spatie/backtrace/tree/1.4.0" - }, - "funding": [ - { - "url": "https://github.com/sponsors/spatie", - "type": "github" - }, - { - "url": "https://spatie.be/open-source/support-us", - "type": "other" - } - ], - "time": "2023-03-04T08:57:24+00:00" - }, - { - "name": "spatie/flare-client-php", - "version": "1.3.6", - "source": { - "type": "git", - "url": "https://github.com/spatie/flare-client-php.git", - "reference": "530ac81255af79f114344286e4275f8869c671e2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/flare-client-php/zipball/530ac81255af79f114344286e4275f8869c671e2", - "reference": "530ac81255af79f114344286e4275f8869c671e2", - "shasum": "" - }, - "require": { - "illuminate/pipeline": "^8.0|^9.0|^10.0", - "php": "^8.0", - "spatie/backtrace": "^1.2", - "symfony/http-foundation": "^5.0|^6.0", - "symfony/mime": "^5.2|^6.0", - "symfony/process": "^5.2|^6.0", - "symfony/var-dumper": "^5.2|^6.0" - }, - "require-dev": { - "dms/phpunit-arraysubset-asserts": "^0.3.0", - "pestphp/pest": "^1.20", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan-deprecation-rules": "^1.0", - "phpstan/phpstan-phpunit": "^1.0", - "spatie/phpunit-snapshot-assertions": "^4.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.1.x-dev" - } - }, - "autoload": { - "files": [ - "src/helpers.php" - ], - "psr-4": { - "Spatie\\FlareClient\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Send PHP errors to Flare", - "homepage": "https://github.com/spatie/flare-client-php", - "keywords": [ - "exception", - "flare", - "reporting", - "spatie" - ], - "support": { - "issues": "https://github.com/spatie/flare-client-php/issues", - "source": "https://github.com/spatie/flare-client-php/tree/1.3.6" - }, - "funding": [ - { - "url": "https://github.com/spatie", - "type": "github" - } - ], - "time": "2023-04-12T07:57:12+00:00" - }, - { - "name": "spatie/ignition", - "version": "1.5.0", - "source": { - "type": "git", - "url": "https://github.com/spatie/ignition.git", - "reference": "4db9c9626e4d7745efbe0b512157326190b41b65" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/ignition/zipball/4db9c9626e4d7745efbe0b512157326190b41b65", - "reference": "4db9c9626e4d7745efbe0b512157326190b41b65", - "shasum": "" - }, - "require": { - "ext-json": "*", - "ext-mbstring": "*", - "php": "^8.0", - "spatie/backtrace": "^1.4", - "spatie/flare-client-php": "^1.1", - "symfony/console": "^5.4|^6.0", - "symfony/var-dumper": "^5.4|^6.0" - }, - "require-dev": { - "illuminate/cache": "^9.52", - "mockery/mockery": "^1.4", - "pestphp/pest": "^1.20", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan-deprecation-rules": "^1.0", - "phpstan/phpstan-phpunit": "^1.0", - "psr/simple-cache-implementation": "*", - "symfony/cache": "^6.2", - "symfony/process": "^5.4|^6.0", - "vlucas/phpdotenv": "^5.5" - }, - "suggest": { - "openai-php/client": "Require get solutions from OpenAI", - "simple-cache-implementation": "To cache solutions from OpenAI" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.4.x-dev" - } - }, - "autoload": { - "psr-4": { - "Spatie\\Ignition\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Spatie", - "email": "info@spatie.be", - "role": "Developer" - } - ], - "description": "A beautiful error page for PHP applications.", - "homepage": "https://flareapp.io/ignition", - "keywords": [ - "error", - "flare", - "laravel", - "page" - ], - "support": { - "docs": "https://flareapp.io/docs/ignition-for-laravel/introduction", - "forum": "https://twitter.com/flareappio", - "issues": "https://github.com/spatie/ignition/issues", - "source": "https://github.com/spatie/ignition" - }, - "funding": [ - { - "url": "https://github.com/spatie", - "type": "github" - } - ], - "time": "2023-04-12T09:07:50+00:00" - }, - { - "name": "spatie/laravel-ignition", - "version": "2.1.0", - "source": { - "type": "git", - "url": "https://github.com/spatie/laravel-ignition.git", - "reference": "3718dfb91bc5aff340af26507a61f0f9605f81e8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/3718dfb91bc5aff340af26507a61f0f9605f81e8", - "reference": "3718dfb91bc5aff340af26507a61f0f9605f81e8", - "shasum": "" - }, - "require": { - "ext-curl": "*", - "ext-json": "*", - "ext-mbstring": "*", - "illuminate/support": "^10.0", - "php": "^8.1", - "spatie/flare-client-php": "^1.3.5", - "spatie/ignition": "^1.5.0", - "symfony/console": "^6.2.3", - "symfony/var-dumper": "^6.2.3" - }, - "require-dev": { - "livewire/livewire": "^2.11", - "mockery/mockery": "^1.5.1", - "openai-php/client": "^0.3.4", - "orchestra/testbench": "^8.0", - "pestphp/pest": "^1.22.3", - "phpstan/extension-installer": "^1.2", - "phpstan/phpstan-deprecation-rules": "^1.1.1", - "phpstan/phpstan-phpunit": "^1.3.3", - "vlucas/phpdotenv": "^5.5" - }, - "suggest": { - "openai-php/client": "Require get solutions from OpenAI", - "psr/simple-cache-implementation": "Needed to cache solutions from OpenAI" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Spatie\\LaravelIgnition\\IgnitionServiceProvider" - ], - "aliases": { - "Flare": "Spatie\\LaravelIgnition\\Facades\\Flare" - } - } - }, - "autoload": { - "files": [ - "src/helpers.php" - ], - "psr-4": { - "Spatie\\LaravelIgnition\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Spatie", - "email": "info@spatie.be", - "role": "Developer" - } - ], - "description": "A beautiful error page for Laravel applications.", - "homepage": "https://flareapp.io/ignition", - "keywords": [ - "error", - "flare", - "laravel", - "page" - ], - "support": { - "docs": "https://flareapp.io/docs/ignition-for-laravel/introduction", - "forum": "https://twitter.com/flareappio", - "issues": "https://github.com/spatie/laravel-ignition/issues", - "source": "https://github.com/spatie/laravel-ignition" - }, - "funding": [ - { - "url": "https://github.com/spatie", - "type": "github" - } - ], - "time": "2023-04-12T09:26:00+00:00" - }, - { - "name": "symfony/yaml", - "version": "v6.2.7", - "source": { - "type": "git", - "url": "https://github.com/symfony/yaml.git", - "reference": "e8e6a1d59e050525f27a1f530aa9703423cb7f57" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/e8e6a1d59e050525f27a1f530aa9703423cb7f57", - "reference": "e8e6a1d59e050525f27a1f530aa9703423cb7f57", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "symfony/polyfill-ctype": "^1.8" - }, - "conflict": { - "symfony/console": "<5.4" - }, - "require-dev": { - "symfony/console": "^5.4|^6.0" - }, - "suggest": { - "symfony/console": "For validating YAML files using the lint command" - }, - "bin": [ - "Resources/bin/yaml-lint" - ], - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Yaml\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Loads and dumps YAML files", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/yaml/tree/v6.2.7" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-02-16T09:57:23+00:00" - }, - { - "name": "theseer/tokenizer", - "version": "1.2.1", - "source": { - "type": "git", - "url": "https://github.com/theseer/tokenizer.git", - "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e", - "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-tokenizer": "*", - "ext-xmlwriter": "*", - "php": "^7.2 || ^8.0" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - } - ], - "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", - "support": { - "issues": "https://github.com/theseer/tokenizer/issues", - "source": "https://github.com/theseer/tokenizer/tree/1.2.1" - }, - "funding": [ - { - "url": "https://github.com/theseer", - "type": "github" - } - ], - "time": "2021-07-28T10:34:58+00:00" - } - ], - "aliases": [], - "minimum-stability": "dev", - "stability-flags": [], - "prefer-stable": true, - "prefer-lowest": false, - "platform": { - "php": "^8.0.2" - }, - "platform-dev": [], - "plugin-api-version": "2.3.0" -} diff --git a/config/app.php b/config/app.php index 9d34f7a..a5717c3 100644 --- a/config/app.php +++ b/config/app.php @@ -82,7 +82,7 @@ return [ | */ - 'locale' => 'en', + 'locale' => 'id', /* |-------------------------------------------------------------------------- @@ -181,6 +181,7 @@ return [ Illuminate\Translation\TranslationServiceProvider::class, Illuminate\Validation\ValidationServiceProvider::class, Illuminate\View\ViewServiceProvider::class, + /* * Package Service Providers... */ @@ -197,7 +198,6 @@ return [ Yajra\DataTables\DataTablesServiceProvider::class, Jackiedo\LogReader\LogReaderServiceProvider::class, - Spatie\Permission\PermissionServiceProvider::class, ], diff --git a/config/auth.php b/config/auth.php index d8c6cee..dc757ef 100644 --- a/config/auth.php +++ b/config/auth.php @@ -62,7 +62,7 @@ return [ 'providers' => [ 'users' => [ 'driver' => 'eloquent', - 'model' => App\Models\User::class, + 'model' => \Modules\Usermanager\Entities\User::class, ], // 'users' => [ diff --git a/config/breadcrumbs.php b/config/breadcrumbs.php new file mode 100644 index 0000000..9a268fa --- /dev/null +++ b/config/breadcrumbs.php @@ -0,0 +1,75 @@ + 'breadcrumbs::bootstrap5', + + /* + |-------------------------------------------------------------------------- + | Breadcrumbs File(s) + |-------------------------------------------------------------------------- + | + | The file(s) where breadcrumbs are defined. e.g. + | + | - base_path('routes/breadcrumbs.php') + | - glob(base_path('breadcrumbs/*.php')) + | + */ + + 'files' => base_path('routes/breadcrumbs.php'), + + /* + |-------------------------------------------------------------------------- + | Exceptions + |-------------------------------------------------------------------------- + | + | Determine when to throw an exception. + | + */ + + // When route-bound breadcrumbs are used but the current route doesn't have a name (UnnamedRouteException) + 'unnamed-route-exception' => true, + + // When route-bound breadcrumbs are used and the matching breadcrumb doesn't exist (InvalidBreadcrumbException) + 'missing-route-bound-breadcrumb-exception' => true, + + // When a named breadcrumb is used but doesn't exist (InvalidBreadcrumbException) + 'invalid-named-breadcrumb-exception' => true, + + /* + |-------------------------------------------------------------------------- + | Classes + |-------------------------------------------------------------------------- + | + | Subclass the default classes for more advanced customisations. + | + */ + + // Manager + 'manager-class' => Diglactic\Breadcrumbs\Manager::class, + + // Generator + 'generator-class' => Diglactic\Breadcrumbs\Generator::class, + +]; diff --git a/config/livewire.php b/config/livewire.php new file mode 100644 index 0000000..6d0731d --- /dev/null +++ b/config/livewire.php @@ -0,0 +1,158 @@ + 'App\\Http\\Livewire', + + /* + |-------------------------------------------------------------------------- + | View Path + |-------------------------------------------------------------------------- + | + | This value sets the path for Livewire component views. This affects + | file manipulation helper commands like `artisan make:livewire`. + | + */ + + 'view_path' => resource_path('views/livewire'), + + /* + |-------------------------------------------------------------------------- + | Layout + |-------------------------------------------------------------------------- + | The default layout view that will be used when rendering a component via + | Route::get('/some-endpoint', SomeComponent::class);. In this case the + | the view returned by SomeComponent will be wrapped in "layouts.app" + | + */ + + 'layout' => 'layouts.app', + + /* + |-------------------------------------------------------------------------- + | Livewire Assets URL + |-------------------------------------------------------------------------- + | + | This value sets the path to Livewire JavaScript assets, for cases where + | your app's domain root is not the correct path. By default, Livewire + | will load its JavaScript assets from the app's "relative root". + | + | Examples: "/assets", "myurl.com/app". + | + */ + + 'asset_url' => env('LIVEWIRE_ASSET_URL', null), + + /* + |-------------------------------------------------------------------------- + | Livewire App URL + |-------------------------------------------------------------------------- + | + | This value should be used if livewire assets are served from CDN. + | Livewire will communicate with an app through this url. + | + | Examples: "https://my-app.com", "myurl.com/app". + | + */ + + 'app_url' => null, + + /* + |-------------------------------------------------------------------------- + | Livewire Endpoint Middleware Group + |-------------------------------------------------------------------------- + | + | This value sets the middleware group that will be applied to the main + | Livewire "message" endpoint (the endpoint that gets hit everytime + | a Livewire component updates). It is set to "web" by default. + | + */ + + 'middleware_group' => 'web', + + /* + |-------------------------------------------------------------------------- + | Livewire Temporary File Uploads Endpoint Configuration + |-------------------------------------------------------------------------- + | + | Livewire handles file uploads by storing uploads in a temporary directory + | before the file is validated and stored permanently. All file uploads + | are directed to a global endpoint for temporary storage. The config + | items below are used for customizing the way the endpoint works. + | + */ + + 'temporary_file_upload' => [ + 'disk' => null, // Example: 'local', 's3' Default: 'default' + 'rules' => null, // Example: ['file', 'mimes:png,jpg'] Default: ['required', 'file', 'max:12288'] (12MB) + 'directory' => null, // Example: 'tmp' Default 'livewire-tmp' + 'middleware' => null, // Example: 'throttle:5,1' Default: 'throttle:60,1' + 'preview_mimes' => [ // Supported file types for temporary pre-signed file URLs. + 'png', 'gif', 'bmp', 'svg', 'wav', 'mp4', + 'mov', 'avi', 'wmv', 'mp3', 'm4a', + 'jpg', 'jpeg', 'mpga', 'webp', 'wma', + ], + 'max_upload_time' => 5, // Max duration (in minutes) before an upload gets invalidated. + ], + + /* + |-------------------------------------------------------------------------- + | Manifest File Path + |-------------------------------------------------------------------------- + | + | This value sets the path to the Livewire manifest file. + | The default should work for most cases (which is + | "/bootstrap/cache/livewire-components.php"), but for specific + | cases like when hosting on Laravel Vapor, it could be set to a different value. + | + | Example: for Laravel Vapor, it would be "/tmp/storage/bootstrap/cache/livewire-components.php". + | + */ + + 'manifest_path' => null, + + /* + |-------------------------------------------------------------------------- + | Back Button Cache + |-------------------------------------------------------------------------- + | + | This value determines whether the back button cache will be used on pages + | that contain Livewire. By disabling back button cache, it ensures that + | the back button shows the correct state of components, instead of + | potentially stale, cached data. + | + | Setting it to "false" (default) will disable back button cache. + | + */ + + 'back_button_cache' => false, + + /* + |-------------------------------------------------------------------------- + | Render On Redirect + |-------------------------------------------------------------------------- + | + | This value determines whether Livewire will render before it's redirected + | or not. Setting it to "false" (default) will mean the render method is + | skipped when redirecting. And "true" will mean the render method is + | run before redirecting. Browsers bfcache can store a potentially + | stale view if render is skipped on redirect. + | + */ + + 'render_on_redirect' => false, + +]; diff --git a/config/log-reader.php b/config/log-reader.php index b6694a6..30d9e38 100644 --- a/config/log-reader.php +++ b/config/log-reader.php @@ -25,7 +25,7 @@ return [ | */ - 'filename' => null, + 'filename' => 'laravel.log', /* |-------------------------------------------------------------------------- diff --git a/config/modules-livewire.php b/config/modules-livewire.php new file mode 100644 index 0000000..8a07614 --- /dev/null +++ b/config/modules-livewire.php @@ -0,0 +1,40 @@ + 'Livewire', + + /* + |-------------------------------------------------------------------------- + | View Path + |-------------------------------------------------------------------------- + | + */ + + 'view' => 'Resources/views/livewire', + + /* + |-------------------------------------------------------------------------- + | Custom modules setup + |-------------------------------------------------------------------------- + | + */ + + // 'custom_modules' => [ + // 'Chat' => [ + // 'path' => base_path('libraries/Chat'), + // 'module_namespace' => 'Libraries\\Chat', + // // 'namespace' => 'Livewire', + // // 'view' => 'Resources/views/livewire', + // // 'name_lower' => 'chat', + // ], + // ], + +]; diff --git a/config/modules.php b/config/modules.php new file mode 100644 index 0000000..cf9661d --- /dev/null +++ b/config/modules.php @@ -0,0 +1,277 @@ + 'Modules', + + /* + |-------------------------------------------------------------------------- + | Module Stubs + |-------------------------------------------------------------------------- + | + | Default module stubs. + | + */ + + 'stubs' => [ + 'enabled' => false, + 'path' => base_path('vendor/nwidart/laravel-modules/src/Commands/stubs'), + 'files' => [ + 'routes/web' => 'Routes/web.php', + 'routes/api' => 'Routes/api.php', + 'views/index' => 'Resources/views/index.blade.php', + 'views/master' => 'Resources/views/layouts/master.blade.php', + 'scaffold/config' => 'Config/config.php', + 'composer' => 'composer.json', + 'assets/js/app' => 'Resources/assets/js/app.js', + 'assets/sass/app' => 'Resources/assets/sass/app.scss', + 'vite' => 'vite.config.js', + 'package' => 'package.json', + ], + 'replacements' => [ + 'routes/web' => ['LOWER_NAME', 'STUDLY_NAME'], + 'routes/api' => ['LOWER_NAME'], + 'vite' => ['LOWER_NAME'], + 'json' => ['LOWER_NAME', 'STUDLY_NAME', 'MODULE_NAMESPACE', 'PROVIDER_NAMESPACE'], + 'views/index' => ['LOWER_NAME'], + 'views/master' => ['LOWER_NAME', 'STUDLY_NAME'], + 'scaffold/config' => ['STUDLY_NAME'], + 'composer' => [ + 'LOWER_NAME', + 'STUDLY_NAME', + 'VENDOR', + 'AUTHOR_NAME', + 'AUTHOR_EMAIL', + 'MODULE_NAMESPACE', + 'PROVIDER_NAMESPACE', + ], + ], + 'gitkeep' => true, + ], + 'paths' => [ + /* + |-------------------------------------------------------------------------- + | Modules path + |-------------------------------------------------------------------------- + | + | This path used for save the generated module. This path also will be added + | automatically to list of scanned folders. + | + */ + + 'modules' => base_path('Modules'), + /* + |-------------------------------------------------------------------------- + | Modules assets path + |-------------------------------------------------------------------------- + | + | Here you may update the modules assets path. + | + */ + + 'assets' => public_path('modules'), + /* + |-------------------------------------------------------------------------- + | The migrations path + |-------------------------------------------------------------------------- + | + | Where you run 'module:publish-migration' command, where do you publish the + | the migration files? + | + */ + + 'migration' => base_path('database/migrations'), + /* + |-------------------------------------------------------------------------- + | Generator path + |-------------------------------------------------------------------------- + | Customise the paths where the folders will be generated. + | Set the generate key to false to not generate that folder + */ + 'generator' => [ + 'config' => ['path' => 'Config', 'generate' => true], + 'command' => ['path' => 'Console', 'generate' => true], + 'migration' => ['path' => 'Database/Migrations', 'generate' => true], + 'seeder' => ['path' => 'Database/Seeders', 'generate' => true], + 'factory' => ['path' => 'Database/factories', 'generate' => true], + 'model' => ['path' => 'Entities', 'generate' => true], + 'routes' => ['path' => 'Routes', 'generate' => true], + 'controller' => ['path' => 'Http/Controllers', 'generate' => true], + 'filter' => ['path' => 'Http/Middleware', 'generate' => true], + 'request' => ['path' => 'Http/Requests', 'generate' => true], + 'provider' => ['path' => 'Providers', 'generate' => true], + 'assets' => ['path' => 'Resources/assets', 'generate' => true], + 'lang' => ['path' => 'Resources/lang', 'generate' => true], + 'views' => ['path' => 'Resources/views', 'generate' => true], + 'test' => ['path' => 'Tests/Unit', 'generate' => true], + 'test-feature' => ['path' => 'Tests/Feature', 'generate' => true], + 'repository' => ['path' => 'Repositories', 'generate' => false], + 'event' => ['path' => 'Events', 'generate' => false], + 'listener' => ['path' => 'Listeners', 'generate' => false], + 'policies' => ['path' => 'Policies', 'generate' => false], + 'rules' => ['path' => 'Rules', 'generate' => false], + 'jobs' => ['path' => 'Jobs', 'generate' => false], + 'emails' => ['path' => 'Emails', 'generate' => false], + 'notifications' => ['path' => 'Notifications', 'generate' => false], + 'resource' => ['path' => 'Transformers', 'generate' => false], + 'component-view' => ['path' => 'Resources/views/components', 'generate' => false], + 'component-class' => ['path' => 'View/Components', 'generate' => false], + ], + ], + + /* + |-------------------------------------------------------------------------- + | Package commands + |-------------------------------------------------------------------------- + | + | Here you can define which commands will be visible and used in your + | application. If for example you don't use some of the commands provided + | you can simply comment them out. + | + */ + 'commands' => [ + Commands\CommandMakeCommand::class, + Commands\ComponentClassMakeCommand::class, + Commands\ComponentViewMakeCommand::class, + Commands\ControllerMakeCommand::class, + Commands\DisableCommand::class, + Commands\DumpCommand::class, + Commands\EnableCommand::class, + Commands\EventMakeCommand::class, + Commands\JobMakeCommand::class, + Commands\ListenerMakeCommand::class, + Commands\MailMakeCommand::class, + Commands\MiddlewareMakeCommand::class, + Commands\NotificationMakeCommand::class, + Commands\ProviderMakeCommand::class, + Commands\RouteProviderMakeCommand::class, + Commands\InstallCommand::class, + Commands\ListCommand::class, + Commands\ModuleDeleteCommand::class, + Commands\ModuleMakeCommand::class, + Commands\FactoryMakeCommand::class, + Commands\PolicyMakeCommand::class, + Commands\RequestMakeCommand::class, + Commands\RuleMakeCommand::class, + Commands\MigrateCommand::class, + Commands\MigrateFreshCommand::class, + Commands\MigrateRefreshCommand::class, + Commands\MigrateResetCommand::class, + Commands\MigrateRollbackCommand::class, + Commands\MigrateStatusCommand::class, + Commands\MigrationMakeCommand::class, + Commands\ModelMakeCommand::class, + Commands\PublishCommand::class, + Commands\PublishConfigurationCommand::class, + Commands\PublishMigrationCommand::class, + Commands\PublishTranslationCommand::class, + Commands\SeedCommand::class, + Commands\SeedMakeCommand::class, + Commands\SetupCommand::class, + Commands\UnUseCommand::class, + Commands\UpdateCommand::class, + Commands\UseCommand::class, + Commands\ResourceMakeCommand::class, + Commands\TestMakeCommand::class, + Commands\LaravelModulesV6Migrator::class, + ], + + /* + |-------------------------------------------------------------------------- + | Scan Path + |-------------------------------------------------------------------------- + | + | Here you define which folder will be scanned. By default will scan vendor + | directory. This is useful if you host the package in packagist website. + | + */ + + 'scan' => [ + 'enabled' => false, + 'paths' => [ + base_path('vendor/*/*'), + ], + ], + /* + |-------------------------------------------------------------------------- + | Composer File Template + |-------------------------------------------------------------------------- + | + | Here is the config for composer.json file, generated by this package + | + */ + + 'composer' => [ + 'vendor' => 'putrakuningan', + 'author' => [ + 'name' => 'Daeng Deni Mardaeni', + 'email' => 'ddeni05@gmail.com', + ], + 'composer-output' => false, + ], + + /* + |-------------------------------------------------------------------------- + | Caching + |-------------------------------------------------------------------------- + | + | Here is the config for setting up caching feature. + | + */ + 'cache' => [ + 'enabled' => false, + 'driver' => 'file', + 'key' => 'laravel-modules', + 'lifetime' => 60, + ], + /* + |-------------------------------------------------------------------------- + | Choose what laravel-modules will register as custom namespaces. + | Setting one to false will require you to register that part + | in your own Service Provider class. + |-------------------------------------------------------------------------- + */ + 'register' => [ + 'translations' => true, + /** + * load files on boot or register method + * + * Note: boot not compatible with asgardcms + * + * @example boot|register + */ + 'files' => 'register', + ], + + /* + |-------------------------------------------------------------------------- + | Activators + |-------------------------------------------------------------------------- + | + | You can define new types of activators here, file, database etc. The only + | required parameter is 'class'. + | The file activator will store the activation status in storage/installed_modules + */ + 'activators' => [ + 'file' => [ + 'class' => FileActivator::class, + 'statuses-file' => base_path('modules_statuses.json'), + 'cache-key' => 'activator.installed', + 'cache-lifetime' => 604800, + ], + ], + + 'activator' => 'file', +]; diff --git a/config/octane.php b/config/octane.php new file mode 100644 index 0000000..eb6fc91 --- /dev/null +++ b/config/octane.php @@ -0,0 +1,228 @@ + env('OCTANE_SERVER', 'roadrunner'), + + /* + |-------------------------------------------------------------------------- + | Force HTTPS + |-------------------------------------------------------------------------- + | + | When this configuration value is set to "true", Octane will inform the + | framework that all absolute links must be generated using the HTTPS + | protocol. Otherwise your links may be generated using plain HTTP. + | + */ + + 'https' => env('OCTANE_HTTPS', false), + + /* + |-------------------------------------------------------------------------- + | Octane Listeners + |-------------------------------------------------------------------------- + | + | All of the event listeners for Octane's events are defined below. These + | listeners are responsible for resetting your application's state for + | the next request. You may even add your own listeners to the list. + | + */ + + 'listeners' => [ + WorkerStarting::class => [ + EnsureUploadedFilesAreValid::class, + EnsureUploadedFilesCanBeMoved::class, + ], + + RequestReceived::class => [ + ...Octane::prepareApplicationForNextOperation(), + ...Octane::prepareApplicationForNextRequest(), + // + ], + + RequestHandled::class => [ + // + ], + + RequestTerminated::class => [ + // FlushUploadedFiles::class, + ], + + TaskReceived::class => [ + ...Octane::prepareApplicationForNextOperation(), + // + ], + + TaskTerminated::class => [ + // + ], + + TickReceived::class => [ + ...Octane::prepareApplicationForNextOperation(), + // + ], + + TickTerminated::class => [ + // + ], + + OperationTerminated::class => [ + FlushTemporaryContainerInstances::class, + // DisconnectFromDatabases::class, + // CollectGarbage::class, + ], + + WorkerErrorOccurred::class => [ + ReportException::class, + StopWorkerIfNecessary::class, + ], + + WorkerStopping::class => [ + // + ], + ], + + /* + |-------------------------------------------------------------------------- + | Warm / Flush Bindings + |-------------------------------------------------------------------------- + | + | The bindings listed below will either be pre-warmed when a worker boots + | or they will be flushed before every new request. Flushing a binding + | will force the container to resolve that binding again when asked. + | + */ + + 'warm' => [ + ...Octane::defaultServicesToWarm(), + ], + + 'flush' => [ + // + ], + + /* + |-------------------------------------------------------------------------- + | Octane Cache Table + |-------------------------------------------------------------------------- + | + | While using Swoole, you may leverage the Octane cache, which is powered + | by a Swoole table. You may set the maximum number of rows as well as + | the number of bytes per row using the configuration options below. + | + */ + + 'cache' => [ + 'rows' => 1000, + 'bytes' => 10000, + ], + + /* + |-------------------------------------------------------------------------- + | Octane Swoole Tables + |-------------------------------------------------------------------------- + | + | While using Swoole, you may define additional tables as required by the + | application. These tables can be used to store data that needs to be + | quickly accessed by other workers on the particular Swoole server. + | + */ + + 'tables' => [ + 'example:1000' => [ + 'name' => 'string:1000', + 'votes' => 'int', + ], + ], + + /* + |-------------------------------------------------------------------------- + | File Watching + |-------------------------------------------------------------------------- + | + | The following list of files and directories will be watched when using + | the --watch option offered by Octane. If any of the directories and + | files are changed, Octane will automatically reload your workers. + | + */ + + 'watch' => [ + 'app', + 'bootstrap', + 'config', + 'database', + 'public/**/*.php', + 'resources/**/*.php', + 'routes', + 'composer.lock', + '.env', + ], + + /* + |-------------------------------------------------------------------------- + | Garbage Collection Threshold + |-------------------------------------------------------------------------- + | + | When executing long-lived PHP scripts such as Octane, memory can build + | up before being cleared by PHP. You can force Octane to run garbage + | collection if your application consumes this amount of megabytes. + | + */ + + 'garbage' => 50, + + /* + |-------------------------------------------------------------------------- + | Maximum Execution Time + |-------------------------------------------------------------------------- + | + | The following setting configures the maximum execution time for requests + | being handled by Octane. You may set this value to 0 to indicate that + | there isn't a specific time limit on Octane request execution time. + | + */ + + 'max_execution_time' => 30, + + 'swoole' => [ + 'options' => [ + 'log_file' => storage_path('logs/swoole_http.log'), + 'package_max_length' => 10 * 1024 * 1024, + ], + ], + +]; diff --git a/config/services.php b/config/services.php index 0ace530..bc1a4dc 100644 --- a/config/services.php +++ b/config/services.php @@ -31,4 +31,15 @@ return [ 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), ], + 'google' => [ + 'client_id' => env('GOOGLE_CLIENT_ID'), + 'client_secret' => env('GOOGLE_CLIENT_SECRET'), + 'redirect' => env('GOOGLE_CALLBACK_URL'), + ], + + 'facebook' => [ + 'client_id' => env('FACEBOOK_CLIENT_ID'), + 'client_secret' => env('FACEBOOK_CLIENT_SECRET'), + 'redirect' => '/auth/redirect/facebook', + ], ]; diff --git a/config/settings.php b/config/settings.php index c5d8fd8..bb024c8 100644 --- a/config/settings.php +++ b/config/settings.php @@ -4,8 +4,8 @@ return [ 'KT_THEME_BOOTSTRAP' => [ 'default' => \App\Core\Bootstrap\BootstrapDefault::class, - 'auth' => \App\Core\Bootstrap\BootstrapAuth::class, - 'system' => \App\Core\Bootstrap\BootstrapSystem::class, + 'auth' => \App\Core\Bootstrap\BootstrapAuth::class, + 'system' => \App\Core\Bootstrap\BootstrapSystem::class, ], 'KT_THEME' => 'metronic', @@ -18,7 +18,7 @@ return [ # Theme Mode # Value: light | dark | system - 'KT_THEME_MODE_DEFAULT' => 'light', + 'KT_THEME_MODE_DEFAULT' => 'light', 'KT_THEME_MODE_SWITCH_ENABLED' => true, @@ -38,15 +38,15 @@ return [ 'KT_THEME_ASSETS' => [ 'favicon' => 'assets/media/logos/favicon.ico', - 'fonts' => [ + 'fonts' => [ 'https://fonts.googleapis.com/css?family=Inter:300,400,500,600,700', ], - 'global' => [ + 'global' => [ 'css' => [ 'assets/plugins/global/plugins.bundle.css', 'assets/css/style.bundle.css', ], - 'js' => [ + 'js' => [ 'assets/plugins/global/plugins.bundle.js', 'assets/js/scripts.bundle.js', 'assets/js/widgets.bundle.js', @@ -58,139 +58,139 @@ return [ # Theme Vendors 'KT_THEME_VENDORS' => [ - 'datatables' => [ + 'datatables' => [ 'css' => [ - 'assets/plugins/custom/datatables/datatables.bundle.css', + 'assets/resources/mix/vendors/datatables/datatables.bundle.css', ], - 'js' => [ - 'assets/plugins/custom/datatables/datatables.bundle.js', - ], - ], - 'formrepeater' => [ 'js' => [ - 'assets/plugins/custom/formrepeater/formrepeater.bundle.js', + 'assets/resources/mix/vendors/datatables/datatables.bundle.js', ], ], - 'fullcalendar' => [ + 'formrepeater' => [ + 'js' => [ + 'assets/resources/mix/vendors/formrepeater/formrepeater.bundle.js', + ], + ], + 'fullcalendar' => [ 'css' => [ - 'assets/plugins/custom/fullcalendar/fullcalendar.bundle.css', + 'assets/resources/mix/vendors/fullcalendar/fullcalendar.bundle.css', ], - 'js' => [ - 'assets/plugins/custom/fullcalendar/fullcalendar.bundle.js', - ], - ], - 'flotcharts' => [ 'js' => [ - 'assets/plugins/custom/flotcharts/flotcharts.bundle.js', + 'assets/resources/mix/vendors/fullcalendar/fullcalendar.bundle.js', ], ], - 'google-jsapi' => [ + 'flotcharts' => [ + 'js' => [ + 'assets/resources/mix/vendors/flotcharts/flotcharts.bundle.js', + ], + ], + 'google-jsapi' => [ 'js' => [ '//www.google.com/jsapi', ], ], - 'tinymce' => [ + 'tinymce' => [ 'js' => [ - 'assets/plugins/custom/tinymce/tinymce.bundle.js', + 'assets/resources/mix/vendors/tinymce/tinymce.bundle.js', ], ], - 'ckeditor-classic' => [ + 'ckeditor-classic' => [ 'js' => [ - 'assets/plugins/custom/ckeditor/ckeditor-classic.bundle.js', + 'assets/resources/mix/vendors/ckeditor/ckeditor-classic.bundle.js', ], ], - 'ckeditor-inline' => [ + 'ckeditor-inline' => [ 'js' => [ - 'assets/plugins/custom/ckeditor/ckeditor-inline.bundle.js', + 'assets/resources/mix/vendors/ckeditor/ckeditor-inline.bundle.js', ], ], - 'ckeditor-balloon' => [ + 'ckeditor-balloon' => [ 'js' => [ - 'assets/plugins/custom/ckeditor/ckeditor-balloon.bundle.js', + 'assets/resources/mix/vendors/ckeditor/ckeditor-balloon.bundle.js', ], ], 'ckeditor-balloon-block' => [ 'js' => [ - 'assets/plugins/custom/ckeditor/ckeditor-balloon-block.bundle.js', + 'assets/resources/mix/vendors/ckeditor/ckeditor-balloon-block.bundle.js', ], ], - 'ckeditor-document' => [ + 'ckeditor-document' => [ 'js' => [ - 'assets/plugins/custom/ckeditor/ckeditor-document.bundle.js', + 'assets/resources/mix/vendors/ckeditor/ckeditor-document.bundle.js', ], ], - 'draggable' => [ + 'draggable' => [ 'js' => [ - 'assets/plugins/custom/draggable/draggable.bundle.js', + 'assets/resources/mix/vendors/draggable/draggable.bundle.js', ], ], - 'fslightbox' => [ + 'fslightbox' => [ 'js' => [ - 'assets/plugins/custom/fslightbox/fslightbox.bundle.js', + 'assets/resources/mix/vendors/fslightbox/fslightbox.bundle.js', ], ], - 'jkanban' => [ + 'jkanban' => [ 'css' => [ - 'assets/plugins/custom/jkanban/jkanban.bundle.css', + 'assets/resources/mix/vendors/jkanban/jkanban.bundle.css', ], - 'js' => [ - 'assets/plugins/custom/jkanban/jkanban.bundle.js', - ], - ], - 'typedjs' => [ 'js' => [ - 'assets/plugins/custom/typedjs/typedjs.bundle.js', + 'assets/resources/mix/vendors/jkanban/jkanban.bundle.js', ], ], - 'cookiealert' => [ + 'typedjs' => [ + 'js' => [ + 'assets/resources/mix/vendors/typedjs/typedjs.bundle.js', + ], + ], + 'cookiealert' => [ 'css' => [ - 'assets/plugins/custom/cookiealert/cookiealert.bundle.css', + 'assets/resources/mix/vendors/cookiealert/cookiealert.bundle.css', ], - 'js' => [ - 'assets/plugins/custom/cookiealert/cookiealert.bundle.js', + 'js' => [ + 'assets/resources/mix/vendors/cookiealert/cookiealert.bundle.js', ], ], - 'cropper' => [ + 'cropper' => [ 'css' => [ - 'assets/plugins/custom/cropper/cropper.bundle.css', + 'assets/resources/mix/vendors/cropper/cropper.bundle.css', ], - 'js' => [ - 'assets/plugins/custom/cropper/cropper.bundle.js', + 'js' => [ + 'assets/resources/mix/vendors/cropper/cropper.bundle.js', ], ], - 'vis-timeline' => [ + 'vis-timeline' => [ 'css' => [ - 'assets/plugins/custom/vis-timeline/vis-timeline.bundle.css', + 'assets/resources/mix/vendors/vis-timeline/vis-timeline.bundle.css', ], - 'js' => [ - 'assets/plugins/custom/vis-timeline/vis-timeline.bundle.js', + 'js' => [ + 'assets/resources/mix/vendors/vis-timeline/vis-timeline.bundle.js', ], ], - 'jstree' => [ + 'jstree' => [ 'css' => [ 'assets/plugins/custom/jstree/jstree.bundle.css', ], - 'js' => [ + 'js' => [ 'assets/plugins/custom/jstree/jstree.bundle.js', ], ], - 'prismjs' => [ + 'prismjs' => [ 'css' => [ - 'assets/plugins/custom/prismjs/prismjs.bundle.css', + 'assets/resources/mix/vendors/prismjs/prismjs.bundle.css', ], - 'js' => [ - 'assets/plugins/custom/prismjs/prismjs.bundle.js', + 'js' => [ + 'assets/resources/mix/vendors/prismjs/prismjs.bundle.js', ], ], - 'leaflet' => [ + 'leaflet' => [ 'css' => [ - 'assets/plugins/custom/leaflet/leaflet.bundle.css', + 'assets/resources/mix/vendors/leaflet/leaflet.bundle.css', ], - 'js' => [ - 'assets/plugins/custom/leaflet/leaflet.bundle.js', + 'js' => [ + 'assets/resources/mix/vendors/leaflet/leaflet.bundle.js', ], ], - 'amcharts' => [ + 'amcharts' => [ 'js' => [ 'https://cdn.amcharts.com/lib/5/index.js', 'https://cdn.amcharts.com/lib/5/xy.js', @@ -199,7 +199,7 @@ return [ 'https://cdn.amcharts.com/lib/5/themes/Animated.js', ], ], - 'amcharts-maps' => [ + 'amcharts-maps' => [ 'js' => [ 'https://cdn.amcharts.com/lib/5/index.js', 'https://cdn.amcharts.com/lib/5/map.js', @@ -211,22 +211,22 @@ return [ 'https://cdn.amcharts.com/lib/5/themes/Animated.js', ], ], - 'amcharts-stock' => [ + 'amcharts-stock' => [ 'js' => [ 'https://cdn.amcharts.com/lib/5/index.js', 'https://cdn.amcharts.com/lib/5/xy.js', 'https://cdn.amcharts.com/lib/5/themes/Animated.js', ], ], - 'bootstrap-select' => [ + 'bootstrap-select' => [ 'css' => [ - 'assets/plugins/custom/bootstrap-select/bootstrap-select.bundle.css', + 'assets/resources/mix/vendors/bootstrap-select/bootstrap-select.bundle.css', ], - 'js' => [ - 'assets/plugins/custom/bootstrap-select/bootstrap-select.bundle.js', + 'js' => [ + 'assets/resources/mix/vendors/bootstrap-select/bootstrap-select.bundle.js', ], ], - 'chained-select' => [ + 'chained-select' => [ 'js' => [ 'assets/plugins/custom/jquery-chained/jquery.chained.js', 'assets/plugins/custom/jquery-chained/jquery.chained.remote.js', diff --git a/database/factories/AddressFactory.php b/database/factories/AddressFactory.php new file mode 100644 index 0000000..cf06136 --- /dev/null +++ b/database/factories/AddressFactory.php @@ -0,0 +1,33 @@ + + */ +class AddressFactory extends Factory +{ + /** + * Define the model's default state. + * + * @return array + */ + public function definition(): array + { + $user = User::inRandomOrder()->first(); // Retrieve a random user + + return [ + 'user_id' => $user->id, + 'address_line_1' => $this->faker->address(), + 'address_line_2' => null, + 'city' => $this->faker->city(), + 'postal_code' => $this->faker->postcode(), + 'state' => $this->faker->state(), + 'country' => $this->faker->country(), + 'type' => 1, + ]; + } +} diff --git a/database/migrations/2014_10_12_000000_create_users_table.php b/database/migrations/2014_10_12_000000_create_users_table.php index ef02d09..bea3abc 100644 --- a/database/migrations/2014_10_12_000000_create_users_table.php +++ b/database/migrations/2014_10_12_000000_create_users_table.php @@ -15,19 +15,13 @@ return new class extends Migration { Schema::create('users', function (Blueprint $table) { $table->id(); - $table->foreignIdFor('App\Models\Directorat', 'directorat_id')->nullable(); - $table->foreignIdFor('App\Models\SubDirectorat', 'sub_directorat_id')->nullable(); $table->string('name'); $table->string('email')->unique(); $table->timestamp('email_verified_at')->nullable(); $table->string('password'); + $table->string('avatar')->nullable(); $table->rememberToken(); $table->timestamps(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); }); } diff --git a/database/migrations/2014_10_12_100000_create_password_resets_table.php b/database/migrations/2014_10_12_100000_create_password_resets_table.php index 3d3536e..fcacb80 100644 --- a/database/migrations/2014_10_12_100000_create_password_resets_table.php +++ b/database/migrations/2014_10_12_100000_create_password_resets_table.php @@ -17,11 +17,6 @@ return new class extends Migration $table->string('email')->index(); $table->string('token'); $table->timestamp('created_at')->nullable(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); }); } diff --git a/database/migrations/2019_08_19_000000_create_failed_jobs_table.php b/database/migrations/2019_08_19_000000_create_failed_jobs_table.php index 579b7f6..1719198 100644 --- a/database/migrations/2019_08_19_000000_create_failed_jobs_table.php +++ b/database/migrations/2019_08_19_000000_create_failed_jobs_table.php @@ -21,11 +21,6 @@ return new class extends Migration $table->longText('payload'); $table->longText('exception'); $table->timestamp('failed_at')->useCurrent(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); }); } diff --git a/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php b/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php index b1259f9..6c81fd2 100644 --- a/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php +++ b/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php @@ -22,11 +22,6 @@ return new class extends Migration $table->timestamp('last_used_at')->nullable(); $table->timestamp('expires_at')->nullable(); $table->timestamps(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); }); } diff --git a/database/migrations/2023_04_10_024720_create_directorats_table.php b/database/migrations/2023_04_10_024720_create_directorats_table.php deleted file mode 100644 index b13f980..0000000 --- a/database/migrations/2023_04_10_024720_create_directorats_table.php +++ /dev/null @@ -1,34 +0,0 @@ -id(); - $table->string('kode',2); - $table->string('name',50); - $table->timestamps(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('directorats'); - } -}; diff --git a/database/migrations/2023_04_10_024731_create_sub_directorats_table.php b/database/migrations/2023_04_10_024731_create_sub_directorats_table.php deleted file mode 100644 index 85b84a0..0000000 --- a/database/migrations/2023_04_10_024731_create_sub_directorats_table.php +++ /dev/null @@ -1,35 +0,0 @@ -id(); - $table->foreignId('directorat_id')->constrained('directorats')->onDelete('cascade'); - $table->string('kode',2); - $table->string('name',50); - $table->timestamps(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('sub_directorats'); - } -}; diff --git a/database/migrations/2023_04_10_024809_create_jobs_table.php b/database/migrations/2023_04_10_024809_create_jobs_table.php deleted file mode 100644 index 2ab00aa..0000000 --- a/database/migrations/2023_04_10_024809_create_jobs_table.php +++ /dev/null @@ -1,36 +0,0 @@ -id(); - $table->foreignId('directorat_id')->constrained('directorats')->onDelete('cascade'); - $table->foreignId('sub_directorat_id')->constrained('sub_directorats')->onDelete('cascade'); - $table->string('kode',2); - $table->string('name',50); - $table->timestamps(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('jobs'); - } -}; diff --git a/database/migrations/2023_04_10_024820_create_sub_jobs_table.php b/database/migrations/2023_04_10_024820_create_sub_jobs_table.php deleted file mode 100644 index 5fef9ca..0000000 --- a/database/migrations/2023_04_10_024820_create_sub_jobs_table.php +++ /dev/null @@ -1,37 +0,0 @@ -id(); - $table->foreignId('directorat_id')->constrained('directorats')->onDelete('cascade'); - $table->foreignId('sub_directorat_id')->constrained('sub_directorats')->onDelete('cascade'); - $table->foreignId('job_id')->constrained('jobs')->onDelete('cascade'); - $table->string('kode',2); - $table->string('name',50); - $table->timestamps(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('sub_jobs'); - } -}; diff --git a/database/migrations/2023_04_11_043320_create_activity_log_table.php b/database/migrations/2023_04_11_043320_create_activity_log_table.php deleted file mode 100644 index cab9761..0000000 --- a/database/migrations/2023_04_11_043320_create_activity_log_table.php +++ /dev/null @@ -1,31 +0,0 @@ -create(config('activitylog.table_name'), function (Blueprint $table) { - $table->bigIncrements('id'); - $table->string('log_name')->nullable(); - $table->text('description'); - $table->nullableMorphs('subject', 'subject'); - $table->nullableMorphs('causer', 'causer'); - $table->json('properties')->nullable(); - $table->timestamps(); - $table->index('log_name'); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); - }); - } - - public function down() - { - Schema::connection(config('activitylog.database_connection'))->dropIfExists(config('activitylog.table_name')); - } -} diff --git a/database/migrations/2023_04_11_043321_add_event_column_to_activity_log_table.php b/database/migrations/2023_04_11_043321_add_event_column_to_activity_log_table.php deleted file mode 100644 index 7b797fd..0000000 --- a/database/migrations/2023_04_11_043321_add_event_column_to_activity_log_table.php +++ /dev/null @@ -1,22 +0,0 @@ -table(config('activitylog.table_name'), function (Blueprint $table) { - $table->string('event')->nullable()->after('subject_type'); - }); - } - - public function down() - { - Schema::connection(config('activitylog.database_connection'))->table(config('activitylog.table_name'), function (Blueprint $table) { - $table->dropColumn('event'); - }); - } -} diff --git a/database/migrations/2023_04_11_043322_add_batch_uuid_column_to_activity_log_table.php b/database/migrations/2023_04_11_043322_add_batch_uuid_column_to_activity_log_table.php deleted file mode 100644 index 8f7db66..0000000 --- a/database/migrations/2023_04_11_043322_add_batch_uuid_column_to_activity_log_table.php +++ /dev/null @@ -1,22 +0,0 @@ -table(config('activitylog.table_name'), function (Blueprint $table) { - $table->uuid('batch_uuid')->nullable()->after('properties'); - }); - } - - public function down() - { - Schema::connection(config('activitylog.database_connection'))->table(config('activitylog.table_name'), function (Blueprint $table) { - $table->dropColumn('batch_uuid'); - }); - } -} diff --git a/database/migrations/2023_04_14_034926_create_sub_sub_jobs_table.php b/database/migrations/2023_04_14_034926_create_sub_sub_jobs_table.php deleted file mode 100644 index 6a0ff14..0000000 --- a/database/migrations/2023_04_14_034926_create_sub_sub_jobs_table.php +++ /dev/null @@ -1,38 +0,0 @@ -id(); - $table->foreignId('sub_job_id')->constrained('sub_jobs')->onDelete('cascade'); - $table->foreignId('job_id')->constrained('jobs')->onDelete('cascade'); - $table->foreignId('sub_directorat_id')->constrained('sub_directorats')->onDelete('cascade'); - $table->foreignId('directorat_id')->constrained('directorats')->onDelete('cascade'); - $table->string('kode'); - $table->string('name'); - $table->timestamps(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('sub_sub_jobs'); - } -}; diff --git a/database/migrations/2023_04_15_225705_create_permission_groups_table.php b/database/migrations/2023_04_15_225705_create_permission_groups_table.php deleted file mode 100644 index 7842625..0000000 --- a/database/migrations/2023_04_15_225705_create_permission_groups_table.php +++ /dev/null @@ -1,38 +0,0 @@ -id(); - $table->string('name'); - $table->timestamps(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); - - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::dropIfExists('permission_groups'); - } - }; diff --git a/database/migrations/2023_04_15_225909_update_permissions_table.php b/database/migrations/2023_04_15_225909_update_permissions_table.php deleted file mode 100644 index 7aad149..0000000 --- a/database/migrations/2023_04_15_225909_update_permissions_table.php +++ /dev/null @@ -1,28 +0,0 @@ -foreignIdFor(PermissionGroup::class); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropForeignKey('permission_group_id'); - Schema::dropColumn('permission_group_id'); - } -}; diff --git a/database/migrations/2023_04_17_130450_create_document_types_table.php b/database/migrations/2023_04_17_130450_create_document_types_table.php deleted file mode 100644 index d81cfa5..0000000 --- a/database/migrations/2023_04_17_130450_create_document_types_table.php +++ /dev/null @@ -1,34 +0,0 @@ -id(); - $table->string('kode', 2); - $table->string('name'); - $table->timestamps(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('special_codes'); - } -}; diff --git a/database/migrations/2023_04_17_130450_create_special_codes_table.php b/database/migrations/2023_04_17_130450_create_special_codes_table.php deleted file mode 100644 index 6f33529..0000000 --- a/database/migrations/2023_04_17_130450_create_special_codes_table.php +++ /dev/null @@ -1,34 +0,0 @@ -id(); - $table->string('kode', 2); - $table->string('name'); - $table->timestamps(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('special_codes'); - } -}; diff --git a/database/migrations/2023_04_17_135901_create_documents_table.php b/database/migrations/2023_04_17_135901_create_documents_table.php deleted file mode 100644 index 77d6316..0000000 --- a/database/migrations/2023_04_17_135901_create_documents_table.php +++ /dev/null @@ -1,52 +0,0 @@ -id(); - $table->foreignIdFor(Directorat::class)->constrained()->onDelete('cascade'); - $table->foreignIdFor(SubDirectorat::class)->constrained()->onDelete('cascade'); - $table->foreignIdFor(Job::class)->constrained()->onDelete('cascade'); - $table->foreignIdFor(SubJob::class)->constrained()->onDelete('cascade'); - $table->foreignIdFor(SubSubJob::class)->constrained()->onDelete('cascade'); - $table->foreignIdFor(SpecialCode::class)->nullable()->constrained()->onDelete('cascade'); - $table->string('no_urut',3)->nullable(); - $table->string('sequence',100)->nullable(); - $table->string('kode', 15); - $table->string('status')->nullable(); - $table->string('keterangan')->nullable(); - $table->enum('jenis_dokumen',['nasabah','non nasabah'])->nullable(); - - $table->timestamps(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); - - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('documents'); - } -}; diff --git a/database/migrations/2023_04_17_135930_create_document_details_table.php b/database/migrations/2023_04_17_135930_create_document_details_table.php deleted file mode 100644 index 1f57db8..0000000 --- a/database/migrations/2023_04_17_135930_create_document_details_table.php +++ /dev/null @@ -1,54 +0,0 @@ -id(); - $table->foreignId('document_id')->constrained('documents')->onDelete('cascade'); - $table->foreignId('document_type_id')->nullable()->constrained('document_types')->onDelete('cascade'); - - $table->string('nama_nasabah')->nullable(); - $table->string('no_rekening')->nullable(); - $table->string('no_cif')->nullable(); - $table->string('group')->nullable(); - - $table->date('tanggal_upload')->nullable(); - $table->date('tanggal_dokumen')->nullable(); - $table->string('nomor_dokumen')->nullable(); - $table->string('perihal')->nullable(); - $table->string('kode_cabang')->nullable(); - $table->string('jumlah_halaman')->nullable(); - $table->string('custom_field_1')->nullable(); - $table->string('custom_field_2')->nullable(); - $table->string('custom_field_3')->nullable(); - $table->string('custom_field_4')->nullable(); - $table->string('status')->nullable(); - $table->string('keterangan')->nullable(); - - $table->timestamps(); - $table->softDeletes(); - - $table->unsignedBigInteger('created_by')->nullable(); - $table->unsignedBigInteger('updated_by')->nullable(); - $table->unsignedBigInteger('deleted_by')->nullable(); - - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('document_details'); - } -}; diff --git a/database/migrations/2023_05_25_032718_create_settings_table.php b/database/migrations/2023_05_25_032718_create_settings_table.php new file mode 100644 index 0000000..8e913e8 --- /dev/null +++ b/database/migrations/2023_05_25_032718_create_settings_table.php @@ -0,0 +1,47 @@ +=')) { + $this->tablename = Config::get('settings.table'); + $this->keyColumn = Config::get('settings.keyColumn'); + $this->valueColumn = Config::get('settings.valueColumn'); + } else { + $this->tablename = Config::get('anlutro/l4-settings::table'); + $this->keyColumn = Config::get('anlutro/l4-settings::keyColumn'); + $this->valueColumn = Config::get('anlutro/l4-settings::valueColumn'); + } + } + + /** + * Run the migrations. + * + * @return void + */ + public function up() + { + Schema::create($this->tablename, function(Blueprint $table) + { + $table->increments('id'); + $table->string($this->keyColumn)->index(); + $table->text($this->valueColumn); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::drop($this->tablename); + } +} diff --git a/database/migrations/2023_05_28_090500_add_login_fields_to_users_table.php b/database/migrations/2023_05_28_090500_add_login_fields_to_users_table.php new file mode 100644 index 0000000..d7e3656 --- /dev/null +++ b/database/migrations/2023_05_28_090500_add_login_fields_to_users_table.php @@ -0,0 +1,29 @@ +datetime('last_login_at')->nullable(); + $table->string('last_login_ip')->nullable(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('users', function (Blueprint $table) { + $table->removeColumn('last_login_at'); + $table->removeColumn('last_login_ip'); + }); + } +}; diff --git a/database/migrations/2023_04_15_221620_create_permission_tables.php b/database/migrations/2023_06_11_075700_create_permission_tables.php similarity index 100% rename from database/migrations/2023_04_15_221620_create_permission_tables.php rename to database/migrations/2023_06_11_075700_create_permission_tables.php diff --git a/database/migrations/2023_06_12_013333_add_profile_photo_path_column_to_users_table.php b/database/migrations/2023_06_12_013333_add_profile_photo_path_column_to_users_table.php new file mode 100644 index 0000000..a84533d --- /dev/null +++ b/database/migrations/2023_06_12_013333_add_profile_photo_path_column_to_users_table.php @@ -0,0 +1,27 @@ +string('profile_photo_path', 2048)->nullable()->after('email'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('users', function (Blueprint $table) { + $table->dropColumn('profile_photo_path'); + }); + } +}; diff --git a/database/migrations/2023_10_09_041104_create_addresses_table.php b/database/migrations/2023_10_09_041104_create_addresses_table.php new file mode 100644 index 0000000..a911631 --- /dev/null +++ b/database/migrations/2023_10_09_041104_create_addresses_table.php @@ -0,0 +1,35 @@ +id(); + $table->unsignedBigInteger('user_id'); + $table->string('address_line_1'); + $table->string('address_line_2')->nullable(); + $table->string('city'); + $table->string('postal_code'); + $table->string('state'); + $table->string('country'); + $table->unsignedTinyInteger('type'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('addresses'); + } +}; diff --git a/database/seeders/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php index fd88e1e..5b762e7 100644 --- a/database/seeders/DatabaseSeeder.php +++ b/database/seeders/DatabaseSeeder.php @@ -3,6 +3,8 @@ namespace Database\Seeders; // use Illuminate\Database\Console\Seeds\WithoutModelEvents; + +use App\Models\Address; use Illuminate\Database\Seeder; class DatabaseSeeder extends Seeder @@ -16,10 +18,12 @@ class DatabaseSeeder extends Seeder { $this->call([ UsersSeeder::class, - LabelSeeder::class, + RolesPermissionsSeeder::class, ]); - // \App\Models\User::factory(10)->create(); + \App\Models\User::factory(20)->create(); + + Address::factory(20)->create(); // \App\Models\User::factory()->create([ // 'name' => 'Test User', diff --git a/database/seeders/LabelSeeder.php b/database/seeders/LabelSeeder.php deleted file mode 100644 index c4a5a3c..0000000 --- a/database/seeders/LabelSeeder.php +++ /dev/null @@ -1,68 +0,0 @@ - '01', - 'name' => 'Direktorat Jenderal Perhubungan Darat', - ]); - - $subdirektorat = SubDirectorat::create([ - 'kode' => '01', - 'name' => 'Subdirektorat Jenderal Perhubungan Darat', - 'directorat_id' => $direktorat->id, - ]); - - $job = Job::create([ - 'kode' => '01', - 'name' => 'Kepala Subdirektorat Jenderal Perhubungan Darat', - 'sub_directorat_id' => $subdirektorat->id, - 'directorat_id' => $direktorat->id, - ]); - - $subjob = SubJob::create([ - 'kode' => '01', - 'name' => 'Kepala Subdirektorat Jenderal Perhubungan Darat', - 'job_id' => $job->id, - 'sub_directorat_id' => $subdirektorat->id, - 'directorat_id' => $direktorat->id, - ]); - - $subsubjob = SubSubJob::create([ - 'kode' => '01', - 'name' => 'Kepala Subdirektorat Jenderal Perhubungan Darat', - 'sub_job_id' => $subjob->id, - 'job_id' => $job->id, - 'sub_directorat_id' => $subdirektorat->id, - 'directorat_id' => $direktorat->id, - ]); - - $SpecialCode = SpecialCode::create([ - 'kode' => '00', - 'name' => 'Archive' - ]); - - $SpecialCode = SpecialCode::create([ - 'kode' => '98', - 'name' => 'Softcopy' - ]); - } -} diff --git a/database/seeders/RolesPermissionsSeeder.php b/database/seeders/RolesPermissionsSeeder.php new file mode 100644 index 0000000..abe0fc6 --- /dev/null +++ b/database/seeders/RolesPermissionsSeeder.php @@ -0,0 +1,72 @@ + [ + 'user management', + 'content management', + 'financial management', + 'reporting', + 'payroll', + 'disputes management', + 'api controls', + 'database management', + 'repository management', + ], + 'developer' => [ + 'api controls', + 'database management', + 'repository management', + ], + 'analyst' => [ + 'content management', + 'financial management', + 'reporting', + 'payroll', + ], + 'support' => [ + 'reporting', + ], + 'trial' => [ + ], + ]; + + foreach ($permissions_by_role['administrator'] as $permission) { + foreach ($abilities as $ability) { + Permission::create(['name' => $ability . ' ' . $permission]); + } + } + + foreach ($permissions_by_role as $role => $permissions) { + $full_permissions_list = []; + foreach ($abilities as $ability) { + foreach ($permissions as $permission) { + $full_permissions_list[] = $ability . ' ' . $permission; + } + } + Role::create(['name' => $role])->syncPermissions($full_permissions_list); + } + + User::find(1)->assignRole('administrator'); + User::find(2)->assignRole('developer'); + } +} diff --git a/modules_statuses.json b/modules_statuses.json new file mode 100644 index 0000000..44d9174 --- /dev/null +++ b/modules_statuses.json @@ -0,0 +1,5 @@ +{ + "Usermanager": true, + "Logs": true, + "Writeoff": true +} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 94531f8..79204a6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,26 +1,26 @@ { "name": "core", - "lockfileVersion": 3, + "lockfileVersion": 2, "requires": true, "packages": { "": { "dependencies": { - "@ckeditor/ckeditor5-alignment": "^35.2.1", - "@ckeditor/ckeditor5-build-balloon": "^35.2.1", - "@ckeditor/ckeditor5-build-balloon-block": "^35.2.1", - "@ckeditor/ckeditor5-build-classic": "^35.2.1", - "@ckeditor/ckeditor5-build-decoupled-document": "^35.2.1", - "@ckeditor/ckeditor5-build-inline": "^35.2.1", - "@eonasdan/tempus-dominus": "^6.2.10", - "@fortawesome/fontawesome-free": "^6.1.1", - "@popperjs/core": "2.11.6", + "@ckeditor/ckeditor5-alignment": "^38.1.0", + "@ckeditor/ckeditor5-build-balloon": "^38.1.0", + "@ckeditor/ckeditor5-build-balloon-block": "^38.1.0", + "@ckeditor/ckeditor5-build-classic": "^38.1.0", + "@ckeditor/ckeditor5-build-decoupled-document": "^38.1.0", + "@ckeditor/ckeditor5-build-inline": "^38.1.0", + "@eonasdan/tempus-dominus": "^6.7.7", + "@fortawesome/fontawesome-free": "^6.4.0", + "@popperjs/core": "2.11.8", "@shopify/draggable": "^1.0.0-beta.12", - "@yaireo/tagify": "^4.9.2", - "acorn": "^8.0.4", - "apexcharts": "^3.36.3", - "autosize": "^5.0.1", - "axios": "^0.21.1", - "bootstrap": "5.3.0-alpha1", + "@yaireo/tagify": "^4.17.8", + "acorn": "^8.9.0", + "apexcharts": "3.41.0", + "autosize": "^6.0.1", + "axios": "^1.4.0", + "bootstrap": "5.3.0", "bootstrap-cookie-alert": "^1.2.1", "bootstrap-daterangepicker": "^3.1.0", "bootstrap-icons": "^1.5.0", @@ -31,28 +31,28 @@ "clipboard": "^2.0.8", "countup.js": "^2.0.7", "cropperjs": "^1.5.12", - "datatables.net": "^1.12.1", - "datatables.net-bs5": "^1.12.1", - "datatables.net-buttons": "^2.2.3", - "datatables.net-buttons-bs5": "^2.2.3", - "datatables.net-colreorder": "^1.5.6", - "datatables.net-colreorder-bs5": "^1.5.6", - "datatables.net-datetime": "^1.1.2", - "datatables.net-fixedcolumns": "^4.1.0", - "datatables.net-fixedcolumns-bs5": "^4.1.0", - "datatables.net-fixedheader": "^3.2.3", - "datatables.net-fixedheader-bs5": "^3.2.3", - "datatables.net-plugins": "^1.11.5", - "datatables.net-responsive": "^2.3.0", - "datatables.net-responsive-bs5": "^2.3.0", - "datatables.net-rowgroup": "^1.2.0", - "datatables.net-rowgroup-bs5": "^1.2.0", - "datatables.net-rowreorder": "^1.2.8", - "datatables.net-rowreorder-bs5": "^1.2.8", - "datatables.net-scroller": "^2.0.6", - "datatables.net-scroller-bs5": "^2.0.6", - "datatables.net-select": "^1.4.0", - "datatables.net-select-bs5": "^1.4.0", + "datatables.net": "^1.13.4", + "datatables.net-bs5": "^1.13.4", + "datatables.net-buttons": "^2.3.6", + "datatables.net-buttons-bs5": "^2.3.6", + "datatables.net-colreorder": "^1.6.2", + "datatables.net-colreorder-bs5": "^1.6.2", + "datatables.net-datetime": "^1.4.1", + "datatables.net-fixedcolumns": "^4.2.2", + "datatables.net-fixedcolumns-bs5": "^4.2.2", + "datatables.net-fixedheader": "^3.3.2", + "datatables.net-fixedheader-bs5": "^3.3.2", + "datatables.net-plugins": "^1.13.4", + "datatables.net-responsive": "^2.4.1", + "datatables.net-responsive-bs5": "^2.4.1", + "datatables.net-rowgroup": "^1.3.1", + "datatables.net-rowgroup-bs5": "^1.3.1", + "datatables.net-rowreorder": "^1.3.3", + "datatables.net-rowreorder-bs5": "^1.3.3", + "datatables.net-scroller": "^2.1.1", + "datatables.net-scroller-bs5": "^2.1.1", + "datatables.net-select": "^1.6.2", + "datatables.net-select-bs5": "^1.6.2", "dropzone": "^5.9.2", "es6-promise": "^4.2.8", "es6-promise-polyfill": "^1.2.0", @@ -87,15 +87,15 @@ "tiny-slider": "^2.9.3", "tinymce": "^5.8.2", "toastr": "^2.1.4", - "typed.js": "2.0.12", + "typed.js": "2.0.16", "vis-timeline": "^7.4.9", "wnumb": "^1.2.0" }, "devDependencies": { "alpinejs": "^3.7.1", "autoprefixer": "^10.4.2", - "axios": "^1.1.3", "del": "^6.0.0", + "laravel-datatables-vite": "^0.5.2", "laravel-mix": "^6.0.39", "laravel-mix-purgecss": "^6.0.0", "lodash": "^4.17.19", @@ -110,12 +110,12 @@ } }, "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", "dev": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/gen-mapping": "^0.1.0", "@jridgewell/trace-mapping": "^0.3.9" }, "engines": { @@ -123,9 +123,10 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", - "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dev": true, "dependencies": { "@babel/highlight": "^7.18.6" }, @@ -134,30 +135,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.4.tgz", - "integrity": "sha512-/DYyDpeCfaVinT40FPGdkkb+lYSKvsVuMjDAG7jPOWWiM1ibOaB9CXJAlc4d1QpP/U2q2P9jbrSlClKSErd55g==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", + "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.4.tgz", - "integrity": "sha512-qt/YV149Jman/6AfmlxJ04LMIu8bMoyl3RB91yTFrxQmgbrSvQMy7cI8Q62FHx1t8wJ8B5fu0UDoLwHAhUo1QA==", + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.3.tgz", + "integrity": "sha512-qIJONzoa/qiHghnm0l1n4i/6IIziDpzqc36FBs4pzMhDUraHqponwJLiAKm1hGLP3OSB/TVNz6rMwVGpwxxySw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.4", - "@babel/helper-compilation-targets": "^7.21.4", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.3", + "@babel/helper-compilation-targets": "^7.20.7", "@babel/helper-module-transforms": "^7.21.2", "@babel/helpers": "^7.21.0", - "@babel/parser": "^7.21.4", + "@babel/parser": "^7.21.3", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.4", - "@babel/types": "^7.21.4", + "@babel/traverse": "^7.21.3", + "@babel/types": "^7.21.3", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -182,12 +183,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.4.tgz", - "integrity": "sha512-NieM3pVIYW2SwGzKoqfPrQsf4xGs9M9AIG3ThppsSRmO+m7eQhmI6amajKMUeIO37wFfsvnvcxQFx6x6iqxDnA==", + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.3.tgz", + "integrity": "sha512-QS3iR1GYC/YGUnW7IdggFeN5c1poPUurnGttOV/bZgPGV+izC/D8HnD6DLwod0fsatNyVn1G3EVWMYIF0nHbeA==", "dev": true, "dependencies": { - "@babel/types": "^7.21.4", + "@babel/types": "^7.21.3", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -196,6 +197,20 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@babel/helper-annotate-as-pure": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", @@ -222,13 +237,13 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.4.tgz", - "integrity": "sha512-Fa0tTuOXZ1iL8IeDFUWCzjZcn+sJGd9RZdH9esYVjEejGmzf+FFYQpMi/kZUk2kPy/q1H3/GPw7np8qar/stfg==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.21.4", - "@babel/helper-validator-option": "^7.21.0", + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", "browserslist": "^4.21.3", "lru-cache": "^5.1.1", "semver": "^6.3.0" @@ -250,9 +265,9 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.4.tgz", - "integrity": "sha512-46QrX2CQlaFRF4TkwfTt6nJD7IHq8539cCL7SDpqWSDeJKY1xylKKY5F/33mJhLZ3mFvKv2gGrVS6NkyF6qs+Q==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz", + "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.18.6", @@ -272,9 +287,9 @@ } }, "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.4.tgz", - "integrity": "sha512-M00OuhU+0GyZ5iBBN9czjugzWrEq2vDpf/zCYHxxf93ul/Q5rv+a5h+/+0WnI1AebHNVtl5bFV0qsJoH23DbfA==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz", + "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.18.6", @@ -372,12 +387,12 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", - "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", "dev": true, "dependencies": { - "@babel/types": "^7.21.4" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" @@ -507,6 +522,7 @@ "version": "7.19.1", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "dev": true, "engines": { "node": ">=6.9.0" } @@ -553,6 +569,7 @@ "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.18.6", "chalk": "^2.0.0", @@ -566,6 +583,7 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "dependencies": { "color-convert": "^1.9.0" }, @@ -577,6 +595,7 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -590,6 +609,7 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "dependencies": { "color-name": "1.1.3" } @@ -597,20 +617,14 @@ "node_modules/@babel/highlight/node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "node_modules/@babel/highlight/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "engines": { - "node": ">=0.8.0" - } + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true }, "node_modules/@babel/highlight/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, "engines": { "node": ">=4" } @@ -619,6 +633,7 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "dependencies": { "has-flag": "^3.0.0" }, @@ -627,9 +642,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", - "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==", + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.3.tgz", + "integrity": "sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -674,6 +689,7 @@ "version": "7.20.7", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead.", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.18.9", @@ -692,6 +708,7 @@ "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.", "dev": true, "dependencies": { "@babel/helper-create-class-features-plugin": "^7.18.6", @@ -708,6 +725,7 @@ "version": "7.21.0", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-static-block instead.", "dev": true, "dependencies": { "@babel/helper-create-class-features-plugin": "^7.21.0", @@ -725,6 +743,7 @@ "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-dynamic-import instead.", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", @@ -741,6 +760,7 @@ "version": "7.18.9", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-export-namespace-from instead.", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.18.9", @@ -757,6 +777,7 @@ "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-json-strings instead.", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", @@ -773,6 +794,7 @@ "version": "7.20.7", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-logical-assignment-operators instead.", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.20.2", @@ -789,6 +811,7 @@ "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead.", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", @@ -805,6 +828,7 @@ "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead.", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", @@ -821,6 +845,7 @@ "version": "7.20.7", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.", "dev": true, "dependencies": { "@babel/compat-data": "^7.20.5", @@ -840,6 +865,7 @@ "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead.", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", @@ -856,6 +882,7 @@ "version": "7.21.0", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead.", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.20.2", @@ -873,6 +900,7 @@ "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-methods instead.", "dev": true, "dependencies": { "@babel/helper-create-class-features-plugin": "^7.18.6", @@ -889,6 +917,7 @@ "version": "7.21.0", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-property-in-object instead.", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.18.6", @@ -907,6 +936,7 @@ "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead.", "dev": true, "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.18.6", @@ -1512,12 +1542,12 @@ } }, "node_modules/@babel/plugin-transform-runtime": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.4.tgz", - "integrity": "sha512-1J4dhrw1h1PqnNNpzwxQ2UBymJUF8KuPjAAnlLwZcGhHAIqUigFW7cdK6GHoB64ubY4qXQNYknoUeks4Wz7CUA==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz", + "integrity": "sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg==", "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.21.4", + "@babel/helper-module-imports": "^7.18.6", "@babel/helper-plugin-utils": "^7.20.2", "babel-plugin-polyfill-corejs2": "^0.3.3", "babel-plugin-polyfill-corejs3": "^0.6.0", @@ -1648,31 +1678,31 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.21.4.tgz", - "integrity": "sha512-2W57zHs2yDLm6GD5ZpvNn71lZ0B/iypSdIeq25OurDKji6AdzV07qp4s3n1/x5BqtiGaTrPN3nerlSCaC5qNTw==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", + "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.21.4", - "@babel/helper-compilation-targets": "^7.21.4", + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-option": "^7.21.0", + "@babel/helper-validator-option": "^7.18.6", "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.20.7", - "@babel/plugin-proposal-async-generator-functions": "^7.20.7", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.20.1", "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.21.0", + "@babel/plugin-proposal-class-static-block": "^7.18.6", "@babel/plugin-proposal-dynamic-import": "^7.18.6", "@babel/plugin-proposal-export-namespace-from": "^7.18.9", "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.20.7", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.20.7", + "@babel/plugin-proposal-object-rest-spread": "^7.20.2", "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.21.0", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.21.0", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-class-properties": "^7.12.13", @@ -1689,40 +1719,40 @@ "@babel/plugin-syntax-optional-chaining": "^7.8.3", "@babel/plugin-syntax-private-property-in-object": "^7.14.5", "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.20.7", - "@babel/plugin-transform-async-to-generator": "^7.20.7", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.21.0", - "@babel/plugin-transform-classes": "^7.21.0", - "@babel/plugin-transform-computed-properties": "^7.20.7", - "@babel/plugin-transform-destructuring": "^7.21.3", + "@babel/plugin-transform-block-scoping": "^7.20.2", + "@babel/plugin-transform-classes": "^7.20.2", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.20.2", "@babel/plugin-transform-dotall-regex": "^7.18.6", "@babel/plugin-transform-duplicate-keys": "^7.18.9", "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.21.0", + "@babel/plugin-transform-for-of": "^7.18.8", "@babel/plugin-transform-function-name": "^7.18.9", "@babel/plugin-transform-literals": "^7.18.9", "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.20.11", - "@babel/plugin-transform-modules-commonjs": "^7.21.2", - "@babel/plugin-transform-modules-systemjs": "^7.20.11", + "@babel/plugin-transform-modules-amd": "^7.19.6", + "@babel/plugin-transform-modules-commonjs": "^7.19.6", + "@babel/plugin-transform-modules-systemjs": "^7.19.6", "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.20.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", "@babel/plugin-transform-new-target": "^7.18.6", "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.21.3", + "@babel/plugin-transform-parameters": "^7.20.1", "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.20.5", + "@babel/plugin-transform-regenerator": "^7.18.6", "@babel/plugin-transform-reserved-words": "^7.18.6", "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.20.7", + "@babel/plugin-transform-spread": "^7.19.0", "@babel/plugin-transform-sticky-regex": "^7.18.6", "@babel/plugin-transform-template-literals": "^7.18.9", "@babel/plugin-transform-typeof-symbol": "^7.18.9", "@babel/plugin-transform-unicode-escapes": "^7.18.10", "@babel/plugin-transform-unicode-regex": "^7.18.6", "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.21.4", + "@babel/types": "^7.20.2", "babel-plugin-polyfill-corejs2": "^0.3.3", "babel-plugin-polyfill-corejs3": "^0.6.0", "babel-plugin-polyfill-regenerator": "^0.4.1", @@ -1794,19 +1824,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.4.tgz", - "integrity": "sha512-eyKrRHKdyZxqDm+fV1iqL9UAHMoIg0nDaGqfIOd8rKH17m5snv7Gn4qgjBoFfLz9APvjFU/ICT00NVCv1Epp8Q==", + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.3.tgz", + "integrity": "sha512-XLyopNeaTancVitYZe2MlUEvgKb6YVVPXzofHgqHijCImG33b/uTurMS488ht/Hbsb2XK3U2BnSTxKVNGV3nGQ==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.4", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.3", "@babel/helper-environment-visitor": "^7.18.9", "@babel/helper-function-name": "^7.21.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.4", - "@babel/types": "^7.21.4", + "@babel/parser": "^7.21.3", + "@babel/types": "^7.21.3", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -1815,9 +1845,9 @@ } }, "node_modules/@babel/types": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", - "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.3.tgz", + "integrity": "sha512-sBGdETxC+/M4o/zKC0sl6sjWv62WFR/uzxrJ6uYyMLZOUlPnwzw0tKgVHOXxaAd5l2g8pEDM5RZ495GPQI77kg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.19.4", @@ -1828,642 +1858,637 @@ "node": ">=6.9.0" } }, - "node_modules/@brodybits/remark-parse": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@brodybits/remark-parse/-/remark-parse-5.0.1.tgz", - "integrity": "sha512-z4BjfcxegoajMQwIWBewRXVzrEvSQY1rILm7+O57qX9UI4ofCNr+biteNCVMNDv7POleymz6inEIzbCKYX7MVA==", - "dependencies": { - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^1.1.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.3", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^1.0.0", - "vfile-location": "^2.0.0", - "xtend": "^4.0.1" - } - }, "node_modules/@ckeditor/ckeditor5-adapter-ckfinder": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-adapter-ckfinder/-/ckeditor5-adapter-ckfinder-35.4.0.tgz", - "integrity": "sha512-0o0nkggKYwjx60Ge7GGuJp2jJGwGW9LlAOZEVPTMRG8b/uSzMNLHyCChKeakRO4z7tiopJM6o9Y8sfbDM/nKpA==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-adapter-ckfinder/-/ckeditor5-adapter-ckfinder-38.1.1.tgz", + "integrity": "sha512-TDv6xOkcXws0RmfkBJ6vfuH4vwj3mbI8S++9czLKrHmwp24jSrxiRwP1ZUlJSImy+/3sTjec4u8I5fq0HA2UOA==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-alignment": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-alignment/-/ckeditor5-alignment-35.4.0.tgz", - "integrity": "sha512-hRrP7b5VBsndwxzyNvUpGqTtUsCPDFRWSJq8vk9hk3f0AjioJZE0/rQA9U41dYKZdOKpTXBVrt+3DBMjObV6cQ==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-alignment/-/ckeditor5-alignment-38.1.1.tgz", + "integrity": "sha512-eq8T9/YLjwFsspxDfEtvZqKuh/D0ckGHN42tzfM+TCcvpYgFDzxJd/GbenewVdQW4iU87JvKpS7aOaKCeJ5ckw==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-autoformat": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-autoformat/-/ckeditor5-autoformat-35.4.0.tgz", - "integrity": "sha512-4vAOaoiziR2XN8KmismiBiknCeOYKtskW8yQnSrFWUX3Fkok3KrHaRFr48AbIN4pHI2xTMKPLeMLeRtZd8tTVw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-autoformat/-/ckeditor5-autoformat-38.1.1.tgz", + "integrity": "sha512-Ppxxp0qprhENktpKv3lkVFchS9iZt0GbCVLPg8ffTb5dCAQgeXyC/TdR1b3zpbdjgSyai07OYgU59oTNUOwtog==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-basic-styles": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-basic-styles/-/ckeditor5-basic-styles-35.4.0.tgz", - "integrity": "sha512-6JkoplYMwIHN1E/w3DoY0i95B41sbGwsNAtlvx6qaBvNKkLu4rRCtiBUJDnx8qZxxQXHih5ZOw8bUQHl4mt8hw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-basic-styles/-/ckeditor5-basic-styles-38.1.1.tgz", + "integrity": "sha512-+mky2W983jaSlYpvQ31af0ethMQxXUxuBkd2IzRi2cchvSK9YbQtBSkV0EM595uoJa1S3doyCJn7Y8bOdE+v3A==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-block-quote": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-block-quote/-/ckeditor5-block-quote-35.4.0.tgz", - "integrity": "sha512-AXoJhSVwl/RSelmxqxMcLq0VUXubjEvMc32xvF6CyUkc/vlSkZec6noznXyVo0P5TXOxsFbzwFAdBOSFTFjD+A==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-block-quote/-/ckeditor5-block-quote-38.1.1.tgz", + "integrity": "sha512-YPSw+qTE71mvQTo5OA2M9oQp1jpUJrj1d15mbVE5DIyvc2CMWRltqV49GoM15ZpzgQWbaF3VZ8ZT0+vZlfS0lw==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-build-balloon": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-balloon/-/ckeditor5-build-balloon-35.4.0.tgz", - "integrity": "sha512-32lyoZvNM9fxq8XzLeE+O18HAfruOFtaEdK/p69Ik3rOzRpsvcK4ne4W8dye3hzUaBfF7qLXUbIr9st7c/UugQ==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-balloon/-/ckeditor5-build-balloon-38.1.1.tgz", + "integrity": "sha512-yVywEYBpI+caSx3CogqFdEgn55Sl42q4InUqZJJqgB3wLjtLhm43+dQa2d2gf1DyDIFjMNl1q0O303bVx2ru9Q==", "dependencies": { - "@ckeditor/ckeditor5-adapter-ckfinder": "^35.4.0", - "@ckeditor/ckeditor5-autoformat": "^35.4.0", - "@ckeditor/ckeditor5-basic-styles": "^35.4.0", - "@ckeditor/ckeditor5-block-quote": "^35.4.0", - "@ckeditor/ckeditor5-ckbox": "^35.4.0", - "@ckeditor/ckeditor5-ckfinder": "^35.4.0", - "@ckeditor/ckeditor5-cloud-services": "^35.4.0", - "@ckeditor/ckeditor5-easy-image": "^35.4.0", - "@ckeditor/ckeditor5-editor-balloon": "^35.4.0", - "@ckeditor/ckeditor5-essentials": "^35.4.0", - "@ckeditor/ckeditor5-heading": "^35.4.0", - "@ckeditor/ckeditor5-image": "^35.4.0", - "@ckeditor/ckeditor5-indent": "^35.4.0", - "@ckeditor/ckeditor5-link": "^35.4.0", - "@ckeditor/ckeditor5-list": "^35.4.0", - "@ckeditor/ckeditor5-media-embed": "^35.4.0", - "@ckeditor/ckeditor5-paragraph": "^35.4.0", - "@ckeditor/ckeditor5-paste-from-office": "^35.4.0", - "@ckeditor/ckeditor5-table": "^35.4.0", - "@ckeditor/ckeditor5-typing": "^35.4.0" + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-balloon": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-build-balloon-block": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-balloon-block/-/ckeditor5-build-balloon-block-35.4.0.tgz", - "integrity": "sha512-VVq7Jdpum+398Sp8MaAmpjMfFhZvJ9DHRgtz4h4JwnSxgrQ5Mk0+BLZPKCOyQw3cnDeJqgEeSwR2vwg2+5UYyw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-balloon-block/-/ckeditor5-build-balloon-block-38.1.1.tgz", + "integrity": "sha512-3ZLrEKB/nQ9b6TamfXFafipzxDFr3CJe+nfoiP3YJgzwfqOmRSvf2jSzgGGNSin2Zvw/5BwnM08GEts0L8o+2g==", "dependencies": { - "@ckeditor/ckeditor5-adapter-ckfinder": "^35.4.0", - "@ckeditor/ckeditor5-autoformat": "^35.4.0", - "@ckeditor/ckeditor5-basic-styles": "^35.4.0", - "@ckeditor/ckeditor5-block-quote": "^35.4.0", - "@ckeditor/ckeditor5-ckbox": "^35.4.0", - "@ckeditor/ckeditor5-ckfinder": "^35.4.0", - "@ckeditor/ckeditor5-cloud-services": "^35.4.0", - "@ckeditor/ckeditor5-easy-image": "^35.4.0", - "@ckeditor/ckeditor5-editor-balloon": "^35.4.0", - "@ckeditor/ckeditor5-essentials": "^35.4.0", - "@ckeditor/ckeditor5-heading": "^35.4.0", - "@ckeditor/ckeditor5-image": "^35.4.0", - "@ckeditor/ckeditor5-indent": "^35.4.0", - "@ckeditor/ckeditor5-link": "^35.4.0", - "@ckeditor/ckeditor5-list": "^35.4.0", - "@ckeditor/ckeditor5-media-embed": "^35.4.0", - "@ckeditor/ckeditor5-paragraph": "^35.4.0", - "@ckeditor/ckeditor5-paste-from-office": "^35.4.0", - "@ckeditor/ckeditor5-table": "^35.4.0", - "@ckeditor/ckeditor5-typing": "^35.4.0", - "@ckeditor/ckeditor5-ui": "^35.4.0" + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-balloon": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-build-classic": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-classic/-/ckeditor5-build-classic-35.4.0.tgz", - "integrity": "sha512-DDvhtoOggo2B7/M+XPReIkFOvkXzzjTP3d4dzakODIFhZ5Y633U0NlIwTeMP/KVvTfzmesW9FJzER0fbVosQgA==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-classic/-/ckeditor5-build-classic-38.1.1.tgz", + "integrity": "sha512-TaVK+kVX2hMZD8imbfsQHKTiMo4seBkmZvu8KgNPn8tNarmJacO27EYmPmzL04KyctP2pv4rt2UTzPfuFZyqvg==", "dependencies": { - "@ckeditor/ckeditor5-adapter-ckfinder": "^35.4.0", - "@ckeditor/ckeditor5-autoformat": "^35.4.0", - "@ckeditor/ckeditor5-basic-styles": "^35.4.0", - "@ckeditor/ckeditor5-block-quote": "^35.4.0", - "@ckeditor/ckeditor5-ckbox": "^35.4.0", - "@ckeditor/ckeditor5-ckfinder": "^35.4.0", - "@ckeditor/ckeditor5-cloud-services": "^35.4.0", - "@ckeditor/ckeditor5-easy-image": "^35.4.0", - "@ckeditor/ckeditor5-editor-classic": "^35.4.0", - "@ckeditor/ckeditor5-essentials": "^35.4.0", - "@ckeditor/ckeditor5-heading": "^35.4.0", - "@ckeditor/ckeditor5-image": "^35.4.0", - "@ckeditor/ckeditor5-indent": "^35.4.0", - "@ckeditor/ckeditor5-link": "^35.4.0", - "@ckeditor/ckeditor5-list": "^35.4.0", - "@ckeditor/ckeditor5-media-embed": "^35.4.0", - "@ckeditor/ckeditor5-paragraph": "^35.4.0", - "@ckeditor/ckeditor5-paste-from-office": "^35.4.0", - "@ckeditor/ckeditor5-table": "^35.4.0", - "@ckeditor/ckeditor5-typing": "^35.4.0" + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-classic": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-build-decoupled-document": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-decoupled-document/-/ckeditor5-build-decoupled-document-35.4.0.tgz", - "integrity": "sha512-quVwstkfMuKdO/i3+RcfKoo6N4V8HNmg1tSiSIdYc2GIlb6Vc0Yk9IMdu7tUne4hOAW8fDAcEVPZv7yDxvLh1Q==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-decoupled-document/-/ckeditor5-build-decoupled-document-38.1.1.tgz", + "integrity": "sha512-WI4zGIZxRhJ74hiXb6s0q1VJoaBSl6ZDC3bv56HMFBvLsDeeb1eE9SdgIs3u4x0RhyRPs3+R2vBhxFMkQdXRtg==", "dependencies": { - "@ckeditor/ckeditor5-adapter-ckfinder": "^35.4.0", - "@ckeditor/ckeditor5-alignment": "^35.4.0", - "@ckeditor/ckeditor5-autoformat": "^35.4.0", - "@ckeditor/ckeditor5-basic-styles": "^35.4.0", - "@ckeditor/ckeditor5-block-quote": "^35.4.0", - "@ckeditor/ckeditor5-ckbox": "^35.4.0", - "@ckeditor/ckeditor5-ckfinder": "^35.4.0", - "@ckeditor/ckeditor5-cloud-services": "^35.4.0", - "@ckeditor/ckeditor5-easy-image": "^35.4.0", - "@ckeditor/ckeditor5-editor-decoupled": "^35.4.0", - "@ckeditor/ckeditor5-essentials": "^35.4.0", - "@ckeditor/ckeditor5-font": "^35.4.0", - "@ckeditor/ckeditor5-heading": "^35.4.0", - "@ckeditor/ckeditor5-image": "^35.4.0", - "@ckeditor/ckeditor5-indent": "^35.4.0", - "@ckeditor/ckeditor5-link": "^35.4.0", - "@ckeditor/ckeditor5-list": "^35.4.0", - "@ckeditor/ckeditor5-media-embed": "^35.4.0", - "@ckeditor/ckeditor5-paragraph": "^35.4.0", - "@ckeditor/ckeditor5-paste-from-office": "^35.4.0", - "@ckeditor/ckeditor5-table": "^35.4.0", - "@ckeditor/ckeditor5-typing": "^35.4.0" + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-alignment": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-decoupled": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-font": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-build-inline": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-inline/-/ckeditor5-build-inline-35.4.0.tgz", - "integrity": "sha512-TdULLd/P9huGlDByFSahxZYByoFxThTAaZgQ6PiW310FlokyM4SOPS8AdhMBEzSqTN9SXrYPZvVAmP/TBxOK/w==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-inline/-/ckeditor5-build-inline-38.1.1.tgz", + "integrity": "sha512-sZG7EISh1ZxeHABflLlzv0xEsxnwA7V1T3j4320/+I7D6R0HUrVvjfiM+RPQruyGKjD8bh7RTbEm40lQN82Xyg==", "dependencies": { - "@ckeditor/ckeditor5-adapter-ckfinder": "^35.4.0", - "@ckeditor/ckeditor5-autoformat": "^35.4.0", - "@ckeditor/ckeditor5-basic-styles": "^35.4.0", - "@ckeditor/ckeditor5-block-quote": "^35.4.0", - "@ckeditor/ckeditor5-ckbox": "^35.4.0", - "@ckeditor/ckeditor5-ckfinder": "^35.4.0", - "@ckeditor/ckeditor5-cloud-services": "^35.4.0", - "@ckeditor/ckeditor5-easy-image": "^35.4.0", - "@ckeditor/ckeditor5-editor-inline": "^35.4.0", - "@ckeditor/ckeditor5-essentials": "^35.4.0", - "@ckeditor/ckeditor5-heading": "^35.4.0", - "@ckeditor/ckeditor5-image": "^35.4.0", - "@ckeditor/ckeditor5-indent": "^35.4.0", - "@ckeditor/ckeditor5-link": "^35.4.0", - "@ckeditor/ckeditor5-list": "^35.4.0", - "@ckeditor/ckeditor5-media-embed": "^35.4.0", - "@ckeditor/ckeditor5-paragraph": "^35.4.0", - "@ckeditor/ckeditor5-paste-from-office": "^35.4.0", - "@ckeditor/ckeditor5-table": "^35.4.0", - "@ckeditor/ckeditor5-typing": "^35.4.0" + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-inline": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-ckbox": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ckbox/-/ckeditor5-ckbox-35.4.0.tgz", - "integrity": "sha512-kpEleQLsu3/nyvc46zkWBp3EvvxinnQfmwvi52h+FLbbI0TE0dxadRppQHZjHXd4yw29N6B1ePeMAVFRX1iYjQ==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ckbox/-/ckeditor5-ckbox-38.1.1.tgz", + "integrity": "sha512-+R3Vz2QL/K2pdWzOZpFtrLwFHefxQfDT99sYQSUZiOQaXA6rSoLT4x6lhIdrQRjsI/ofCIGseQxuTHc8t86urA==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-ckfinder": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ckfinder/-/ckeditor5-ckfinder-35.4.0.tgz", - "integrity": "sha512-PeA3PA1c1JGn9f+rZlnWHSuXUU4DjWU4oUp5tMWAtS8OV1srJ2DbU/+Z/WZHO4jmDMfQX9XmN5B/sdLvTQ7ZjQ==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ckfinder/-/ckeditor5-ckfinder-38.1.1.tgz", + "integrity": "sha512-58139l/uKcMD6KZzd5uPzv8IwJYNnDFsT8N6DlecTZuh3ViKmg9t/pbRWu8epOboySwHeJoA3q12m2j05C1+JQ==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-clipboard": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-clipboard/-/ckeditor5-clipboard-35.4.0.tgz", - "integrity": "sha512-B6rIQxvOrHvO9TZRC8JA0wKk+IfN880UJkYIg1qlhf9HFNVjdVbtHaiCsPD+TzGmQN3XHXfNjgjabGRIn0iZmw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-clipboard/-/ckeditor5-clipboard-38.1.1.tgz", + "integrity": "sha512-FN6QxWw0ZcoMsCkm6FuN2do//qjNGofnsFernKWJPbL2E056dvB4WmhYHa4fCvGASCROcJ17yUV7oYI+1ah/og==", "dependencies": { - "@ckeditor/ckeditor5-core": "^35.4.0", - "@ckeditor/ckeditor5-engine": "^35.4.0", - "@ckeditor/ckeditor5-utils": "^35.4.0", - "@ckeditor/ckeditor5-widget": "^35.4.0", - "lodash-es": "^4.17.11" + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "@ckeditor/ckeditor5-widget": "38.1.1", + "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-cloud-services": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-cloud-services/-/ckeditor5-cloud-services-35.4.0.tgz", - "integrity": "sha512-iavLfEKx0GVPMIyPnnOlD9TCVVLIrwp1dCQAfO3A7WUySiLBcC7ShJ+6Bm00CVQQE6VtrYOevrKN/RcRzImzHw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-cloud-services/-/ckeditor5-cloud-services-38.1.1.tgz", + "integrity": "sha512-M4MykJmA9JqlZEDCJfcGwEKq6Y1AuDf8Kxbl0LfMZu6BKv74up+c0wSD/WX7isot3eqDdSQckVjHlJvmS31EOA==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-core": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-core/-/ckeditor5-core-35.4.0.tgz", - "integrity": "sha512-Rf0H7C4inCj/YC8aii0cT7TC/IuBIQ+tXmu9qd8/1BJ/rz1MCHXtBPApjTbFp33OE3aOFB5+NUaKt05k/dL3OA==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-core/-/ckeditor5-core-38.1.1.tgz", + "integrity": "sha512-5yC+oSoCnjfOrvmECbwtu4zBt9S5dJfOYsAzfIGEbmD9DVGIyLBDKEjJ9IbAKAy1HG6CgAkZyv1YyEc5G5g3ew==", "dependencies": { - "@ckeditor/ckeditor5-engine": "^35.4.0", - "@ckeditor/ckeditor5-ui": "^35.4.0", - "@ckeditor/ckeditor5-utils": "^35.4.0", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-easy-image": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-easy-image/-/ckeditor5-easy-image-35.4.0.tgz", - "integrity": "sha512-DRCQ/zh2Ul0f7RrSBG3WYKnZbrU2jj1RazX4qZM1b1WlM81y7+i+Rnp209JIT9TnlrTdYJy2EUY17YHughuyzA==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-easy-image/-/ckeditor5-easy-image-38.1.1.tgz", + "integrity": "sha512-kusGv9hBkFNm3/ZSr69fgdJ3V94feL0oXQoRUsCTsv2usda6KOIY3D5XMK8vvBpa7+0gFan98AvX9KM5IvrMkQ==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-editor-balloon": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-balloon/-/ckeditor5-editor-balloon-35.4.0.tgz", - "integrity": "sha512-xKnqB6vl5DXDS25AOWxBTsAeOqtIeW1m4iOn+ZFqCNBsoVcw1Z7B4mnryYgioVhyf0JHnMm+AigsH/uUPOLbNQ==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-balloon/-/ckeditor5-editor-balloon-38.1.1.tgz", + "integrity": "sha512-gchehCuglncwOme1/7JGSA2obObm88MCWayy38xlNLHQZA/9FCUrbFAsqvkc2Pza+9+u84vw0FS/k2LIcG5nLQ==", "dependencies": { - "ckeditor5": "^35.4.0", + "ckeditor5": "38.1.1", "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-editor-classic": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-classic/-/ckeditor5-editor-classic-35.4.0.tgz", - "integrity": "sha512-EqAqFD/5oPtDMU2AoH3eJaDplcS8MxfkiRQ5hzeC1JeIPT94w5FCHnB4SAkjLPDnlyZnBWOOYdZSuln2TRIbEw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-classic/-/ckeditor5-editor-classic-38.1.1.tgz", + "integrity": "sha512-LSh60tSuR8pGnLswy+Smx7x0NtFjbVX2dGiEkMyh4O0JLok/YgS3IU6UmoEd9FTjGqnOZ3644h3SpkSu84uDYA==", "dependencies": { - "ckeditor5": "^35.4.0", + "ckeditor5": "38.1.1", "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-editor-decoupled": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-decoupled/-/ckeditor5-editor-decoupled-35.4.0.tgz", - "integrity": "sha512-+edFHimxt60u9XnD4AitZGU8+dshthvlftbpD8Qi3aXwZ9SuIoYdi3fe4ufRgtdkcJT2qLKWghyKPLatCqM1tg==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-decoupled/-/ckeditor5-editor-decoupled-38.1.1.tgz", + "integrity": "sha512-vFYKLbFNI8wWHQ6IGY43eJaE6hwyGzI0TEGNci0AKJo5K/szUo3heL/JnuEknOqRJf4EL7RGeHw8fLAmV2XiZQ==", "dependencies": { - "ckeditor5": "^35.4.0", + "ckeditor5": "38.1.1", "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-editor-inline": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-inline/-/ckeditor5-editor-inline-35.4.0.tgz", - "integrity": "sha512-BMgoALCBBvqiT8Y2STK17aS5oaxsRo2QmGW7vnW07DriFXDJUGusZDA49jr+bgHod/LAcmsNtzmtr//fzOPMYw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-inline/-/ckeditor5-editor-inline-38.1.1.tgz", + "integrity": "sha512-orp4tRtiIaWxK3UB+612OgvL/NRTRVjDmxObq5QXfmdPE8I4diM0RFx4aLlBJzjK943+6tt9/8aQKVuN5s5TEQ==", "dependencies": { - "ckeditor5": "^35.4.0", + "ckeditor5": "38.1.1", "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-engine": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-engine/-/ckeditor5-engine-35.4.0.tgz", - "integrity": "sha512-67QKtUGJeLM072h9qURvzczYGU3ecuxR9LLmM4dffnV+PBNQ9e8RDCY7PuuEP0pplmAUI6/XqoZJIbk6h7ZV3Q==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-engine/-/ckeditor5-engine-38.1.1.tgz", + "integrity": "sha512-Z0LYg7B4vN3ZNUf3utmBRXQBn3JNy81Xs+45sQ09Fpf5p6aKer37vxEA315O17PnWYndildeKNRUNdjI942HcQ==", "dependencies": { - "@ckeditor/ckeditor5-utils": "^35.4.0", + "@ckeditor/ckeditor5-utils": "38.1.1", "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-enter": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-enter/-/ckeditor5-enter-35.4.0.tgz", - "integrity": "sha512-y95RnA/Gw72e220PJKVwNbwPzX4SRs82/rXu1jVyJXty7CcEZqqfyRtW6odICAXr5eKI5XKgzFgpFYULL3D9Nw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-enter/-/ckeditor5-enter-38.1.1.tgz", + "integrity": "sha512-jzlTvyBwBw4TLr03NXwVeZD87pOSjisx8WCEahWM8Rxrw77k+7rg3blAWmmpw9cHUp2WkpxCztfvQtQouT9Jpw==", "dependencies": { - "@ckeditor/ckeditor5-core": "^35.4.0", - "@ckeditor/ckeditor5-engine": "^35.4.0" + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-essentials": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-essentials/-/ckeditor5-essentials-35.4.0.tgz", - "integrity": "sha512-tTtTb4NYSQi99LPDzAVUnFhW6iTqSuaylkg0XnDvO2lVR3tAA27gOOjGqc8Ri9NMGGeZkFTvXpnVkXkFnDP2nQ==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-essentials/-/ckeditor5-essentials-38.1.1.tgz", + "integrity": "sha512-8Upvcjqny39pEZM5JbdyM8MESGjC6IkAJpjvqEFkbZsFcFzXjPolbxPReI3Xbl74XaMGYpwfraTv7ozkCxD7eA==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-font": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-font/-/ckeditor5-font-35.4.0.tgz", - "integrity": "sha512-eCXrssQKy+1kUM6LaRk7lGCam99sruJKnIofu3/mCfYaoIJUCHX0Zzk+uDijH0AOSCH0+EwaLTajQwXrbBZrhg==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-font/-/ckeditor5-font-38.1.1.tgz", + "integrity": "sha512-DHXtwbMbX4BtRzlCFTe/3Z2bISf5c1tOpu9+RozcOEnV3it0B8R8HacrETcbK3s0sH9zG5iZCVj5sRC66/TEvg==", "dependencies": { - "ckeditor5": "^35.4.0" + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-heading": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-heading/-/ckeditor5-heading-35.4.0.tgz", - "integrity": "sha512-cZwKzAg0USxaDZstQXKMkzrE+fOEr+6YFtXpHGrKgsaisI9xkuOWD40dZvLovTmENLGPopDkdfGewj8jscB9Kg==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-heading/-/ckeditor5-heading-38.1.1.tgz", + "integrity": "sha512-uEh62XWpw5uIpaslJfn8YZ+9DfViCRR5auAz5SdiYDY+tdLjwKS308S1um5i5G/CLjp1M3uXlvDieOopit9nYg==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-image": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-image/-/ckeditor5-image-35.4.0.tgz", - "integrity": "sha512-SQ+IiIB6SLhdhVy3gRKxxfBXpLikInvaP3ILOvPQlaC0Bt5ciJ3t/180zCBlbCvvRwIQNo4bYbZc5cI8UBIAaA==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-image/-/ckeditor5-image-38.1.1.tgz", + "integrity": "sha512-iXUlw38Eoo5zwj3h9eKULenEDPYoohPLT/74UDYw1V7Q3QY3dN4fCovcWwQx7VFPMPFUtd5T1S/ki/3UpLQhSA==", "dependencies": { - "@ckeditor/ckeditor5-ui": "^35.4.0", - "ckeditor5": "^35.4.0", + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1", "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-indent": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-indent/-/ckeditor5-indent-35.4.0.tgz", - "integrity": "sha512-FNp5S6t/RlY4eARR4E/jzxqjAbsGMa+30ZKS9maTOCx0TDmvmjD0jvZc9+1fe/KzSBk9wtmHYOil1J+W66rKvw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-indent/-/ckeditor5-indent-38.1.1.tgz", + "integrity": "sha512-Wr0lAiTVGVAD4N/4zqFSGdO40uZEUdVaPFBNzRz2XeohLlMiu5poaWQkEmwtShyl8CFG5MYIayw0JBDw7uHPbA==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-link": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-link/-/ckeditor5-link-35.4.0.tgz", - "integrity": "sha512-aqHFwlnGyjW/fp/fklD1VupYLsfbvSwsh9RFGIdgJL4TuWnlhxR5JXCOAKyZtvCWpdyuKyqzEB8EV0NQAa+OMg==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-link/-/ckeditor5-link-38.1.1.tgz", + "integrity": "sha512-CMIPPaUIOvVPW/gIEmcZ00bYbQyy3/YenxPrzmdMkYjDWoPqfhDnn4FTrgEBYyWRXTNXXrS7D08VGeGCDOyYPA==", "dependencies": { - "@ckeditor/ckeditor5-ui": "^35.4.0", - "ckeditor5": "^35.4.0", + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1", "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-list": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-list/-/ckeditor5-list-35.4.0.tgz", - "integrity": "sha512-fPENWzEicpoXZsDmGR6EiR/j3Z4Q3KYAsBMsmWf8YwUlbM/hERt+V3yIB+LKdGQKbFrL6CWOA1JBB4tmmwd50A==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-list/-/ckeditor5-list-38.1.1.tgz", + "integrity": "sha512-FzBdAZWaBXjUYmtd7fDzIJ4evXM6n1RbNYG7ICzoviarlKL99mv/wLEkEvNDH0japdu/G11JtV36tRtBCzwoDQ==", "dependencies": { - "@ckeditor/ckeditor5-ui": "^35.4.0", - "ckeditor5": "^35.4.0" + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-media-embed": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-media-embed/-/ckeditor5-media-embed-35.4.0.tgz", - "integrity": "sha512-So+BYkI82pdIGP2VQ+b+gstEOnHLHA9yBX94pTJM9eW1O+ZTPMR1t2wJFFmEbCjQUYDVC8SdGUGaOb1gaeVXiw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-media-embed/-/ckeditor5-media-embed-38.1.1.tgz", + "integrity": "sha512-jWZUsJNRwVBfeTroSHcssEijCmNLgs2pJwKzJTcltyJr44se2V2kTEieCT3r0qpQvbdyw90n+MfrrlWb+S1bnQ==", "dependencies": { - "@ckeditor/ckeditor5-ui": "^35.4.0", - "ckeditor5": "^35.4.0" + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-paragraph": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-paragraph/-/ckeditor5-paragraph-35.4.0.tgz", - "integrity": "sha512-8nhkEEFv1WClhH6q/HW8P596d+dlatSVc46kQ2+jGlYirL8P66tV/nK+OiE8z1d897oVr4QPGsqk2qGkRFUChw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-paragraph/-/ckeditor5-paragraph-38.1.1.tgz", + "integrity": "sha512-IsiCDTMK5s9T1QWwiLW90VFKsNfsTUlYy8tnr/sH5t2QFP8LOkF2ZL2igb/BqyuROrGVvS8At+BTnlH3hqAW/Q==", "dependencies": { - "@ckeditor/ckeditor5-core": "^35.4.0", - "@ckeditor/ckeditor5-ui": "^35.4.0", - "@ckeditor/ckeditor5-utils": "^35.4.0" + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-paste-from-office": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-paste-from-office/-/ckeditor5-paste-from-office-35.4.0.tgz", - "integrity": "sha512-Uav1z9t52+qcu1axykcZ/NeH7JnURuZF9l0o+Pq/sNg3zjzVqB92V5cvFXg9hXeod8LzxlNLHy1BR8ZWTHeKHQ==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-paste-from-office/-/ckeditor5-paste-from-office-38.1.1.tgz", + "integrity": "sha512-xCAw3HwxfFgsZPINf6jb29MObDN2wDzZFpiMkChdjzmHqaCugd2SAssZQo/flxdy5fkMXju8gCa0bfM2g1HTkQ==", "dependencies": { - "ckeditor5": "^35.4.0" + "ckeditor5": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-select-all": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-select-all/-/ckeditor5-select-all-35.4.0.tgz", - "integrity": "sha512-c+pIIY77SP6ux4/cyD7cCrllQAqtFVSnzNYdy7ygNPqljCGngCnpSV9xfCO/blFo6/zx2vsmzVGdRq3ArzGoMg==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-select-all/-/ckeditor5-select-all-38.1.1.tgz", + "integrity": "sha512-e/JUdGsBkf902rG0g+6ii/QhDP+LFV2W9bxhrGppLahzPX09NT5BCJh2/bTtUPw0cIRpk49ji7hNBzDjCKqctQ==", "dependencies": { - "@ckeditor/ckeditor5-core": "^35.4.0", - "@ckeditor/ckeditor5-ui": "^35.4.0", - "@ckeditor/ckeditor5-utils": "^35.4.0" + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-table": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-table/-/ckeditor5-table-35.4.0.tgz", - "integrity": "sha512-u2g3CIqXO7ByrfFVqlHagPssta8hd/zSE37CjFuylc5KYVmMxcuh3TiFirKaladH92/3gjfnf+GWEC5X14mA8w==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-table/-/ckeditor5-table-38.1.1.tgz", + "integrity": "sha512-QOTc+Re3K5mY6GHC2vmglNb8k5D49cCjVlO2ORvr3Pk/Nepmk6asW3NoSfox8YJZSAfJyloD+t56FagZSokP+g==", "dependencies": { - "ckeditor5": "^35.4.0", + "ckeditor5": "38.1.1", "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-typing": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-typing/-/ckeditor5-typing-35.4.0.tgz", - "integrity": "sha512-Ad/PHWbVWcnAj9oevkkfLqf6CmvCFOti466uhvfOCKRNVf2+/xuGwleOGr8W6Lir/x/qav7ojFjKPKDxqbPXhA==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-typing/-/ckeditor5-typing-38.1.1.tgz", + "integrity": "sha512-KU0wF1ueWFwK3BnkGB2v2vpjISgwmC0OxpPM0RLHCDG5iSvIkPbu1tUj9rbxRx45JM6xgpTP1C9kEFSm5w5MoQ==", "dependencies": { - "@ckeditor/ckeditor5-core": "^35.4.0", - "@ckeditor/ckeditor5-engine": "^35.4.0", - "@ckeditor/ckeditor5-utils": "^35.4.0", + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-ui": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ui/-/ckeditor5-ui-35.4.0.tgz", - "integrity": "sha512-0SmYE+k1cYQPqyw2rQsPDV/RpudneBh1bNfiaTOz+rqViJIMe+TxiuK6Fz+znNZ05s0exr+ZHWvMttGqlVoQNw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ui/-/ckeditor5-ui-38.1.1.tgz", + "integrity": "sha512-lTqOaciupH66Zz7BSRGOm5DyjLURJwmFfZyCYCKD6+ZbTsxcP1asdiUm8y3bOx2maRCZTrHMhuAANp3qFWXoLQ==", "dependencies": { - "@ckeditor/ckeditor5-core": "^35.4.0", - "@ckeditor/ckeditor5-utils": "^35.4.0", - "lodash-es": "^4.17.15" + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "color-convert": "2.0.1", + "color-parse": "1.4.2", + "lodash-es": "^4.17.15", + "vanilla-colorful": "0.7.2" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-undo": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-undo/-/ckeditor5-undo-35.4.0.tgz", - "integrity": "sha512-0RhsK0f/pX/7KB/JXYTLiDOswmUTQ9EKIIuewAwr7LTsBf4Q309FZSFdbeTmc0wIyX33212Xh5xsi3LyG1VJRg==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-undo/-/ckeditor5-undo-38.1.1.tgz", + "integrity": "sha512-21XCRb4XKYrK2bAkNTbOUb3Cmbu4FB11cqG3ncIg2rWSHSJJOijMdvZpZBvNpXVEsvJgA2Ol7bCiSXgdVUR/yQ==", "dependencies": { - "@ckeditor/ckeditor5-core": "^35.4.0", - "@ckeditor/ckeditor5-engine": "^35.4.0", - "@ckeditor/ckeditor5-ui": "^35.4.0" + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-upload": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-upload/-/ckeditor5-upload-35.4.0.tgz", - "integrity": "sha512-+eJAluAc4mAFmx5FNuSGjkCYmbm0V9NpSleubAXEx2e+KNiLarPAnsolwRaAcYXcloNp4C9/l0D+lPEx7VRYtg==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-upload/-/ckeditor5-upload-38.1.1.tgz", + "integrity": "sha512-c7zau/N4cGJKpNPoRj0QEAQKOiIQzrSK2UCG0JsPtfF9jzTWa5fIJ/6hSHquwjtnhkB7zAL0PKXwcTNpdlyibA==", "dependencies": { - "@ckeditor/ckeditor5-core": "^35.4.0", - "@ckeditor/ckeditor5-ui": "^35.4.0", - "@ckeditor/ckeditor5-utils": "^35.4.0" + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-utils": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-utils/-/ckeditor5-utils-35.4.0.tgz", - "integrity": "sha512-sFjbb+1VYdLbELDLWVYk86WzVN7Lo3sXHbVhdr8+kc0Ufxdr3mTFHDAkiymFt2fs1FOB5gZyWJlJU+EeJnhKUw==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-utils/-/ckeditor5-utils-38.1.1.tgz", + "integrity": "sha512-+dSCchr8sseqWSfCuuOk5uajCo2Tr71IXmn3EGalEHE6Fc1GjWElO90GAA4Pbezrt1zG1tDqhh+bZHULAcK8wQ==", "dependencies": { "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", + "npm": ">=5.7.1" + } + }, + "node_modules/@ckeditor/ckeditor5-watchdog": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-watchdog/-/ckeditor5-watchdog-38.1.1.tgz", + "integrity": "sha512-NijdWJsl+vnzdtyhI0u0Ln2TEVaSLa2VEHyB7J1r57cUN9Bq5tqRH4/BhvvqGKGc9lkpbvcSFduH2c6StHm0rw==", + "dependencies": { + "lodash-es": "^4.17.15" + }, + "engines": { + "node": ">=16.0.0", "npm": ">=5.7.1" } }, "node_modules/@ckeditor/ckeditor5-widget": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-widget/-/ckeditor5-widget-35.4.0.tgz", - "integrity": "sha512-SNYOXXWu7XV1BZET+ar0Cea25836vzNtUqXlDPwBx/jrmK86b8GMbFR99P2bUG0NvtIsH5cSk7XCmnxb4ZQ6wA==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-widget/-/ckeditor5-widget-38.1.1.tgz", + "integrity": "sha512-WAQhYBRfpu5jhV7Subc8pVkHYFCgXyJ65bQg5Jn8Em86lySejXQEi/GowjKwkwzlSrceqDrELEJV9jcCaUZlaA==", "dependencies": { - "@ckeditor/ckeditor5-core": "^35.4.0", - "@ckeditor/ckeditor5-engine": "^35.4.0", - "@ckeditor/ckeditor5-enter": "^35.4.0", - "@ckeditor/ckeditor5-typing": "^35.4.0", - "@ckeditor/ckeditor5-ui": "^35.4.0", - "@ckeditor/ckeditor5-utils": "^35.4.0", + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-enter": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", "lodash-es": "^4.17.15" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, @@ -2471,6 +2496,7 @@ "version": "1.5.0", "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, "optional": true, "engines": { "node": ">=0.1.90" @@ -2498,9 +2524,9 @@ } }, "node_modules/@eonasdan/tempus-dominus": { - "version": "6.4.4", - "resolved": "https://registry.npmjs.org/@eonasdan/tempus-dominus/-/tempus-dominus-6.4.4.tgz", - "integrity": "sha512-QPxUlu+ZaJR0sERiKx1dRDxuq1NJh1jSZqf+IB7ZNG8CXBL7wOBsYAYEwSu6web3KGdzWlxfRmpgzwtR3EFgSg==", + "version": "6.7.13", + "resolved": "https://registry.npmjs.org/@eonasdan/tempus-dominus/-/tempus-dominus-6.7.13.tgz", + "integrity": "sha512-1saI7S0WM6jVE+799KjwsVwcDgrde4SUwmR9AofWGi+yq6w4j6TfVCF9rss+pMXTjSnApY17Nd70260pdm3LTA==", "funding": { "url": "https://ko-fi.com/eonasdan" }, @@ -2562,9 +2588,9 @@ "integrity": "sha512-59SgoZ3EXbkfSX7b63tsou/SDGzwUEK6MuB5sKqgVK1/XE0fxmpsOb9DQI8LXW3KfGnAjImCGhhEb7uPPAUVNA==" }, "node_modules/@fortawesome/fontawesome-free": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.4.0.tgz", - "integrity": "sha512-0NyytTlPJwB/BF5LtRV8rrABDbe3TdTXqNB3PdZ+UUUZAEIrdOJdmABqKjt4AXwIoJNaRVVZEXxpNrqvE1GAYQ==", + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.4.2.tgz", + "integrity": "sha512-m5cPn3e2+FDCOgi1mz0RexTUvvQibBebOUlUlW0+YrMjDTPkiJ6VTKukA1GRsvRw+12KyJndNjj0O4AgTxm2Pg==", "hasInstallScript": true, "engines": { "node": ">=6" @@ -2579,54 +2605,14 @@ "purgecss": "^3.1.3" } }, - "node_modules/@glimmer/env": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@glimmer/env/-/env-0.1.7.tgz", - "integrity": "sha512-JKF/a9I9jw6fGoz8kA7LEQslrwJ5jms5CXhu/aqkBWk+PmZ6pTl8mlb/eJ/5ujBGTiQzBhy5AIWF712iA+4/mw==" - }, - "node_modules/@glimmer/interfaces": { - "version": "0.56.2", - "resolved": "https://registry.npmjs.org/@glimmer/interfaces/-/interfaces-0.56.2.tgz", - "integrity": "sha512-nRgcsTuyZ90aEoCuYVHKGDs3LpAv9n/JKiJ6iecpEYtyGgcPqSI3GjrJRl6k+1s5wnldEH1kjWq+ccCiXmA99w==", - "dependencies": { - "@simple-dom/interface": "^1.4.0" - } - }, - "node_modules/@glimmer/syntax": { - "version": "0.56.2", - "resolved": "https://registry.npmjs.org/@glimmer/syntax/-/syntax-0.56.2.tgz", - "integrity": "sha512-saoBoLKYEFtcCdBes/eO4QNE/XXJBfEHo2TEVOzKjpc9kIhRKtBZ6Vn9Z1iZBGi+7Mxti83JxvRWKz2ptZd+jQ==", - "dependencies": { - "@glimmer/interfaces": "^0.56.2", - "@glimmer/util": "^0.56.2", - "handlebars": "^4.7.4", - "simple-html-tokenizer": "^0.5.9" - } - }, - "node_modules/@glimmer/util": { - "version": "0.56.2", - "resolved": "https://registry.npmjs.org/@glimmer/util/-/util-0.56.2.tgz", - "integrity": "sha512-AljXCX5HBjJkmNt4DNYmJmVvwqKjFF4lU6e0SBftwhzK85RbETYwpb3YWrghcjSCxoodwIu1zNFiKOA+xD6txw==", - "dependencies": { - "@glimmer/env": "0.1.7", - "@glimmer/interfaces": "^0.56.2", - "@simple-dom/interface": "^1.4.0" - } - }, - "node_modules/@iarna/toml": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz", - "integrity": "sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==" - }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" }, "engines": { "node": ">=6.0.0" @@ -2651,37 +2637,45 @@ } }, "node_modules/@jridgewell/source-map": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.3.tgz", - "integrity": "sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", "dev": true, "dependencies": { "@jridgewell/gen-mapping": "^0.3.0", "@jridgewell/trace-mapping": "^0.3.9" } }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "3.1.0", "@jridgewell/sourcemap-codec": "1.4.14" } }, - "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, "node_modules/@leichtgewicht/ip-codec": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", @@ -2692,6 +2686,7 @@ "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, "dependencies": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" @@ -2704,6 +2699,7 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, "engines": { "node": ">= 8" } @@ -2712,6 +2708,7 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, "dependencies": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" @@ -2721,305 +2718,14 @@ } }, "node_modules/@popperjs/core": { - "version": "2.11.6", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", - "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", "funding": { "type": "opencollective", "url": "https://opencollective.com/popperjs" } }, - "node_modules/@prettier-x/formatter-2021-01": { - "version": "0.0.1-rc01", - "resolved": "https://registry.npmjs.org/@prettier-x/formatter-2021-01/-/formatter-2021-01-0.0.1-rc01.tgz", - "integrity": "sha512-7XaAOF/IYCo+j0Fgr1Y27xIqQzNspqZphW0lG+D1BSiCc1Fbc1t+b6DbHK880oRBwUm+H6xNelwvFfjwQPtzWQ==", - "dependencies": { - "@angular/compiler": "9.0.5", - "@babel/code-frame": "7.12.13", - "@babel/parser": "7.12.11", - "@brodybits/remark-parse": "5.0.1", - "@glimmer/syntax": "0.56.2", - "@iarna/toml": "2.2.5", - "@typescript-eslint/typescript-estree": "2.34.0", - "angular-estree-parser": "1.3.1", - "angular-html-parser": "1.7.0", - "camelcase": "6.2.0", - "chalk": "4.1.1", - "ci-info": "3.2.0", - "cjk-regex": "2.0.1", - "cosmiconfig": "7.0.0", - "dashify": "2.0.0", - "dedent": "0.7.0", - "diff": "5.0.0", - "editorconfig": "0.15.3", - "editorconfig-to-prettier": "0.1.1", - "escape-string-regexp": "4.0.0", - "esutils": "2.0.3", - "fast-glob": "3.2.5", - "find-parent-dir": "0.3.1", - "find-project-root": "1.1.1", - "get-stream": "6.0.1", - "globby": "11.0.4", - "graphql": "15.5.1", - "html-element-attributes": "2.3.0", - "html-styles": "1.0.0", - "html-tag-names": "1.1.5", - "html-void-elements": "1.0.5", - "ignore": "4.0.6", - "jest-docblock": "27.0.1", - "json-stable-stringify": "1.0.1", - "leven": "3.1.0", - "lines-and-columns": "1.1.6", - "linguist-languages": "7.10.0", - "lodash": "4.17.21", - "mem": "8.1.1", - "minimatch": "3.0.4", - "minimist": "1.2.5", - "n-readlines": "1.0.1", - "please-upgrade-node": "3.2.0", - "postcss-less": "4.0.1", - "postcss-media-query-parser": "0.2.3", - "postcss-scss": "2.1.1", - "postcss-selector-parser": "2.2.3", - "postcss-values-parser": "2.0.1", - "regexp-util": "1.2.2", - "remark-math": "1.0.6", - "resolve": "1.20.0", - "semver": "7.3.5", - "srcset": "3.0.0", - "string-width": "4.2.2", - "tslib": "1.14.1", - "unicode-regex": "3.0.0", - "unified": "9.2.1", - "vnopts": "1.0.2", - "yaml-unist-parser": "1.3.1" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependenciesMeta": { - "flow-parser": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/@angular/compiler": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-9.0.5.tgz", - "integrity": "sha512-TeyhRGefTOtA9N3udMrvheafoXcz/dvTTdZLcieeZQxm1SSeaQDUQ/rUH6QTOiHVNMtjOCrZ9J5rk1A4mPYuag==", - "peerDependencies": { - "tslib": "^1.10.0" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", - "dependencies": { - "@babel/highlight": "^7.12.13" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/@babel/parser": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.11.tgz", - "integrity": "sha512-N3UxG+uuF4CMYoNj8AhnbAcJF0PiuJ9KHuy1lQmkYsxTer/MAH9UBNHsBoAX/4s6NvlDD047No8mYVGGzLL4hg==", - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/angular-estree-parser": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/angular-estree-parser/-/angular-estree-parser-1.3.1.tgz", - "integrity": "sha512-jvlnNk4aoEmA6EKK12OnsOkCSdsWleBsYB+aWyH8kpfTB6Li1kxWVbHKVldH9zDCwVVi1hXfqPi/gbSv49tkbQ==", - "dependencies": { - "lines-and-columns": "^1.1.6", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "@angular/compiler": ">= 6.0.0 < 9.0.6" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/cosmiconfig": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", - "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/fast-glob": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz", - "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.0", - "merge2": "^1.3.0", - "micromatch": "^4.0.2", - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/globby": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", - "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/globby/node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/lines-and-columns": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", - "integrity": "sha512-8ZmlJFVK9iCmtLz19HpSsR8HaAMWBT284VMNednLwlIMDP2hJDCIhUp0IZ2xUcZ+Ob6BM0VvCSJwzASDM45NLQ==" - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/postcss-selector-parser": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz", - "integrity": "sha512-3pqyakeGhrO0BQ5+/tGTfvi5IAUAhHRayGK8WFSu06aEv2BmHoXw/Mhb+w7VY5HERIuC+QoUI7wgrCcq2hqCVA==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", - "dependencies": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@prettier-x/formatter-2021-01/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/@romainberger/css-diff": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@romainberger/css-diff/-/css-diff-1.0.3.tgz", @@ -3073,15 +2779,6 @@ "node": ">=0.8.0" } }, - "node_modules/@romainberger/css-diff/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/@romainberger/css-diff/node_modules/has-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", @@ -3144,11 +2841,6 @@ "resolved": "https://registry.npmjs.org/@shopify/draggable/-/draggable-1.0.0-beta.12.tgz", "integrity": "sha512-Un/Dn61sv2er9yjDXLGWMauCOWBb0BMbm0yzmmrD+oUX2/x50yhNJASTsCRdndUCpWlqYfZH8jEfaOgTPsKc/g==" }, - "node_modules/@simple-dom/interface": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@simple-dom/interface/-/interface-1.4.0.tgz", - "integrity": "sha512-l5qumKFWU0S+4ZzMaLXFU8tQZsicHEMEyAxI5kDFGhJsRqDwe0a7/iPA/GdxlGyDKseQQAgIz5kzU7eXTrlSpA==" - }, "node_modules/@terraformer/arcgis": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/@terraformer/arcgis/-/arcgis-2.1.2.tgz", @@ -3261,9 +2953,9 @@ } }, "node_modules/@types/eslint": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.37.0.tgz", - "integrity": "sha512-Piet7dG2JBuDIfohBngQ3rCt7MgO9xCO4xIMKxBThCq5PNRB91IjlJ10eJVwfoNtvTErmxLzwBZ7rHZtbOMmFQ==", + "version": "8.21.3", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.3.tgz", + "integrity": "sha512-fa7GkppZVEByMWGbTtE5MbmXWJTVbrjjaS8K6uQj+XtuuUv1fsuPAxhygfqLmsb/Ufb3CV8deFCpiMfAgi00Sw==", "dev": true, "dependencies": { "@types/estree": "*", @@ -3281,9 +2973,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", - "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==", + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", "dev": true }, "node_modules/@types/express": { @@ -3407,15 +3099,16 @@ "dev": true }, "node_modules/@types/node": { - "version": "18.15.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz", - "integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==", + "version": "18.15.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.3.tgz", + "integrity": "sha512-p6ua9zBxz5otCmbpb5D3U4B5Nanw6Pk3PPyX05xnxbB/fRv71N7CPmORg7uAD5P70T0xmx1pzAx/FUfa5X+3cw==", "dev": true }, "node_modules/@types/parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==" + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true }, "node_modules/@types/q": { "version": "1.5.5", @@ -3480,11 +3173,6 @@ "integrity": "sha512-AZU7vQcy/4WFEuwnwsNsJnFwupIpbllH1++LXScN6uxT1Z4zPzdrWG97w4/I7eFKFTvfy/bHFStWjdBAg2Vjug==", "dev": true }, - "node_modules/@types/unist": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", - "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" - }, "node_modules/@types/ws": { "version": "8.5.4", "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz", @@ -3494,32 +3182,6 @@ "@types/node": "*" } }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "2.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz", - "integrity": "sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==", - "dependencies": { - "debug": "^4.1.1", - "eslint-visitor-keys": "^1.1.0", - "glob": "^7.1.6", - "is-glob": "^4.0.1", - "lodash": "^4.17.15", - "semver": "^7.3.2", - "tsutils": "^3.17.1" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, "node_modules/@vue/reactivity": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz", @@ -3730,9 +3392,13 @@ "dev": true }, "node_modules/@yaireo/tagify": { - "version": "4.17.8", - "resolved": "https://registry.npmjs.org/@yaireo/tagify/-/tagify-4.17.8.tgz", - "integrity": "sha512-MqU3JhE/35r8qZPgfLshXfOkTkgtFEXh2Ja8J3Nn1rPuut28yorJLtxH67jbrbanE1gFH2vCvxe6meqM6oZ8rA==", + "version": "4.17.9", + "resolved": "https://registry.npmjs.org/@yaireo/tagify/-/tagify-4.17.9.tgz", + "integrity": "sha512-x9aZy22hzte7BNmMrFcYNrZH71ombgH5PnzcOVXqPevRV/m/ItSnWIvY5fOHYzpC9Uxy0+h/1P5v62fIvwq2MA==", + "engines": { + "node": ">=14.20.0", + "npm": ">=8.0.0" + }, "peerDependencies": { "prop-types": "^15.7.2" } @@ -3756,9 +3422,9 @@ } }, "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", "bin": { "acorn": "bin/acorn" }, @@ -3918,22 +3584,6 @@ "node": ">=0.4.2" } }, - "node_modules/angular-html-parser": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/angular-html-parser/-/angular-html-parser-1.7.0.tgz", - "integrity": "sha512-/yjeqDQXGblZuFMI6vpDgiIDuv816QpIqa/mCotc0I4R0F5t5sfX1ntZ8VsBVQOUYRjPw8ggYlPZto76gHtf7Q==", - "dependencies": { - "tslib": "^1.9.3" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/angular-html-parser/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, "node_modules/ansi-html-community": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", @@ -3950,6 +3600,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, "engines": { "node": ">=8" } @@ -3981,9 +3632,9 @@ } }, "node_modules/apexcharts": { - "version": "3.37.3", - "resolved": "https://registry.npmjs.org/apexcharts/-/apexcharts-3.37.3.tgz", - "integrity": "sha512-+rnUui9uC3Mvh9qbQxUfqBnuJ0nAJOYTp+yKnA5bVmmndKXj5X/Q+OVIxkq0Jr5ysiK200Dsg1Tuz/OUG+DEpw==", + "version": "3.41.0", + "resolved": "https://registry.npmjs.org/apexcharts/-/apexcharts-3.41.0.tgz", + "integrity": "sha512-FJXA7NVjxs1q+ptR3b1I+pN8K/gWuXn+qLZjFz8EHvJOokdgcuwa/HSe5aC465HW/LWnrjWLSTsOQejQbQ42hQ==", "dependencies": { "svg.draggable.js": "^2.2.2", "svg.easing.js": "^2.0.0", @@ -4030,6 +3681,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, "engines": { "node": ">=8" } @@ -4126,8 +3778,7 @@ "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, "node_modules/atoa": { "version": "1.0.0", @@ -4168,9 +3819,9 @@ } }, "node_modules/autosize": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/autosize/-/autosize-5.0.2.tgz", - "integrity": "sha512-FPVt5ynkqUAA9gcMZnJHka1XfQgr1WNd/yRfIjmj5WGmjua+u5Hl9hn8M2nU5CNy2bEIcj1ZUwXq7IOHsfZG9w==" + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/autosize/-/autosize-6.0.1.tgz", + "integrity": "sha512-f86EjiUKE6Xvczc4ioP1JBlWG7FKrE13qe/DxBCpe8GCipCq2nFw73aO8QEBKHfSbYGDN5eB9jXWKen7tspDqQ==" }, "node_modules/available-typed-arrays": { "version": "1.0.5", @@ -4185,10 +3836,9 @@ } }, "node_modules/axios": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.3.5.tgz", - "integrity": "sha512-glL/PvG/E+xCWwV8S6nCHcrfg1exGx7vxyUIivIA1iL7BIh6bePylCfVHwp6k13ao7SATxB6imau2kqY+I67kw==", - "dev": true, + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.0.tgz", + "integrity": "sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ==", "dependencies": { "follow-redirects": "^1.15.0", "form-data": "^4.0.0", @@ -4262,15 +3912,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/bail": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", - "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -4385,9 +4026,9 @@ "dev": true }, "node_modules/bonjour-service": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.1.tgz", - "integrity": "sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz", + "integrity": "sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q==", "dev": true, "dependencies": { "array-flatten": "^2.1.2", @@ -4403,9 +4044,9 @@ "dev": true }, "node_modules/bootstrap": { - "version": "5.3.0-alpha1", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.0-alpha1.tgz", - "integrity": "sha512-ABZpKK4ObS3kKlIqH+ZVDqoy5t/bhFG0oHTAzByUdon7YIom0lpCeTqRniDzJmbtcWkNe800VVPBiJgxSYTYew==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.0.tgz", + "integrity": "sha512-UnBV3E3v4STVNQdms6jSGO2CvOkjUMdDAVR2V5N4uCMdaIkaQjbcEAMqRimDHIs4uqBYzDAKCQwCB+97tJgHQw==", "funding": [ { "type": "github", @@ -4417,7 +4058,7 @@ } ], "peerDependencies": { - "@popperjs/core": "^2.11.6" + "@popperjs/core": "^2.11.7" } }, "node_modules/bootstrap-cookie-alert": { @@ -4435,9 +4076,9 @@ } }, "node_modules/bootstrap-icons": { - "version": "1.10.4", - "resolved": "https://registry.npmjs.org/bootstrap-icons/-/bootstrap-icons-1.10.4.tgz", - "integrity": "sha512-eI3HyIUmpGKRiRv15FCZccV+2sreGE2NnmH8mtxV/nPOzQVu0sPEj8HhF1MwjJ31IhjF0rgMvtYOX5VqIzcb/A==" + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/bootstrap-icons/-/bootstrap-icons-1.10.3.tgz", + "integrity": "sha512-7Qvj0j0idEm/DdX9Q0CpxAnJYqBCFCiUI6qzSPYfERMcokVuV9Mdm/AJiVZI8+Gawe4h/l6zFcOzvV7oXCZArw==" }, "node_modules/bootstrap-maxlength": { "version": "1.10.1", @@ -4753,6 +4394,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, "engines": { "node": ">=6" } @@ -4767,17 +4409,6 @@ "tslib": "^2.0.3" } }, - "node_modules/camelcase": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", - "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/caniuse-api": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", @@ -4791,9 +4422,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001478", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001478.tgz", - "integrity": "sha512-gMhDyXGItTHipJj2ApIvR+iVB5hd0KP3svMWWXDvZOmjzJJassGLMfxRkQCSYgGd2gtdL/ReeiyvMSFD1Ss6Mw==", + "version": "1.0.30001563", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001563.tgz", + "integrity": "sha512-na2WUmOxnwIZtwnFI2CZ/3er0wdNzU7hN+cPYz/z2ajHThnkWjNBOpEPP4n+4r2WPM847JaMotaJE3bnfzjyKw==", "dev": true, "funding": [ { @@ -4825,33 +4456,6 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/charenc": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", @@ -4901,11 +4505,6 @@ "node": ">=6.0" } }, - "node_modules/ci-info": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.2.0.tgz", - "integrity": "sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==" - }, "node_modules/cipher-base": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", @@ -4916,49 +4515,27 @@ "safe-buffer": "^5.0.1" } }, - "node_modules/cjk-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/cjk-regex/-/cjk-regex-2.0.1.tgz", - "integrity": "sha512-4YTL4Zxzy33EhD2YMBQg6qavT+3OrYYu45RHcLANXhbVTXmVcwNQIv0vL1TUWjOS7bH0n0dVcGAdJAGzWSAa3A==", - "dependencies": { - "regexp-util": "^1.2.1", - "unicode-regex": "^2.0.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/cjk-regex/node_modules/unicode-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-regex/-/unicode-regex-2.0.0.tgz", - "integrity": "sha512-5nbEG2YU7loyTvPABaKb+8B0u8L7vWCsVmCSsiaO249ZdMKlvrXlxR2ex4TUVAdzv/Cne/TdoXSSaJArGXaleQ==", - "dependencies": { - "regexp-util": "^1.2.0" - }, - "engines": { - "node": ">= 4" - } - }, "node_modules/ckeditor5": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/ckeditor5/-/ckeditor5-35.4.0.tgz", - "integrity": "sha512-vBEQVkFCbjYmEPVkyWsOqU44DOovUio6xBuCwroe4TuJLplqeRasCjFwB0DPknXQU8U0iM3Lh/QSKRyN92pw3Q==", + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/ckeditor5/-/ckeditor5-38.1.1.tgz", + "integrity": "sha512-KE6H2WGLlhlI4F//AZn+fv52DhbwAeVv+ZeSIsa5gC81/3ZCzuYc3+IMur/70IBE9Gze8gKwFP9elh/TIaQ5Hw==", "dependencies": { - "@ckeditor/ckeditor5-clipboard": "^35.4.0", - "@ckeditor/ckeditor5-core": "^35.4.0", - "@ckeditor/ckeditor5-engine": "^35.4.0", - "@ckeditor/ckeditor5-enter": "^35.4.0", - "@ckeditor/ckeditor5-paragraph": "^35.4.0", - "@ckeditor/ckeditor5-select-all": "^35.4.0", - "@ckeditor/ckeditor5-typing": "^35.4.0", - "@ckeditor/ckeditor5-ui": "^35.4.0", - "@ckeditor/ckeditor5-undo": "^35.4.0", - "@ckeditor/ckeditor5-upload": "^35.4.0", - "@ckeditor/ckeditor5-utils": "^35.4.0", - "@ckeditor/ckeditor5-widget": "^35.4.0" + "@ckeditor/ckeditor5-clipboard": "38.1.1", + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-enter": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-select-all": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-undo": "38.1.1", + "@ckeditor/ckeditor5-upload": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "@ckeditor/ckeditor5-watchdog": "38.1.1", + "@ckeditor/ckeditor5-widget": "38.1.1" }, "engines": { - "node": ">=14.0.0", + "node": ">=16.0.0", "npm": ">=5.7.1" } }, @@ -4987,6 +4564,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "dev": true, "dependencies": { "string-width": "^4.2.0" }, @@ -5098,15 +4676,6 @@ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, - "node_modules/coa/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/coa/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -5128,19 +4697,10 @@ "node": ">=4" } }, - "node_modules/collapse-white-space": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", - "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/collect.js": { - "version": "4.36.1", - "resolved": "https://registry.npmjs.org/collect.js/-/collect.js-4.36.1.tgz", - "integrity": "sha512-jd97xWPKgHn6uvK31V6zcyPd40lUJd7gpYxbN2VOVxGWO4tyvS9Li4EpsFjXepGTo2tYcOTC4a8YsbQXMJ4XUw==", + "version": "4.34.3", + "resolved": "https://registry.npmjs.org/collect.js/-/collect.js-4.34.3.tgz", + "integrity": "sha512-aFr67xDazPwthsGm729mnClgNuh15JEagU6McKBKqxuHOkWL7vMFzGbhsXDdPZ+H6ia5QKIMGYuGOMENBHnVpg==", "dev": true }, "node_modules/color": { @@ -5169,6 +4729,14 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "node_modules/color-parse": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.2.tgz", + "integrity": "sha512-RI7s49/8yqDj3fECFZjUI1Yi0z/Gq1py43oNJivAIIDSyJiOZLfYCRQEgn8HEVAj++PcRe8AnL2XF0fRJ3BTnA==", + "dependencies": { + "color-name": "^1.0.0" + } + }, "node_modules/color-string": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", @@ -5219,7 +4787,6 @@ "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, "dependencies": { "delayed-stream": "~1.0.0" }, @@ -5416,9 +4983,9 @@ "dev": true }, "node_modules/core-js-compat": { - "version": "3.30.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.30.1.tgz", - "integrity": "sha512-d690npR7MC6P0gq4npTl5n2VQeNAmUrJ90n+MHiKS7W2+xno4o3F5GDEuylSdi6EJ3VssibSGXOa1r3YXD3Mhw==", + "version": "3.29.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.1.tgz", + "integrity": "sha512-QmchCua884D8wWskMX8tW5ydINzd8oSJVx38lx/pVkFGqztxt73GYre3pm/hyYq8bPf+MW5In4I/uRShFDsbrA==", "dev": true, "dependencies": { "browserslist": "^4.21.5" @@ -5570,9 +5137,9 @@ } }, "node_modules/css-declaration-sorter": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.0.tgz", - "integrity": "sha512-jDfsatwWMWN0MODAFuHszfjphEXfNw9JUAhmY4pLu3TyTU+ohUpsbVtbU+1MZn4a47D9kqh03i4eyOm+74+zew==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", + "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", "dev": true, "engines": { "node": "^10 || ^12 || >=14" @@ -5876,215 +5443,205 @@ "resolved": "https://registry.npmjs.org/dash-ast/-/dash-ast-2.0.1.tgz", "integrity": "sha512-5TXltWJGc+RdnabUGzhRae1TRq6m4gr+3K2wQX0is5/F2yS6MJXJvLyI3ErAnsAXuJoGqvfVD5icRgim07DrxQ==" }, - "node_modules/dashify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dashify/-/dashify-2.0.0.tgz", - "integrity": "sha512-hpA5C/YrPjucXypHPPc0oJ1l9Hf6wWbiOL7Ik42cxnsUOhWiCB/fylKbKqqJalW9FgkNQCw16YO8uW9Hs0Iy1A==", - "engines": { - "node": ">=4" - } - }, "node_modules/datatables.net": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.13.4.tgz", - "integrity": "sha512-yzhArTOB6tPO2QFKm1z3hA4vabtt2hRvgw8XLsT1xqEirinfGYqWDiWXlkTPTaJv2e7gG+Kf985sXkzBFlGrGQ==", + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.13.6.tgz", + "integrity": "sha512-rHNcnW+yEP9me82/KmRcid5eKrqPqW3+I/p1TwqCW3c/7GRYYkDyF6aJQOQ9DNS/pw+nyr4BVpjyJ3yoZXiFPg==", "dependencies": { "jquery": ">=1.7" } }, "node_modules/datatables.net-bs5": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/datatables.net-bs5/-/datatables.net-bs5-1.13.4.tgz", - "integrity": "sha512-+gtaiau4vJeuGvnsYWmQy9gqa5XQ15XmkdwpK5EjwYCMzZZEXMQ3wfu2FddBcX5tX9Ual8C+Tf1s2gmqLGNbKQ==", + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/datatables.net-bs5/-/datatables.net-bs5-1.13.6.tgz", + "integrity": "sha512-lXroZoXhLhDulp8gvU7y7wBherg38SbLMGXcHwbnj+XXh4Hvy+d67zSPYbrVI3YiRwYq+aCx15G5qmMj7KjYQg==", "dependencies": { - "datatables.net": ">=1.12.1", + "datatables.net": ">=1.13.4", "jquery": ">=1.7" } }, "node_modules/datatables.net-buttons": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/datatables.net-buttons/-/datatables.net-buttons-2.3.6.tgz", - "integrity": "sha512-9eid5D2kbTNfGCOiEx5WBHlwfK38W1LMz0AiNZHoSqKAiO0aXGfzrH7L2eY6reHgVMaPvHPAnqeRAjvOul2V/Q==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/datatables.net-buttons/-/datatables.net-buttons-2.4.2.tgz", + "integrity": "sha512-ps88Wk6yju8hPyqIPhHZ9xhL+pAfgoiI1nZsyPswvqk84kzcqgj1nmulSSLMYNwFG8awsU8C94gF+Pf+JhDh7g==", "dependencies": { - "datatables.net": ">=1.12.1", + "datatables.net": ">=1.13.4", "jquery": ">=1.7" } }, "node_modules/datatables.net-buttons-bs5": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/datatables.net-buttons-bs5/-/datatables.net-buttons-bs5-2.3.6.tgz", - "integrity": "sha512-rAeK04RvvtfV9Wm893t7jsIcqT/ew1uwLus37uCg2CL2gcXZcb4qR7/mLcL1I80Rz5g+8LeO5ANPAWUnfzaUqg==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/datatables.net-buttons-bs5/-/datatables.net-buttons-bs5-2.4.2.tgz", + "integrity": "sha512-FIapzeW8zBZJ6/yjnbXn22gjk0ONSLykFRfxiU5w1Zjnn2e3fPSi/xN9l9NagRXFvRO80zacC4nYmYOc2cXKfg==", "dependencies": { - "datatables.net-bs5": ">=1.12.1", - "datatables.net-buttons": ">=2.2.3", + "datatables.net-bs5": ">=1.13.4", + "datatables.net-buttons": ">=2.3.6", "jquery": ">=1.7" } }, "node_modules/datatables.net-colreorder": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/datatables.net-colreorder/-/datatables.net-colreorder-1.6.2.tgz", - "integrity": "sha512-PrBzZA2mzBsI6NAMbgUykSdmZ3VJsf46chkeBy/1oiyArGc1e1/a5PLyb0HybkbZaFPWxeGxDAEJDVesC7j9pA==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/datatables.net-colreorder/-/datatables.net-colreorder-1.7.0.tgz", + "integrity": "sha512-Vyysfxe2kfjeuPJJMGRQ2jHVOfoadyBYKzizbOHzR2bhTVsIYjrbEhUA1H24TISE17SdR77X0RmcUvS/h/Bifw==", "dependencies": { - "datatables.net": ">=1.12.1", + "datatables.net": ">=1.13.4", "jquery": ">=1.7" } }, "node_modules/datatables.net-colreorder-bs5": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/datatables.net-colreorder-bs5/-/datatables.net-colreorder-bs5-1.6.2.tgz", - "integrity": "sha512-NDNWmI/Wq0Jo6ZHZKynnmXeAoN4jAbjcEstOz3m5JFO7BsJoC+XdpfO3aPGuYVpwHfnVZJFb0ZG/mBBwr604Zg==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/datatables.net-colreorder-bs5/-/datatables.net-colreorder-bs5-1.7.0.tgz", + "integrity": "sha512-rqTry8MjF4+ImYqn7mqWp54Bf41DfCoqVLV/4RnaM5YZdSfmeQ+Q3Cp3VcL0/CoIDUIcz0MlexzkhSnYU+L9hA==", "dependencies": { - "datatables.net-bs5": ">=1.12.1", - "datatables.net-colreorder": ">=1.5.6", + "datatables.net-bs5": ">=1.13.4", + "datatables.net-colreorder": ">=1.6.2", "jquery": ">=1.7" } }, "node_modules/datatables.net-datetime": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/datatables.net-datetime/-/datatables.net-datetime-1.4.0.tgz", - "integrity": "sha512-mPyq8QEDyXAG3JUCS4ch9OeafvkubVqO+066x3/Y7ZWwp5kA4Dhv00Z1+U6/N9RZScdrxbd53LKW+qgg0Los1w==" + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/datatables.net-datetime/-/datatables.net-datetime-1.5.0.tgz", + "integrity": "sha512-MyqPiaLVcf51rkAmUww1GFeJeLl9XqVXOOHMWw8NrR/5usaTINO3gORXYuH9QQSf4wWUs7naWWgyHczxKPWu6g==" }, "node_modules/datatables.net-fixedcolumns": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/datatables.net-fixedcolumns/-/datatables.net-fixedcolumns-4.2.2.tgz", - "integrity": "sha512-Ml4aaBd3BjT2tho2oWREH1utFGklosckjunQwmvppRv5EwKpDWuGBzRsV1+tpdl+CJsldYRyw55C/lN2avBtew==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/datatables.net-fixedcolumns/-/datatables.net-fixedcolumns-4.3.0.tgz", + "integrity": "sha512-H2otCswJDHufI4A8k7HUDj25HCB3a44KFnBlYEwYFWdrJayLcYB3I79kBjS8rSCu4rFEp0I9nVLKvWgKlZZgCQ==", "dependencies": { - "datatables.net": ">=1.12.1", + "datatables.net": ">=1.13.4", "jquery": ">=1.7" } }, "node_modules/datatables.net-fixedcolumns-bs5": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/datatables.net-fixedcolumns-bs5/-/datatables.net-fixedcolumns-bs5-4.2.2.tgz", - "integrity": "sha512-P9xxsZNhMkpFq5N4zb0XCdujT4WmDOOq92j5RTZ8lGBKonQ+8qFNinIaWwwCMC8eyIWF2kNNOsD9G/yjeX4Rzg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/datatables.net-fixedcolumns-bs5/-/datatables.net-fixedcolumns-bs5-4.3.0.tgz", + "integrity": "sha512-DvBRTfFlvZAqUErXYgkQLcF70sL5zBSJNsaWLF3in++sYHZDfY3fdVqHu0NQMTE0QuwmYh61AgJUrtWLrp7zwQ==", "dependencies": { - "datatables.net-bs5": ">=1.12.1", - "datatables.net-fixedcolumns": ">=4.1.0", + "datatables.net-bs5": ">=1.13.4", + "datatables.net-fixedcolumns": ">=4.2.2", "jquery": ">=1.7" } }, "node_modules/datatables.net-fixedheader": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/datatables.net-fixedheader/-/datatables.net-fixedheader-3.3.2.tgz", - "integrity": "sha512-jhXC3Ce/hj34zZWCLXLtHUcnTqzV3LYq97xdpIBzvIbKTA/dPwVNP+vvrr2vNh6iWkohljuq8Jvf/IR2BmGn5Q==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/datatables.net-fixedheader/-/datatables.net-fixedheader-3.4.0.tgz", + "integrity": "sha512-qglLTqo/T0IJq0Lp7Ca7wEo50T1iqUO2+YeVG4Ddy6ML5f66B7mLZLzP6yy8zXACFjlRGBDEDxD0ato3g6tviA==", "dependencies": { - "datatables.net": ">=1.12.1", + "datatables.net": ">=1.13.4", "jquery": ">=1.7" } }, "node_modules/datatables.net-fixedheader-bs5": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/datatables.net-fixedheader-bs5/-/datatables.net-fixedheader-bs5-3.3.2.tgz", - "integrity": "sha512-OlZf2fCPFiv3c/u37zRLUMvalpbDtqunh/y3GQp2uQ282jQ+lcIB1JD3dWJO//x2jnOfxWUlUWRGc/PMZJHVTw==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/datatables.net-fixedheader-bs5/-/datatables.net-fixedheader-bs5-3.4.0.tgz", + "integrity": "sha512-x2dTTrsZnm8ah7DJSF40XAiUGEk3oAdBMtrucfZM8TnbU8ekhe+LJAbSj4epDXBr8BAfnVi3KMlfiZKEsa5lRQ==", "dependencies": { - "datatables.net-bs5": ">=1.12.1", - "datatables.net-fixedheader": ">=3.2.4", + "datatables.net-bs5": ">=1.13.4", + "datatables.net-fixedheader": ">=3.3.2", "jquery": ">=1.7" } }, "node_modules/datatables.net-plugins": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/datatables.net-plugins/-/datatables.net-plugins-1.13.4.tgz", - "integrity": "sha512-EhFWMvBxbVAX3IMZbc/jxoxT9mhvlxkGRvwIKqJ+6zTznACNncvBRhI04ztthkDgKro8txEVZn2BDTyTui2n4Q==", + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/datatables.net-plugins/-/datatables.net-plugins-1.13.6.tgz", + "integrity": "sha512-CPLH+09OiEAP3PKbZH7u2qcLajgHhy4fBHCdLzjGWJwKbIkhaPu7tby4jZHQXqoolUznbm3TEpJj4eMI1eqcGw==", "dependencies": { "@types/jquery": "^3.5.16", - "datatables.net": "^1.13.2", - "prettier-plugin-x": "^0.0.10", - "typescript": "^4.9.5" + "datatables.net": "^1.13.2" } }, "node_modules/datatables.net-responsive": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/datatables.net-responsive/-/datatables.net-responsive-2.4.1.tgz", - "integrity": "sha512-6aGZybNb65lRPtd+hPHRyaBgs7D3R2Hw+RQP7he3qH5BTpMH9BG4FxVvyAud0Q4gyopO9I52uf60p2GT++4qOA==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/datatables.net-responsive/-/datatables.net-responsive-2.5.0.tgz", + "integrity": "sha512-GL7DFiRl5qqrp5ql54Psz92xTGPR0rMcrO3hzNxMfvcfpRGL5zFNTvMpTUh59Erm6u1+KoX+j+Ig1ZD3r0iFsA==", "dependencies": { - "datatables.net": ">=1.12.1", + "datatables.net": ">=1.13.4", "jquery": ">=1.7" } }, "node_modules/datatables.net-responsive-bs5": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/datatables.net-responsive-bs5/-/datatables.net-responsive-bs5-2.4.1.tgz", - "integrity": "sha512-gtW0IjNMWCWQ+KHpIPcgXiQrq2Dhxz8yKql4sS2WfuYz+Z7645mk7xmqEhy4aqpWEGXdv4rcaZhr4tt49NLOpQ==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/datatables.net-responsive-bs5/-/datatables.net-responsive-bs5-2.5.0.tgz", + "integrity": "sha512-GklXpvBKOal11chL9l8RiQsvKYEZwxKA50pgwlkrbxrmRmqMH7+sMvLSE42QQCa5E5fWqtYsYdTY+SNkHfa+qA==", "dependencies": { - "datatables.net-bs5": ">=1.12.1", - "datatables.net-responsive": ">=2.3.0", + "datatables.net-bs5": ">=1.13.4", + "datatables.net-responsive": ">=2.4.1", "jquery": ">=1.7" } }, "node_modules/datatables.net-rowgroup": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/datatables.net-rowgroup/-/datatables.net-rowgroup-1.3.1.tgz", - "integrity": "sha512-jMo5kD8SsyLV+tCqIlFVijUKhqHXRddfIN5N9ozU3VHxeDPuwvz0cJdNoUcdp0JJbBzLDh/9tu7yZvgGIf2b+Q==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/datatables.net-rowgroup/-/datatables.net-rowgroup-1.4.0.tgz", + "integrity": "sha512-IyiEqCBA6B49EMm/SvW2dktZvHJCybD30qvYPehQ4Jd9QfRLgQxZtNXNsv0sFG2SX7j7+QlnJoKUb2/zdt4OQw==", "dependencies": { - "datatables.net": ">=1.12.1", + "datatables.net": ">=1.13.4", "jquery": ">=1.7" } }, "node_modules/datatables.net-rowgroup-bs5": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/datatables.net-rowgroup-bs5/-/datatables.net-rowgroup-bs5-1.3.1.tgz", - "integrity": "sha512-bQ3RACLA4SZx35qkOteIo84xkGv9OrTYHtL1GbJclXoF9AdklwUYo/aQGb3m6/AChNC038PPAEgnJYthMPDiLA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/datatables.net-rowgroup-bs5/-/datatables.net-rowgroup-bs5-1.4.0.tgz", + "integrity": "sha512-vdz2Ini/78Aw2FDOl+ynJsmISACYOJukWokqHwddVsOzj46BNlhB/kD2OD4B1Ai/Q4Vtiogp9doTy6UGz6Ru4g==", "dependencies": { - "datatables.net-bs5": ">=1.12.1", - "datatables.net-rowgroup": ">=1.2.0", + "datatables.net-bs5": ">=1.13.4", + "datatables.net-rowgroup": ">=1.3.1", "jquery": ">=1.7" } }, "node_modules/datatables.net-rowreorder": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/datatables.net-rowreorder/-/datatables.net-rowreorder-1.3.3.tgz", - "integrity": "sha512-QzRzYw2NGIP2snlf4tN6BsyvVvngmstj7Uk5KX412IZG3FOyyXCbBaNKl9+zKiVXIZtXJCeeRpOrApoGdwWKXA==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/datatables.net-rowreorder/-/datatables.net-rowreorder-1.4.1.tgz", + "integrity": "sha512-N5iS2Sts7DSfukPP9B/AVCYmn/5Yjw51Sui/HT/cuDl3QHm9aNulUqIrUBDPqmeqfrKQModbTvh8MfljdMzw3A==", "dependencies": { - "datatables.net": ">=1.12.1", + "datatables.net": ">=1.13.4", "jquery": ">=1.7" } }, "node_modules/datatables.net-rowreorder-bs5": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/datatables.net-rowreorder-bs5/-/datatables.net-rowreorder-bs5-1.3.3.tgz", - "integrity": "sha512-gu5HnGopmeS+eJf4K4AaS0H4jH9/P78dZfJr0cpJFz7PPzGAMPsj6OWP4nOiGPH5xGpIp/2napYtG2LJoibkZQ==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/datatables.net-rowreorder-bs5/-/datatables.net-rowreorder-bs5-1.4.1.tgz", + "integrity": "sha512-hRFlON9feppkISldXaX/Rz5UgRI8RVq25aOZ8fo8idbk3o78piQ6lyYBl6twXVLfUiexFKp6PlraoMLPhbpniA==", "dependencies": { - "datatables.net-bs5": ">=1.12.1", - "datatables.net-rowreorder": ">=1.2.8", + "datatables.net-bs5": ">=1.13.4", + "datatables.net-rowreorder": ">=1.3.3", "jquery": ">=1.7" } }, "node_modules/datatables.net-scroller": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/datatables.net-scroller/-/datatables.net-scroller-2.1.1.tgz", - "integrity": "sha512-TO3SYGR4DFkWIvM59Ymm2Eb7QcIBFQjdD+6N8+XYd25skfWme0q/NBa3YGoCpKjbhBgssNk8lsHqqjj8L4JPww==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/datatables.net-scroller/-/datatables.net-scroller-2.2.0.tgz", + "integrity": "sha512-+erNWYqb8qTGhtt23Weh/i2XuEPthHGtZobAEEqpTZSg7IXMl6jKDh41LAI0+KfvzSPURK1ttVRBtigyNS/zyA==", "dependencies": { - "datatables.net": ">=1.12.1", + "datatables.net": ">=1.13.4", "jquery": ">=1.7" } }, "node_modules/datatables.net-scroller-bs5": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/datatables.net-scroller-bs5/-/datatables.net-scroller-bs5-2.1.1.tgz", - "integrity": "sha512-crUK5LM0fxg19sD8FSHu5WwPO9hf6LpDCg2ZL6xhMUZHx6il/ejvpZAF4cG28wOisz1hKzLEnfxg4lp26otyJA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/datatables.net-scroller-bs5/-/datatables.net-scroller-bs5-2.2.0.tgz", + "integrity": "sha512-eWTgy41lpPRUoTTAspbZLWBQvsexXCVSFNapBPXX4lx1HopMM0fQ5Hxy+liU8IyuBMCHUqO1RxY/URPyWrCtuQ==", "dependencies": { - "datatables.net-bs5": ">=1.12.1", - "datatables.net-scroller": ">=2.0.7", + "datatables.net-bs5": ">=1.13.4", + "datatables.net-scroller": ">=2.1.1", "jquery": ">=1.7" } }, "node_modules/datatables.net-select": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/datatables.net-select/-/datatables.net-select-1.6.2.tgz", - "integrity": "sha512-mGkWFGEN8vLJGp9POHA+CHDBIcWGOpos6mtuZ/S3hKF+niTZivqRuXybd79iDG8OHw3yRbafBIsHtcXcZxoG/g==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/datatables.net-select/-/datatables.net-select-1.7.0.tgz", + "integrity": "sha512-ps8eL8S2gUV7EdzMraw8mfQlHXpfuc8TC2onBxdk0snP8eizPe85VhpI3r4ULvPRTTI7vcViz8E7JV8aayA2lw==", "dependencies": { - "datatables.net": ">=1.12.1", + "datatables.net": ">=1.13.4", "jquery": ">=1.7" } }, "node_modules/datatables.net-select-bs5": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/datatables.net-select-bs5/-/datatables.net-select-bs5-1.6.2.tgz", - "integrity": "sha512-lq1LyZRZzp4pNIm548m2B7zVPG/OKzq3nWAddAWkqEz1MJuOu5I4d58TwN0YmWuOOYyj1gADbM4qM9bzqfS+5A==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/datatables.net-select-bs5/-/datatables.net-select-bs5-1.7.0.tgz", + "integrity": "sha512-9lDH+V+9ewaVSpKUFMplmpxEBM6eeUl0C+feGD4BRKkrFhMAzVYfuLibm4/gJvG0burQciO9U9eoLI9ywdiWWw==", "dependencies": { - "datatables.net-bs5": ">=1.12.1", - "datatables.net-select": ">=1.4.0", + "datatables.net-bs5": ">=1.13.4", + "datatables.net-select": ">=1.6.2", "jquery": ">=1.7" } }, @@ -6092,6 +5649,7 @@ "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, "dependencies": { "ms": "2.1.2" }, @@ -6104,11 +5662,6 @@ } } }, - "node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==" - }, "node_modules/deep-equal": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", @@ -6192,7 +5745,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "dev": true, "engines": { "node": ">=0.4.0" } @@ -6231,14 +5783,6 @@ "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "engines": { - "node": ">=8" - } - }, "node_modules/detect-node": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", @@ -6250,14 +5794,6 @@ "resolved": "https://registry.npmjs.org/dfa/-/dfa-1.2.0.tgz", "integrity": "sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q==" }, - "node_modules/diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", - "engines": { - "node": ">=0.3.1" - } - }, "node_modules/diffie-hellman": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", @@ -6279,6 +5815,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, "dependencies": { "path-type": "^4.0.0" }, @@ -6293,9 +5830,9 @@ "dev": true }, "node_modules/dns-packet": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.5.0.tgz", - "integrity": "sha512-USawdAUzRkV6xrqTjiAEp6M9YagZEzWcSUaZTcIFAiyQWW1SoI6KyId8y2+/71wbgHKQAKd+iupLv4YvEwYWvA==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", + "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", "dev": true, "dependencies": { "@leichtgewicht/ip-codec": "^2.0.1" @@ -6458,52 +5995,6 @@ "readable-stream": "^2.0.2" } }, - "node_modules/editorconfig": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", - "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", - "dependencies": { - "commander": "^2.19.0", - "lru-cache": "^4.1.5", - "semver": "^5.6.0", - "sigmund": "^1.0.1" - }, - "bin": { - "editorconfig": "bin/editorconfig" - } - }, - "node_modules/editorconfig-to-prettier": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/editorconfig-to-prettier/-/editorconfig-to-prettier-0.1.1.tgz", - "integrity": "sha512-MMadSSVRDb4uKdxV6bCXXN4cTsxIsXYtV4XdPu6FOCSAw6zsCIDA+QEktEU+u6h+c/mTrul5NR+pwFpPxwetiQ==" - }, - "node_modules/editorconfig/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "node_modules/editorconfig/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/editorconfig/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/editorconfig/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" - }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -6511,9 +6002,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.363", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.363.tgz", - "integrity": "sha512-ReX5qgmSU7ybhzMuMdlJAdYnRhT90UB3k9M05O5nF5WH3wR5wgdJjXw0uDeFyKNhmglmQiOxkAbzrP0hMKM59g==", + "version": "1.4.333", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.333.tgz", + "integrity": "sha512-YyE8+GKyGtPEP1/kpvqsdhD6rA/TP1DUFDN4uiU/YI52NzDxmwHkEb3qjId8hLBa5siJvG0sfC3O66501jMruQ==", "dev": true }, "node_modules/elliptic": { @@ -6540,7 +6031,8 @@ "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true }, "node_modules/emojis-list": { "version": "3.0.0", @@ -6598,6 +6090,7 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, "dependencies": { "is-arrayish": "^0.2.1" } @@ -6657,9 +6150,9 @@ "dev": true }, "node_modules/es-module-lexer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.2.1.tgz", - "integrity": "sha512-9978wrXM50Y4rTMmW5kXIC09ZdXQZqkE4mxhwkd8VbzsGkXGPgV4zWuqQJgCEzYngdo2dYDa0l8xhX4fkSwJSg==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", "dev": true }, "node_modules/es-set-tostringtag": { @@ -6762,9 +6255,9 @@ "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" }, "node_modules/es6-shim": { - "version": "0.35.8", - "resolved": "https://registry.npmjs.org/es6-shim/-/es6-shim-0.35.8.tgz", - "integrity": "sha512-Twf7I2v4/1tLoIXMT8HlqaBSS5H2wQTs2wx3MNYCI8K1R1/clXyCazrcVCPm/FuO9cyV8+leEaZOWD5C253NDg==" + "version": "0.35.7", + "resolved": "https://registry.npmjs.org/es6-shim/-/es6-shim-0.35.7.tgz", + "integrity": "sha512-baZkUfTDSx7X69+NA8imbvGrsPfqH0MX7ADdIDjqwsI8lkTgLIiD2QWrUCSGsUQ0YMnSCA/4pNgSyXdnLHWf3A==" }, "node_modules/es6-symbol": { "version": "3.1.3", @@ -6791,14 +6284,12 @@ "dev": true }, "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.8.0" } }, "node_modules/escodegen": { @@ -6863,14 +6354,6 @@ "node": ">=4.0" } }, - "node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "engines": { - "node": ">=4" - } - }, "node_modules/esprima": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz", @@ -7134,6 +6617,7 @@ "version": "1.0.16", "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "dev": true, "engines": { "node": ">= 4.9.1" } @@ -7142,6 +6626,7 @@ "version": "1.15.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, "dependencies": { "reusify": "^1.0.4" } @@ -7266,19 +6751,6 @@ "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, - "node_modules/find-parent-dir": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.1.tgz", - "integrity": "sha512-o4UcykWV/XN9wm+jMEtWLPlV8RXCZnMhQI6F6OdHeSez7iiJWePw8ijOlskJZMsaQoGR/b7dH6lO02HhaTN7+A==" - }, - "node_modules/find-project-root": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/find-project-root/-/find-project-root-1.1.1.tgz", - "integrity": "sha512-4+yZ013W+EZc+hvdgA2RlzlgNfP1eGdMNxU6xzw1yt518cF6/xZD3kLV+bprYX5+AD0IL76xcN28TPqYJHxrHw==", - "bin": { - "find-project-root": "bin/find-project-root.js" - } - }, "node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -7322,12 +6794,6 @@ "resolved": "https://registry.npmjs.org/flatpickr/-/flatpickr-4.6.13.tgz", "integrity": "sha512-97PMG/aywoYpB4IvbvUJi0RQi8vearvU0oov1WW3k0WZPBMrTQVqekSX5CjSG/M4Q3i6A/0FKXC7RyAoAUUSPw==" }, - "node_modules/flatten": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz", - "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==", - "deprecated": "flatten is deprecated in favor of utility frameworks such as lodash." - }, "node_modules/flot": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/flot/-/flot-4.2.3.tgz", @@ -7337,7 +6803,6 @@ "version": "1.15.2", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", - "dev": true, "funding": [ { "type": "individual", @@ -7366,7 +6831,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dev": true, "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", @@ -7430,12 +6894,13 @@ "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "hasInstallScript": true, "optional": true, "os": [ @@ -7526,6 +6991,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, "engines": { "node": ">=10" }, @@ -7553,6 +7019,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -7662,15 +7129,8 @@ "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" - }, - "node_modules/graphql": { - "version": "15.5.1", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-15.5.1.tgz", - "integrity": "sha512-FeTRX67T3LoE3LWAxxOlW2K3Bz+rMYAC18rRguK4wgXaTZMiJwSUwDmPFo3UadAKbzirKIg5Qy+sNJXbpPRnQw==", - "engines": { - "node": ">= 10.x" - } + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true }, "node_modules/growly": { "version": "1.3.0", @@ -7895,15 +7355,6 @@ "integrity": "sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA==", "dev": true }, - "node_modules/html-element-attributes": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/html-element-attributes/-/html-element-attributes-2.3.0.tgz", - "integrity": "sha512-RJv2v3BBaYSc0ODHwT0sqWI+2lFs6DATBvCRnW20BDmULxoAWvfT6r28uL8LcW1a9/eqUl+1DccUOJzw00qVXQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/html-entities": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", @@ -8015,29 +7466,6 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, - "node_modules/html-styles": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/html-styles/-/html-styles-1.0.0.tgz", - "integrity": "sha512-cDl5dcj73oI4Hy0DSUNh54CAwslNLJRCCoO+RNkVo+sBrjA/0+7E/xzvj3zH/GxbbBLGJhE0hBe1eg+0FINC6w==" - }, - "node_modules/html-tag-names": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/html-tag-names/-/html-tag-names-1.1.5.tgz", - "integrity": "sha512-aI5tKwNTBzOZApHIynaAwecLBv8TlZTEy/P4Sj2SzzAhBrGuI8yGZ0UIXVPQzOHGS+to2mjb04iy6VWt/8+d8A==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/html-void-elements": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", - "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/htmlparser2": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-4.1.0.tgz", @@ -8287,6 +7715,7 @@ "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -8329,12 +7758,14 @@ "node_modules/indexes-of": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha512-bup+4tap3Hympa+JBJUG7XuOsdNQ6fxt0MHyXMKuLBKn0OqsTfvUxkUrroEX1+B2VsSHvCjiIcZVxRtYa4nllA==" + "integrity": "sha512-bup+4tap3Hympa+JBJUG7XuOsdNQ6fxt0MHyXMKuLBKn0OqsTfvUxkUrroEX1+B2VsSHvCjiIcZVxRtYa4nllA==", + "dev": true }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -8391,28 +7822,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", - "dependencies": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/is-arguments": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", @@ -8445,7 +7854,8 @@ "node_modules/is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true }, "node_modules/is-bigint": { "version": "1.0.4", @@ -8519,9 +7929,9 @@ } }, "node_modules/is-core-module": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", - "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", "dependencies": { "has": "^1.0.3" }, @@ -8543,15 +7953,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/is-directory": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", @@ -8588,6 +7989,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, "engines": { "node": ">=8" } @@ -8603,15 +8005,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/is-negative-zero": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", @@ -8804,24 +8197,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-whitespace-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", - "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-word-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", - "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/is-wsl": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", @@ -8842,7 +8217,8 @@ "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true }, "node_modules/isobject": { "version": "3.0.1", @@ -8853,17 +8229,6 @@ "node": ">=0.10.0" } }, - "node_modules/jest-docblock": { - "version": "27.0.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.0.1.tgz", - "integrity": "sha512-TA4+21s3oebURc7VgFV4r7ltdIJ5rtBH1E3Tbovcg7AV+oLfD5DcJ2V2vJ5zFA9sL5CFd/d2D6IpsAeSheEdrA==", - "dependencies": { - "detect-newline": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, "node_modules/jest-worker": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", @@ -8975,7 +8340,8 @@ "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true }, "node_modules/json-schema-traverse": { "version": "0.4.1", @@ -8983,14 +8349,6 @@ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, - "node_modules/json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha512-i/J297TW6xyj7sDFa7AmBPkQvLIxWr2kKPWI26tXydnZrzVAocNqn5DMNT1Mzk0vit1V5UkRM7C1KdVNp7Lmcg==", - "dependencies": { - "jsonify": "~0.0.0" - } - }, "node_modules/json5": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", @@ -9015,14 +8373,6 @@ "graceful-fs": "^4.1.6" } }, - "node_modules/jsonify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", - "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/jstree": { "version": "3.3.15", "resolved": "https://registry.npmjs.org/jstree/-/jstree-3.3.15.tgz", @@ -9075,6 +8425,27 @@ "node": ">= 8" } }, + "node_modules/laravel-datatables-vite": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/laravel-datatables-vite/-/laravel-datatables-vite-0.5.2.tgz", + "integrity": "sha512-jWclnbbx21L9ccrMxP5G/1cvF1h/ouDXBhaHoidDpcSuHv2Oy1A7td/coIZHJHxevLjZH8vBHA6CP1F6q4dPiQ==", + "dev": true, + "dependencies": { + "bootstrap": "^5.2.2", + "bootstrap-icons": "^1.9.1", + "datatables.net": "^1.12.1", + "datatables.net-bs5": "^1.12.1", + "datatables.net-buttons-bs5": "^2.2.3", + "datatables.net-select-bs5": "^1.4.0", + "jquery": "^3.6.1" + } + }, + "node_modules/laravel-datatables-vite/node_modules/jquery": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==", + "dev": true + }, "node_modules/laravel-mix": { "version": "6.0.49", "resolved": "https://registry.npmjs.org/laravel-mix/-/laravel-mix-6.0.49.tgz", @@ -9180,14 +8551,6 @@ "resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.9.3.tgz", "integrity": "sha512-iB2cR9vAkDOu5l3HAay2obcUHZ7xwUBBjph8+PGtmW/2lYhbLizWtG7nTeYht36WfOslixQF9D/uSIzhZgGMfQ==" }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "engines": { - "node": ">=6" - } - }, "node_modules/levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", @@ -9225,12 +8588,8 @@ "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" - }, - "node_modules/linguist-languages": { - "version": "7.10.0", - "resolved": "https://registry.npmjs.org/linguist-languages/-/linguist-languages-7.10.0.tgz", - "integrity": "sha512-Uqt94P4iAznscZtccnNE1IBi105U+fmQKEUlDJv54JDdFZDInomkepEIRpZLOQcPyGdcNu3JO9Tvo5wpQVbfKw==" + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true }, "node_modules/loader-runner": { "version": "4.3.0", @@ -9270,7 +8629,8 @@ "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true }, "node_modules/lodash-es": { "version": "4.17.21", @@ -9368,26 +8728,6 @@ "semver": "bin/semver.js" } }, - "node_modules/map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", - "dependencies": { - "p-defer": "^1.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/markdown-escapes": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", - "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/md5": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", @@ -9425,33 +8765,10 @@ "node": ">= 0.6" } }, - "node_modules/mem": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz", - "integrity": "sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==", - "dependencies": { - "map-age-cleaner": "^0.1.3", - "mimic-fn": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/mem?sponsor=1" - } - }, - "node_modules/mem/node_modules/mimic-fn": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", - "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", - "engines": { - "node": ">=8" - } - }, "node_modules/memfs": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.0.tgz", - "integrity": "sha512-yK6o8xVJlQerz57kvPROwTMgx5WtGwC2ZxDtOUsnGl49rHjYkfQoPNZPCKH73VdLE1BwBu/+Fx/NL8NYMUw2aA==", + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz", + "integrity": "sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==", "dev": true, "dependencies": { "fs-monkey": "^1.0.3" @@ -9492,6 +8809,7 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, "engines": { "node": ">= 8" } @@ -9509,6 +8827,7 @@ "version": "4.0.5", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, "dependencies": { "braces": "^3.0.2", "picomatch": "^2.3.1" @@ -9552,7 +8871,6 @@ "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, "engines": { "node": ">= 0.6" } @@ -9561,7 +8879,6 @@ "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, "dependencies": { "mime-db": "1.52.0" }, @@ -9652,6 +8969,7 @@ "version": "0.5.6", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, "dependencies": { "minimist": "^1.2.6" }, @@ -9685,24 +9003,11 @@ "multicast-dns": "cli.js" } }, - "node_modules/n-readlines": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/n-readlines/-/n-readlines-1.0.1.tgz", - "integrity": "sha512-z4SyAIVgMy7CkgsoNw7YVz40v0g4+WWvvqy8+ZdHrCtgevcEO758WQyrYcw3XPxcLxF+//RszTz/rO48nzD0wQ==", - "engines": { - "node": ">=6.x.x" - } - }, "node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "dev": true, "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -9793,15 +9098,6 @@ "which": "^2.0.2" } }, - "node_modules/node-notifier/node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, "node_modules/node-releases": { "version": "2.0.10", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", @@ -9817,9 +9113,9 @@ } }, "node_modules/nodemon": { - "version": "2.0.22", - "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.22.tgz", - "integrity": "sha512-B8YqaKMmyuCO7BowF1Z1/mkPqLk6cs/l63Ojtd6otKjMx47Dq1utxfRxcavH1I7VSaL8n5BUaoutadnsX3AAVQ==", + "version": "2.0.21", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.21.tgz", + "integrity": "sha512-djN/n2549DUtY33S7o1djRCd7dEm0kBnj9c7S9XVXqRUbuggN1MZH/Nqa+5RFQr63Fbefq37nFXAE9VU86yL1A==", "dependencies": { "chokidar": "^3.5.2", "debug": "^3.2.7", @@ -10113,6 +9409,8 @@ }, "node_modules/npm/node_modules/@isaacs/string-locale-compare": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz", + "integrity": "sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ==", "inBundle": true, "license": "ISC" }, @@ -10314,11 +9612,15 @@ }, "node_modules/npm/node_modules/abbrev": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "inBundle": true, "license": "ISC" }, "node_modules/npm/node_modules/agent-base": { "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "inBundle": true, "license": "MIT", "dependencies": { @@ -10343,6 +9645,8 @@ }, "node_modules/npm/node_modules/aggregate-error": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "inBundle": true, "license": "MIT", "dependencies": { @@ -10370,6 +9674,8 @@ }, "node_modules/npm/node_modules/ansi-regex": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "inBundle": true, "license": "MIT", "engines": { @@ -10378,6 +9684,8 @@ }, "node_modules/npm/node_modules/ansi-styles": { "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "inBundle": true, "license": "MIT", "dependencies": { @@ -10392,21 +9700,29 @@ }, "node_modules/npm/node_modules/ansicolors": { "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==", "inBundle": true, "license": "MIT" }, "node_modules/npm/node_modules/ansistyles": { "version": "0.1.3", + "resolved": "https://registry.npmjs.org/ansistyles/-/ansistyles-0.1.3.tgz", + "integrity": "sha512-6QWEyvMgIXX0eO972y7YPBLSBsq7UWKFAoNNTLGaOJ9bstcEL9sCbcjf96dVfNDdUsRoGOK82vWFJlKApXds7g==", "inBundle": true, "license": "MIT" }, "node_modules/npm/node_modules/aproba": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", "inBundle": true, "license": "ISC" }, "node_modules/npm/node_modules/archy": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", "inBundle": true, "license": "MIT" }, @@ -10424,6 +9740,8 @@ }, "node_modules/npm/node_modules/asap": { "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", "inBundle": true, "license": "MIT" }, @@ -10445,6 +9763,8 @@ }, "node_modules/npm/node_modules/asynckit": { "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", "inBundle": true, "license": "MIT" }, @@ -10463,6 +9783,8 @@ }, "node_modules/npm/node_modules/balanced-match": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "inBundle": true, "license": "MIT" }, @@ -10492,6 +9814,8 @@ }, "node_modules/npm/node_modules/binary-extensions": { "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "inBundle": true, "license": "MIT", "engines": { @@ -10500,6 +9824,8 @@ }, "node_modules/npm/node_modules/brace-expansion": { "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "inBundle": true, "license": "MIT", "dependencies": { @@ -10547,6 +9873,8 @@ }, "node_modules/npm/node_modules/chalk": { "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "inBundle": true, "license": "MIT", "dependencies": { @@ -10562,6 +9890,8 @@ }, "node_modules/npm/node_modules/chownr": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", "inBundle": true, "license": "ISC", "engines": { @@ -10581,6 +9911,8 @@ }, "node_modules/npm/node_modules/clean-stack": { "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", "inBundle": true, "license": "MIT", "engines": { @@ -10624,6 +9956,8 @@ }, "node_modules/npm/node_modules/cli-table3/node_modules/is-fullwidth-code-point": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "inBundle": true, "license": "MIT", "engines": { @@ -10656,6 +9990,8 @@ }, "node_modules/npm/node_modules/clone": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", "inBundle": true, "license": "MIT", "engines": { @@ -10683,6 +10019,8 @@ }, "node_modules/npm/node_modules/color-convert": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "inBundle": true, "license": "MIT", "dependencies": { @@ -10694,6 +10032,8 @@ }, "node_modules/npm/node_modules/color-name": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "inBundle": true, "license": "MIT" }, @@ -10736,16 +10076,22 @@ }, "node_modules/npm/node_modules/common-ancestor-path": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz", + "integrity": "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==", "inBundle": true, "license": "ISC" }, "node_modules/npm/node_modules/concat-map": { "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "inBundle": true, "license": "MIT" }, "node_modules/npm/node_modules/console-control-strings": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", "inBundle": true, "license": "ISC" }, @@ -10788,6 +10134,8 @@ }, "node_modules/npm/node_modules/debuglog": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz", + "integrity": "sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw==", "inBundle": true, "license": "MIT", "engines": { @@ -10804,6 +10152,8 @@ }, "node_modules/npm/node_modules/delayed-stream": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "inBundle": true, "license": "MIT", "engines": { @@ -10812,6 +10162,8 @@ }, "node_modules/npm/node_modules/delegates": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", "inBundle": true, "license": "MIT" }, @@ -10851,6 +10203,8 @@ }, "node_modules/npm/node_modules/emoji-regex": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "inBundle": true, "license": "MIT" }, @@ -10865,6 +10219,8 @@ }, "node_modules/npm/node_modules/env-paths": { "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", "inBundle": true, "license": "MIT", "engines": { @@ -10873,6 +10229,8 @@ }, "node_modules/npm/node_modules/err-code": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", "inBundle": true, "license": "MIT" }, @@ -10891,11 +10249,15 @@ }, "node_modules/npm/node_modules/fast-deep-equal": { "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "inBundle": true, "license": "MIT" }, "node_modules/npm/node_modules/fast-json-stable-stringify": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "inBundle": true, "license": "MIT" }, @@ -10914,6 +10276,8 @@ }, "node_modules/npm/node_modules/fs-minipass": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "inBundle": true, "license": "ISC", "dependencies": { @@ -10925,11 +10289,15 @@ }, "node_modules/npm/node_modules/fs.realpath": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "inBundle": true, "license": "ISC" }, "node_modules/npm/node_modules/function-bind": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "inBundle": true, "license": "MIT" }, @@ -11006,6 +10374,8 @@ }, "node_modules/npm/node_modules/has": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "inBundle": true, "license": "MIT", "dependencies": { @@ -11017,6 +10387,8 @@ }, "node_modules/npm/node_modules/has-flag": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "inBundle": true, "license": "MIT", "engines": { @@ -11025,6 +10397,8 @@ }, "node_modules/npm/node_modules/has-unicode": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", "inBundle": true, "license": "ISC" }, @@ -11085,6 +10459,8 @@ }, "node_modules/npm/node_modules/humanize-ms": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", "inBundle": true, "license": "MIT", "dependencies": { @@ -11093,6 +10469,8 @@ }, "node_modules/npm/node_modules/iconv-lite": { "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "inBundle": true, "license": "MIT", "optional": true, @@ -11113,6 +10491,8 @@ }, "node_modules/npm/node_modules/imurmurhash": { "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "inBundle": true, "license": "MIT", "engines": { @@ -11121,6 +10501,8 @@ }, "node_modules/npm/node_modules/indent-string": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "inBundle": true, "license": "MIT", "engines": { @@ -11129,11 +10511,15 @@ }, "node_modules/npm/node_modules/infer-owner": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", "inBundle": true, "license": "ISC" }, "node_modules/npm/node_modules/inflight": { "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "inBundle": true, "license": "ISC", "dependencies": { @@ -11143,6 +10529,8 @@ }, "node_modules/npm/node_modules/inherits": { "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "inBundle": true, "license": "ISC" }, @@ -11216,6 +10604,8 @@ }, "node_modules/npm/node_modules/is-lambda": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", "inBundle": true, "license": "MIT" }, @@ -11226,6 +10616,8 @@ }, "node_modules/npm/node_modules/isexe": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "inBundle": true, "license": "ISC" }, @@ -11241,6 +10633,8 @@ }, "node_modules/npm/node_modules/json-parse-even-better-errors": { "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", "inBundle": true, "license": "MIT" }, @@ -11250,11 +10644,15 @@ }, "node_modules/npm/node_modules/json-schema-traverse": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "inBundle": true, "license": "MIT" }, "node_modules/npm/node_modules/json-stringify-nice": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz", + "integrity": "sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==", "inBundle": true, "license": "ISC", "funding": { @@ -11268,6 +10666,8 @@ }, "node_modules/npm/node_modules/jsonparse": { "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", "engines": [ "node >= 0.2.0" ], @@ -11448,6 +10848,8 @@ }, "node_modules/npm/node_modules/lru-cache": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "inBundle": true, "license": "ISC", "dependencies": { @@ -11526,6 +10928,8 @@ }, "node_modules/npm/node_modules/minipass-collect": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", "inBundle": true, "license": "ISC", "dependencies": { @@ -11553,6 +10957,8 @@ }, "node_modules/npm/node_modules/minipass-flush": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", "inBundle": true, "license": "ISC", "dependencies": { @@ -11564,6 +10970,8 @@ }, "node_modules/npm/node_modules/minipass-json-stream": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", "inBundle": true, "license": "MIT", "dependencies": { @@ -11573,6 +10981,8 @@ }, "node_modules/npm/node_modules/minipass-pipeline": { "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", "inBundle": true, "license": "ISC", "dependencies": { @@ -11584,6 +10994,8 @@ }, "node_modules/npm/node_modules/minipass-sized": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", "inBundle": true, "license": "ISC", "dependencies": { @@ -11595,6 +11007,8 @@ }, "node_modules/npm/node_modules/minizlib": { "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "inBundle": true, "license": "MIT", "dependencies": { @@ -11607,6 +11021,8 @@ }, "node_modules/npm/node_modules/mkdirp": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "inBundle": true, "license": "MIT", "bin": { @@ -11618,6 +11034,8 @@ }, "node_modules/npm/node_modules/mkdirp-infer-owner": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz", + "integrity": "sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw==", "inBundle": true, "license": "ISC", "dependencies": { @@ -11631,6 +11049,8 @@ }, "node_modules/npm/node_modules/ms": { "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "inBundle": true, "license": "MIT" }, @@ -11902,6 +11322,8 @@ }, "node_modules/npm/node_modules/object-assign": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "inBundle": true, "license": "MIT", "engines": { @@ -11910,6 +11332,8 @@ }, "node_modules/npm/node_modules/once": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "inBundle": true, "license": "ISC", "dependencies": { @@ -11918,6 +11342,8 @@ }, "node_modules/npm/node_modules/opener": { "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", "inBundle": true, "license": "(WTFPL OR MIT)", "bin": { @@ -11926,6 +11352,8 @@ }, "node_modules/npm/node_modules/p-map": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "inBundle": true, "license": "MIT", "dependencies": { @@ -11982,6 +11410,8 @@ }, "node_modules/npm/node_modules/path-is-absolute": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "inBundle": true, "license": "MIT", "engines": { @@ -12000,6 +11430,8 @@ }, "node_modules/npm/node_modules/promise-all-reject-late": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz", + "integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==", "inBundle": true, "license": "ISC", "funding": { @@ -12016,11 +11448,15 @@ }, "node_modules/npm/node_modules/promise-inflight": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", "inBundle": true, "license": "ISC" }, "node_modules/npm/node_modules/promise-retry": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", "inBundle": true, "license": "MIT", "dependencies": { @@ -12054,6 +11490,8 @@ }, "node_modules/npm/node_modules/qrcode-terminal": { "version": "0.12.0", + "resolved": "https://registry.npmjs.org/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz", + "integrity": "sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==", "inBundle": true, "bin": { "qrcode-terminal": "bin/qrcode-terminal.js" @@ -12124,6 +11562,8 @@ }, "node_modules/npm/node_modules/readdir-scoped-modules": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz", + "integrity": "sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==", "inBundle": true, "license": "ISC", "dependencies": { @@ -12190,6 +11630,8 @@ }, "node_modules/npm/node_modules/retry": { "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", "inBundle": true, "license": "MIT", "engines": { @@ -12198,6 +11640,8 @@ }, "node_modules/npm/node_modules/rimraf": { "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "inBundle": true, "license": "ISC", "dependencies": { @@ -12212,6 +11656,8 @@ }, "node_modules/npm/node_modules/safe-buffer": { "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", "funding": [ { "type": "github", @@ -12231,6 +11677,8 @@ }, "node_modules/npm/node_modules/safer-buffer": { "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "inBundle": true, "license": "MIT" }, @@ -12250,6 +11698,8 @@ }, "node_modules/npm/node_modules/set-blocking": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", "inBundle": true, "license": "ISC" }, @@ -12304,11 +11754,15 @@ }, "node_modules/npm/node_modules/spdx-exceptions": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "inBundle": true, "license": "CC-BY-3.0" }, "node_modules/npm/node_modules/spdx-expression-parse": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "inBundle": true, "license": "MIT", "dependencies": { @@ -12358,6 +11812,8 @@ }, "node_modules/npm/node_modules/string_decoder": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "inBundle": true, "license": "MIT", "dependencies": { @@ -12402,6 +11858,8 @@ }, "node_modules/npm/node_modules/strip-ansi": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "inBundle": true, "license": "MIT", "dependencies": { @@ -12413,6 +11871,8 @@ }, "node_modules/npm/node_modules/supports-color": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "inBundle": true, "license": "MIT", "dependencies": { @@ -12440,11 +11900,15 @@ }, "node_modules/npm/node_modules/text-table": { "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "inBundle": true, "license": "MIT" }, "node_modules/npm/node_modules/tiny-relative-date": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/tiny-relative-date/-/tiny-relative-date-1.3.0.tgz", + "integrity": "sha512-MOQHpzllWxDCHHaDno30hhLfbouoYlOI8YlMNtvKe1zXbjEVhbcEovQxvZrPvtiYW630GQDoMMarCnjfyfHA+A==", "inBundle": true, "license": "MIT" }, @@ -12495,6 +11959,8 @@ }, "node_modules/npm/node_modules/uri-js": { "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "inBundle": true, "license": "BSD-2-Clause", "dependencies": { @@ -12503,6 +11969,8 @@ }, "node_modules/npm/node_modules/util-deprecate": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "inBundle": true, "license": "MIT" }, @@ -12516,6 +11984,8 @@ }, "node_modules/npm/node_modules/validate-npm-package-license": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "inBundle": true, "license": "Apache-2.0", "dependencies": { @@ -12546,11 +12016,15 @@ }, "node_modules/npm/node_modules/walk-up-path": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-1.0.0.tgz", + "integrity": "sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg==", "inBundle": true, "license": "ISC" }, "node_modules/npm/node_modules/wcwidth": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", "inBundle": true, "license": "MIT", "dependencies": { @@ -12559,6 +12033,8 @@ }, "node_modules/npm/node_modules/which": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "inBundle": true, "license": "ISC", "dependencies": { @@ -12581,6 +12057,8 @@ }, "node_modules/npm/node_modules/wrappy": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "inBundle": true, "license": "ISC" }, @@ -12597,6 +12075,8 @@ }, "node_modules/npm/node_modules/yallist": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "inBundle": true, "license": "ISC" }, @@ -12735,6 +12215,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, "dependencies": { "wrappy": "1" } @@ -12793,14 +12274,6 @@ "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", "dev": true }, - "node_modules/p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==", - "engines": { - "node": ">=4" - } - }, "node_modules/p-limit": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", @@ -12901,6 +12374,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, "dependencies": { "callsites": "^3.0.0" }, @@ -12921,23 +12395,11 @@ "safe-buffer": "^5.1.1" } }, - "node_modules/parse-entities": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.2.tgz", - "integrity": "sha512-NzfpbxW/NPrzZ/yYSoQxyqUZMZXIdCfE0OIN4ESsnptHJECoUk3FZktxNuzQf4tjt5UEopnxpYJbvYuxIFDdsg==", - "dependencies": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - }, "node_modules/parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, "dependencies": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", @@ -12989,6 +12451,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -13017,6 +12480,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, "engines": { "node": ">=8" } @@ -13054,7 +12518,8 @@ "node_modules/picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true }, "node_modules/picomatch": { "version": "2.3.1", @@ -13088,14 +12553,6 @@ "node": ">=8" } }, - "node_modules/please-upgrade-node": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", - "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", - "dependencies": { - "semver-compare": "^1.0.0" - } - }, "node_modules/png-js": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/png-js/-/png-js-1.0.0.tgz", @@ -13116,6 +12573,7 @@ "version": "8.4.21", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "dev": true, "funding": [ { "type": "opencollective", @@ -13247,17 +12705,6 @@ "postcss": "^8.0.0" } }, - "node_modules/postcss-less": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-less/-/postcss-less-4.0.1.tgz", - "integrity": "sha512-C92S4sHlbDpefJ2QQJjrucCcypq3+KZPstjfuvgOCNnGx0tF9h8hXgAlOIATGAxMXZXaF+nVp+/Mi8pCAWdSmw==", - "dependencies": { - "postcss": "^8.1.2" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/postcss-load-config": { "version": "3.1.4", "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", @@ -13309,11 +12756,6 @@ "webpack": "^5.0.0" } }, - "node_modules/postcss-media-query-parser": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", - "integrity": "sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==" - }, "node_modules/postcss-merge-longhand": { "version": "5.1.7", "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", @@ -13664,38 +13106,6 @@ "postcss": "^8.2.15" } }, - "node_modules/postcss-scss": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-2.1.1.tgz", - "integrity": "sha512-jQmGnj0hSGLd9RscFw9LyuSVAa5Bl1/KBPqG1NQw9w8ND55nY4ZEsdlVuYJvLPpV+y0nwTV5v/4rHPzZRihQbA==", - "dependencies": { - "postcss": "^7.0.6" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-scss/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==" - }, - "node_modules/postcss-scss/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, "node_modules/postcss-selector-parser": { "version": "6.0.11", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", @@ -13746,19 +13156,6 @@ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", "dev": true }, - "node_modules/postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=6.14.4" - } - }, "node_modules/prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", @@ -13767,32 +13164,6 @@ "node": ">= 0.8.0" } }, - "node_modules/prettier": { - "version": "2.8.7", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.7.tgz", - "integrity": "sha512-yPngTo3aXUUmyuTjeTUT75txrf+aMh9FiD7q9ZE/i6r0bPb22g4FsE6Y338PQX1bmfy08i9QQCB7/rcUAVntfw==", - "peer": true, - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/prettier-plugin-x": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/prettier-plugin-x/-/prettier-plugin-x-0.0.10.tgz", - "integrity": "sha512-uxYOYXNyMvkWs3ZkfXSP6yT4R45Gg2lZxAqeTj5hoIjdLPzMEyTqOMU8lh7wb1hLYDvxGjK37yYKotSDD22H8g==", - "dependencies": { - "x-formatter": "^0.0.2" - }, - "peerDependencies": { - "prettier": "^2.0.0" - } - }, "node_modules/pretty-time": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", @@ -13874,13 +13245,7 @@ "node_modules/proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "dev": true - }, - "node_modules/pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" }, "node_modules/pstree.remy": { "version": "1.1.8", @@ -13985,6 +13350,7 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, "funding": [ { "type": "github", @@ -14231,22 +13597,6 @@ "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", "dev": true }, - "node_modules/regexp-util": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/regexp-util/-/regexp-util-1.2.2.tgz", - "integrity": "sha512-5/rl2UD18oAlLQEIuKBeiSIOp1hb5wCXcakl5yvHxlY1wyWI4D5cUKKzCibBeu741PA9JKvZhMqbkDQqPusX3w==", - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/regexp-util/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, "node_modules/regexp.prototype.flags": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", @@ -14310,55 +13660,6 @@ "node": ">= 0.10" } }, - "node_modules/remark-math": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-1.0.6.tgz", - "integrity": "sha512-I43wU/QOQpXvVFXKjA4FHp5xptK65+5F6yolm8+69/JV0EqSOB64wURUZ3JK50JtnTL8FvwLiH2PZ+fvsBxviA==", - "dependencies": { - "trim-trailing-lines": "^1.1.0" - }, - "peerDependencies": { - "remark-parse": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0" - } - }, - "node_modules/remark-parse": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-6.0.3.tgz", - "integrity": "sha512-QbDXWN4HfKTUC0hHa4teU463KclLAnwpn/FBn87j9cKYJWWawbiLgMfP2Q4XwhxxuuuOxHlw+pSN0OKuJwyVvg==", - "peer": true, - "dependencies": { - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^1.1.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^1.0.0", - "vfile-location": "^2.0.0", - "xtend": "^4.0.1" - } - }, - "node_modules/remark-parse/node_modules/trim": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", - "integrity": "sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==", - "deprecated": "Use String.prototype.trim() instead", - "peer": true - }, - "node_modules/repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", - "engines": { - "node": ">=0.10" - } - }, "node_modules/replace-ext": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", @@ -14399,11 +13700,11 @@ "dev": true }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -14439,6 +13740,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, "engines": { "node": ">=4" } @@ -14507,6 +13809,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, "engines": { "iojs": ">=1.0.0", "node": ">=0.10.0" @@ -14528,6 +13831,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, "dependencies": { "glob": "^7.1.3" }, @@ -14628,6 +13932,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, "funding": [ { "type": "github", @@ -14806,9 +14111,10 @@ } }, "node_modules/semver": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.4.0.tgz", - "integrity": "sha512-RgOxM8Mw+7Zus0+zcLEUn8+JfoLpj/huFTItQy2hsM4khuC1HYRDp0cU482Ewn/Fcy6bCjufD8vAj7voC66KQw==", + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, "dependencies": { "lru-cache": "^6.0.0" }, @@ -14819,15 +14125,11 @@ "node": ">=10" } }, - "node_modules/semver-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==" - }, "node_modules/semver/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, "dependencies": { "yallist": "^4.0.0" }, @@ -14838,7 +14140,8 @@ "node_modules/semver/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true }, "node_modules/send": { "version": "0.18.0", @@ -15050,9 +14353,9 @@ } }, "node_modules/shell-quote": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", - "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", + "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==", "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -15078,22 +14381,12 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/sigmund": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", - "integrity": "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==" - }, "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, - "node_modules/simple-html-tokenizer": { - "version": "0.5.11", - "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.5.11.tgz", - "integrity": "sha512-C2WEK/Z3HoSFbYq8tI7ni3eOo/NneSPRoPpcM7WdLjFOArFuyXEjAoCdOC3DgMfRyziZQ1hCNR4mrNdWEvD0og==" - }, "node_modules/simple-swizzle": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", @@ -15132,6 +14425,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, "engines": { "node": ">=8" } @@ -15152,15 +14446,6 @@ "websocket-driver": "^0.7.4" } }, - "node_modules/sockjs/node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, "node_modules/source-list-map": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", @@ -15179,6 +14464,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -15249,17 +14535,6 @@ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, - "node_modules/srcset": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/srcset/-/srcset-3.0.0.tgz", - "integrity": "sha512-D59vF08Qzu/C4GAOXVgMTLfgryt5fyWo93FZyhEWANo0PokFz/iWdDe13mX3O5TRf6l8vMTqckAfR4zPiaH0yQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/stable": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", @@ -15267,15 +14542,6 @@ "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility", "dev": true }, - "node_modules/state-toggle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", - "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/static-eval": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.1.0.tgz", @@ -15438,6 +14704,7 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -15496,6 +14763,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -15723,9 +14991,9 @@ } }, "node_modules/terser": { - "version": "5.16.9", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.9.tgz", - "integrity": "sha512-HPa/FdTB9XGI2H1/keLFZHxl6WNvAI4YalHGtDQTlMnJcoqSab1UwL4l1hGEhs6/GmLHBZIg/YgB++jcbzoOEg==", + "version": "5.16.6", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.6.tgz", + "integrity": "sha512-IBZ+ZQIA9sMaXmRZCUMDjNH0D5AQQfdn4WUjHL0+1lF4TP1IHRJbrhb6fNaXWikrYQTSkb7SLxkeXAiy1p7mbg==", "dev": true, "dependencies": { "@jridgewell/source-map": "^0.3.2", @@ -15929,55 +15197,12 @@ "nodetouch": "bin/nodetouch.js" } }, - "node_modules/trim": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.3.tgz", - "integrity": "sha512-h82ywcYhHK7veeelXrCScdH7HkWfbIT1D/CgYO+nmDarz3SGNssVBMws6jU16Ga60AJCRAvPV6w6RLuNerQqjg==", - "deprecated": "Use String.prototype.trim() instead" - }, - "node_modules/trim-trailing-lines": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", - "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/trough": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", - "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/tslib": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", "dev": true }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dependencies": { - "tslib": "^1.8.1" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" - } - }, - "node_modules/tsutils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, "node_modules/tty-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", @@ -16028,27 +15253,15 @@ } }, "node_modules/typed.js": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/typed.js/-/typed.js-2.0.12.tgz", - "integrity": "sha512-lyACZh1cu+vpfYY3DG/bvsGLXXbdoDDpWxmqta10IQUdMXisMXOEyl+jos+YT9uBbzK4QaKYBjT3R0kTJO0Slw==" + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/typed.js/-/typed.js-2.0.16.tgz", + "integrity": "sha512-IBB52GlJiTUOnomwdVVf7lWgC6gScn8md+26zTHj5oJWA+4pSuclHE76rbGI2hnyO+NT+QXdIUHbfjAY5nEtcw==" }, "node_modules/typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" }, - "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, "node_modules/uglify-js": { "version": "3.17.4", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", @@ -16081,19 +15294,6 @@ "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==" }, - "node_modules/unherit": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", - "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", - "dependencies": { - "inherits": "^2.0.0", - "xtend": "^4.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/unicode-canonical-property-names-ecmascript": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", @@ -16143,17 +15343,6 @@ "node": ">=4" } }, - "node_modules/unicode-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unicode-regex/-/unicode-regex-3.0.0.tgz", - "integrity": "sha512-WiDJdORsqgxkZrjC8WsIP573130HNn7KsB0IDnUccW2BG2b19QQNloNhVe6DKk3Aef0UcoIHhNVj7IkkcYWrNw==", - "dependencies": { - "regexp-util": "^1.2.0" - }, - "engines": { - "node": ">= 4" - } - }, "node_modules/unicode-trie": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unicode-trie/-/unicode-trie-2.0.0.tgz", @@ -16168,57 +15357,11 @@ "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", "integrity": "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==" }, - "node_modules/unified": { - "version": "9.2.1", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.1.tgz", - "integrity": "sha512-juWjuI8Z4xFg8pJbnEZ41b5xjGUWGHqXALmBZ3FC3WX0PIx1CZBIIJ6mXbYMcf6Yw4Fi0rFUTA1cdz/BglbOhA==", - "dependencies": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unified/node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=4" - } - }, - "node_modules/unified/node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "engines": { - "node": ">=8" - } - }, "node_modules/uniq": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==" + "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==", + "dev": true }, "node_modules/uniqs": { "version": "2.0.0", @@ -16226,51 +15369,6 @@ "integrity": "sha512-mZdDpf3vBV5Efh29kMw5tXoup/buMgxLzOt/XKFKcVmi+15ManNQWr6HfZ2aiZTYlYixbdNJ0KFmIZIv52tHSQ==", "dev": true }, - "node_modules/unist-util-is": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-3.0.0.tgz", - "integrity": "sha512-sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A==" - }, - "node_modules/unist-util-remove-position": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.4.tgz", - "integrity": "sha512-tLqd653ArxJIPnKII6LMZwH+mb5q+n/GtXQZo6S6csPRs5zB0u79Yw8ouR3wTw8wxvdJFhpP6Y7jorWdCgLO0A==", - "dependencies": { - "unist-util-visit": "^1.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-stringify-position": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", - "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", - "dependencies": { - "@types/unist": "^2.0.2" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.1.tgz", - "integrity": "sha512-AvGNk7Bb//EmJZyhtRUnNMEpId/AZ5Ph/KUpTI09WHQuDZHKovQ1oEv3mfmKpWKtoMzyMC4GLBm1Zy5k12fjIw==", - "dependencies": { - "unist-util-visit-parents": "^2.0.0" - } - }, - "node_modules/unist-util-visit-parents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.1.2.tgz", - "integrity": "sha512-DyN5vD4NE3aSeB+PXYNKxzGsfocxp6asDc2XXE3b0ekO2BaRUpBicbbUygfSvYfUz1IkmjFR1YF7dPklraMZ2g==", - "dependencies": { - "unist-util-is": "^3.0.0" - } - }, "node_modules/universalify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", @@ -16400,14 +15498,18 @@ } }, "node_modules/uuid": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz", - "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==", - "peer": true, + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "bin": { "uuid": "dist/bin/uuid" } }, + "node_modules/vanilla-colorful": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/vanilla-colorful/-/vanilla-colorful-0.7.2.tgz", + "integrity": "sha512-z2YZusTFC6KnLERx1cgoIRX2CjPRP0W75N+3CC6gbvdX5Ch47rZkEMGO2Xnf+IEmi3RiFLxS18gayMA27iU7Kg==" + }, "node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", @@ -16427,69 +15529,10 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/vfile": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", - "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", - "dependencies": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^2.0.0", - "vfile-message": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-location": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-2.0.6.tgz", - "integrity": "sha512-sSFdyCP3G6Ka0CEmN83A2YCMKIieHx0EDaj5IDP4g1pa5ZJ4FJDvpO0WODLxo4LUX4oe52gmSCK7Jw4SBghqxA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-message": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", - "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile/node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=4" - } - }, "node_modules/vis-data": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/vis-data/-/vis-data-7.1.6.tgz", - "integrity": "sha512-lG7LJdkawlKSXsdcEkxe/zRDyW29a4r7N7PMwxCPxK12/QIdqxJwcMxwjVj9ozdisRhP5TyWDHZwsgjmj0g6Dg==", + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/vis-data/-/vis-data-7.1.4.tgz", + "integrity": "sha512-usy+ePX1XnArNvJ5BavQod7YRuGQE1pjFl+pu7IS6rCom2EBoG0o1ZzCqf3l5US6MW51kYkLR+efxRbnjxNl7w==", "hasInstallScript": true, "peer": true, "funding": { @@ -16497,14 +15540,14 @@ "url": "https://opencollective.com/visjs" }, "peerDependencies": { - "uuid": "^3.4.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", - "vis-util": "^5.0.1" + "uuid": "^7.0.0 || ^8.0.0", + "vis-util": "^4.0.0 || ^5.0.0" } }, "node_modules/vis-timeline": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/vis-timeline/-/vis-timeline-7.7.2.tgz", - "integrity": "sha512-l7hDBFJ0FI6gX4kzsxAONnAacowK3sHWx3uc5jR1DYs/FAsOEZsHDclVNW3+QAwmV3Xvg61U8//ha6hZNw7G1Q==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/vis-timeline/-/vis-timeline-7.7.0.tgz", + "integrity": "sha512-et5xobQTEp7i8lqcEjgMWoGE4s4qn+2VtEJ35uRZiL5Y3qRzi84bCTkUKAjOM/HTzVFiLTWET+DZZi1iHYriuA==", "hasInstallScript": true, "funding": { "type": "opencollective", @@ -16513,12 +15556,12 @@ "peerDependencies": { "@egjs/hammerjs": "^2.0.0", "component-emitter": "^1.3.0", - "keycharm": "^0.2.0 || ^0.3.0 || ^0.4.0", + "keycharm": "^0.3.0 || ^0.4.0", "moment": "^2.24.0", "propagating-hammerjs": "^1.4.0 || ^2.0.0", - "uuid": "^3.4.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", + "uuid": "^3.4.0 || ^7.0.0 || ^8.0.0", "vis-data": "^6.3.0 || ^7.0.0", - "vis-util": "^5.0.1", + "vis-util": "^3.0.0 || ^4.0.0 || ^5.0.0", "xss": "^1.0.0" } }, @@ -16545,96 +15588,6 @@ "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", "dev": true }, - "node_modules/vnopts": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/vnopts/-/vnopts-1.0.2.tgz", - "integrity": "sha512-d2rr2EFhAGHnTlURu49G7GWmiJV80HbAnkYdD9IFAtfhmxC+kSWEaZ6ZF064DJFTv9lQZQV1vuLTntyQpoanGQ==", - "dependencies": { - "chalk": "^2.4.1", - "leven": "^2.1.0", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/vnopts/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/vnopts/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/vnopts/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/vnopts/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "node_modules/vnopts/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/vnopts/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "engines": { - "node": ">=4" - } - }, - "node_modules/vnopts/node_modules/leven": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", - "integrity": "sha512-nvVPLpIHUxCUoRLrFqTgSxXJ614d8AgQoWl7zPe/2VadE8+1dpU3LBhowRuBAcuwruWtOdD8oYC9jDNJjXDPyA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/vnopts/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/vnopts/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, "node_modules/vue-style-loader": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.3.tgz", @@ -16694,13 +15647,13 @@ } }, "node_modules/webpack": { - "version": "5.79.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.79.0.tgz", - "integrity": "sha512-3mN4rR2Xq+INd6NnYuL9RC9GAmc1ROPKJoHhrZ4pAjdMFEkJJWrsPw8o2JjCIyQyTu7rTXYn4VG6OpyB3CobZg==", + "version": "5.76.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.76.2.tgz", + "integrity": "sha512-Th05ggRm23rVzEOlX8y67NkYCHa9nTNcwHPBhdg+lKG+mtiW7XgggjAeeLnADAe7mLjJ6LUNfgHAuRRh+Z6J7w==", "dev": true, "dependencies": { "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.0", + "@types/estree": "^0.0.51", "@webassemblyjs/ast": "1.11.1", "@webassemblyjs/wasm-edit": "1.11.1", "@webassemblyjs/wasm-parser": "1.11.1", @@ -16709,7 +15662,7 @@ "browserslist": "^4.14.5", "chrome-trace-event": "^1.0.2", "enhanced-resolve": "^5.10.0", - "es-module-lexer": "^1.2.1", + "es-module-lexer": "^0.9.0", "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", @@ -16720,7 +15673,7 @@ "neo-async": "^2.6.2", "schema-utils": "^3.1.0", "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.7", + "terser-webpack-plugin": "^5.1.3", "watchpack": "^2.4.0", "webpack-sources": "^3.2.3" }, @@ -16864,9 +15817,9 @@ } }, "node_modules/webpack-dev-server": { - "version": "4.13.2", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.13.2.tgz", - "integrity": "sha512-5i6TrGBRxG4vnfDpB6qSQGfnB6skGBXNL5/542w2uRGLimX6qeE5BQMLrzIC3JYV/xlGOv+s+hTleI9AZKUQNw==", + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.13.1.tgz", + "integrity": "sha512-5tWg00bnWbYgkN+pd5yISQKDejRBYGEw15RaEEslH+zdbNDxxaZvEAO2WulaSaFKb5n3YG8JXsGaDsut1D0xdA==", "dev": true, "dependencies": { "@types/bonjour": "^3.5.9", @@ -17207,15 +16160,6 @@ "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", "dev": true }, - "node_modules/webpack-rtl-plugin/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/webpack-rtl-plugin/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -18014,6 +16958,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, "dependencies": { "isexe": "^2.0.0" }, @@ -18104,7 +17049,8 @@ "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true }, "node_modules/ws": { "version": "8.13.0", @@ -18127,18 +17073,10 @@ } } }, - "node_modules/x-formatter": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/x-formatter/-/x-formatter-0.0.2.tgz", - "integrity": "sha512-JO3XWRfc2cpmUZHyOgerDXx/d4TzSz+mtsmUXZdw9LQSiPiLmyCvNad4a8N7cNS1Zgbq2IDW0xw47exvy0B8ZA==", - "dependencies": { - "@prettier-x/formatter-2021-01": "^0.0.1-rc01" - } - }, "node_modules/xmldoc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/xmldoc/-/xmldoc-1.3.0.tgz", - "integrity": "sha512-y7IRWW6PvEnYQZNZFMRLNJw+p3pezM4nKYPfr15g4OOW9i8VpeydycFuipE2297OvZnh3jSb2pxOt9QpkZUVng==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/xmldoc/-/xmldoc-1.2.0.tgz", + "integrity": "sha512-2eN8QhjBsMW2uVj7JHLHkMytpvGHLHxKXBy4J3fAT/HujsEtM6yU84iGjpESYGHg6XwK0Vu4l+KgqQ2dv2cCqg==", "dependencies": { "sax": "^1.2.4" } @@ -18192,28 +17130,11 @@ "version": "1.10.2", "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, "engines": { "node": ">= 6" } }, - "node_modules/yaml-unist-parser": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/yaml-unist-parser/-/yaml-unist-parser-1.3.1.tgz", - "integrity": "sha512-4aHBMpYcnByF8l2OKj5hlBJlxSYIMON8Z1Hm57ymbBL4omXMlGgY+pEf4Di6h2qNT8ZG8seTVvAQYNOa7CZ9eA==", - "dependencies": { - "lines-and-columns": "^1.1.6", - "tslib": "^1.10.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/yaml-unist-parser/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, "node_modules/yargs": { "version": "17.7.1", "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", @@ -18253,5 +17174,13005 @@ "url": "https://github.com/sponsors/sindresorhus" } } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dev": true, + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/compat-data": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", + "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", + "dev": true + }, + "@babel/core": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.3.tgz", + "integrity": "sha512-qIJONzoa/qiHghnm0l1n4i/6IIziDpzqc36FBs4pzMhDUraHqponwJLiAKm1hGLP3OSB/TVNz6rMwVGpwxxySw==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.3", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.21.2", + "@babel/helpers": "^7.21.0", + "@babel/parser": "^7.21.3", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.3", + "@babel/types": "^7.21.3", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.3.tgz", + "integrity": "sha512-QS3iR1GYC/YGUnW7IdggFeN5c1poPUurnGttOV/bZgPGV+izC/D8HnD6DLwod0fsatNyVn1G3EVWMYIF0nHbeA==", + "dev": true, + "requires": { + "@babel/types": "^7.21.3", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz", + "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-member-expression-to-functions": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/helper-split-export-declaration": "^7.18.6" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz", + "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.3.1" + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "dev": true + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-function-name": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "dev": true, + "requires": { + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", + "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", + "dev": true, + "requires": { + "@babel/types": "^7.21.0" + } + }, + "@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-module-transforms": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", + "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.2", + "@babel/types": "^7.21.2" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "dev": true + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" + } + }, + "@babel/helper-replace-supers": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", + "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.20.7", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" + } + }, + "@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "dev": true, + "requires": { + "@babel/types": "^7.20.2" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", + "dev": true, + "requires": { + "@babel/types": "^7.20.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "dev": true + }, + "@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", + "dev": true + }, + "@babel/helper-wrap-function": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", + "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" + } + }, + "@babel/helpers": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", + "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", + "dev": true, + "requires": { + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0" + } + }, + "@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@babel/parser": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.3.tgz", + "integrity": "sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ==", + "dev": true + }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", + "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-proposal-optional-chaining": "^7.20.7" + } + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", + "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-class-static-block": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", + "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", + "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", + "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", + "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" + } + }, + "@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", + "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", + "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", + "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", + "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-split-export-declaration": "^7.18.6", + "globals": "^11.1.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", + "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/template": "^7.20.7" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz", + "integrity": "sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", + "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", + "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", + "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.21.2", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-simple-access": "^7.20.2" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", + "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-identifier": "^7.19.1" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", + "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.20.5", + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", + "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz", + "integrity": "sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", + "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "regenerator-transform": "^0.15.1" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-runtime": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz", + "integrity": "sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", + "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", + "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/preset-env": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", + "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.20.1", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.20.2", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.20.2", + "@babel/plugin-transform-classes": "^7.20.2", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.20.2", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.19.6", + "@babel/plugin-transform-modules-commonjs": "^7.19.6", + "@babel/plugin-transform-modules-systemjs": "^7.19.6", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.20.1", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.19.0", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "core-js-compat": "^3.25.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, + "@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, + "@babel/runtime": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", + "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.11" + } + }, + "@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + } + }, + "@babel/traverse": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.3.tgz", + "integrity": "sha512-XLyopNeaTancVitYZe2MlUEvgKb6YVVPXzofHgqHijCImG33b/uTurMS488ht/Hbsb2XK3U2BnSTxKVNGV3nGQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.3", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.21.3", + "@babel/types": "^7.21.3", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.3.tgz", + "integrity": "sha512-sBGdETxC+/M4o/zKC0sl6sjWv62WFR/uzxrJ6uYyMLZOUlPnwzw0tKgVHOXxaAd5l2g8pEDM5RZ495GPQI77kg==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + } + }, + "@ckeditor/ckeditor5-adapter-ckfinder": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-adapter-ckfinder/-/ckeditor5-adapter-ckfinder-38.1.1.tgz", + "integrity": "sha512-TDv6xOkcXws0RmfkBJ6vfuH4vwj3mbI8S++9czLKrHmwp24jSrxiRwP1ZUlJSImy+/3sTjec4u8I5fq0HA2UOA==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-alignment": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-alignment/-/ckeditor5-alignment-38.1.1.tgz", + "integrity": "sha512-eq8T9/YLjwFsspxDfEtvZqKuh/D0ckGHN42tzfM+TCcvpYgFDzxJd/GbenewVdQW4iU87JvKpS7aOaKCeJ5ckw==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-autoformat": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-autoformat/-/ckeditor5-autoformat-38.1.1.tgz", + "integrity": "sha512-Ppxxp0qprhENktpKv3lkVFchS9iZt0GbCVLPg8ffTb5dCAQgeXyC/TdR1b3zpbdjgSyai07OYgU59oTNUOwtog==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-basic-styles": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-basic-styles/-/ckeditor5-basic-styles-38.1.1.tgz", + "integrity": "sha512-+mky2W983jaSlYpvQ31af0ethMQxXUxuBkd2IzRi2cchvSK9YbQtBSkV0EM595uoJa1S3doyCJn7Y8bOdE+v3A==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-block-quote": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-block-quote/-/ckeditor5-block-quote-38.1.1.tgz", + "integrity": "sha512-YPSw+qTE71mvQTo5OA2M9oQp1jpUJrj1d15mbVE5DIyvc2CMWRltqV49GoM15ZpzgQWbaF3VZ8ZT0+vZlfS0lw==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-build-balloon": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-balloon/-/ckeditor5-build-balloon-38.1.1.tgz", + "integrity": "sha512-yVywEYBpI+caSx3CogqFdEgn55Sl42q4InUqZJJqgB3wLjtLhm43+dQa2d2gf1DyDIFjMNl1q0O303bVx2ru9Q==", + "requires": { + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-balloon": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1" + } + }, + "@ckeditor/ckeditor5-build-balloon-block": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-balloon-block/-/ckeditor5-build-balloon-block-38.1.1.tgz", + "integrity": "sha512-3ZLrEKB/nQ9b6TamfXFafipzxDFr3CJe+nfoiP3YJgzwfqOmRSvf2jSzgGGNSin2Zvw/5BwnM08GEts0L8o+2g==", + "requires": { + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-balloon": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1" + } + }, + "@ckeditor/ckeditor5-build-classic": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-classic/-/ckeditor5-build-classic-38.1.1.tgz", + "integrity": "sha512-TaVK+kVX2hMZD8imbfsQHKTiMo4seBkmZvu8KgNPn8tNarmJacO27EYmPmzL04KyctP2pv4rt2UTzPfuFZyqvg==", + "requires": { + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-classic": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1" + } + }, + "@ckeditor/ckeditor5-build-decoupled-document": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-decoupled-document/-/ckeditor5-build-decoupled-document-38.1.1.tgz", + "integrity": "sha512-WI4zGIZxRhJ74hiXb6s0q1VJoaBSl6ZDC3bv56HMFBvLsDeeb1eE9SdgIs3u4x0RhyRPs3+R2vBhxFMkQdXRtg==", + "requires": { + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-alignment": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-decoupled": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-font": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1" + } + }, + "@ckeditor/ckeditor5-build-inline": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-inline/-/ckeditor5-build-inline-38.1.1.tgz", + "integrity": "sha512-sZG7EISh1ZxeHABflLlzv0xEsxnwA7V1T3j4320/+I7D6R0HUrVvjfiM+RPQruyGKjD8bh7RTbEm40lQN82Xyg==", + "requires": { + "@ckeditor/ckeditor5-adapter-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-autoformat": "38.1.1", + "@ckeditor/ckeditor5-basic-styles": "38.1.1", + "@ckeditor/ckeditor5-block-quote": "38.1.1", + "@ckeditor/ckeditor5-ckbox": "38.1.1", + "@ckeditor/ckeditor5-ckfinder": "38.1.1", + "@ckeditor/ckeditor5-cloud-services": "38.1.1", + "@ckeditor/ckeditor5-easy-image": "38.1.1", + "@ckeditor/ckeditor5-editor-inline": "38.1.1", + "@ckeditor/ckeditor5-essentials": "38.1.1", + "@ckeditor/ckeditor5-heading": "38.1.1", + "@ckeditor/ckeditor5-image": "38.1.1", + "@ckeditor/ckeditor5-indent": "38.1.1", + "@ckeditor/ckeditor5-link": "38.1.1", + "@ckeditor/ckeditor5-list": "38.1.1", + "@ckeditor/ckeditor5-media-embed": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-paste-from-office": "38.1.1", + "@ckeditor/ckeditor5-table": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1" + } + }, + "@ckeditor/ckeditor5-ckbox": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ckbox/-/ckeditor5-ckbox-38.1.1.tgz", + "integrity": "sha512-+R3Vz2QL/K2pdWzOZpFtrLwFHefxQfDT99sYQSUZiOQaXA6rSoLT4x6lhIdrQRjsI/ofCIGseQxuTHc8t86urA==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-ckfinder": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ckfinder/-/ckeditor5-ckfinder-38.1.1.tgz", + "integrity": "sha512-58139l/uKcMD6KZzd5uPzv8IwJYNnDFsT8N6DlecTZuh3ViKmg9t/pbRWu8epOboySwHeJoA3q12m2j05C1+JQ==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-clipboard": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-clipboard/-/ckeditor5-clipboard-38.1.1.tgz", + "integrity": "sha512-FN6QxWw0ZcoMsCkm6FuN2do//qjNGofnsFernKWJPbL2E056dvB4WmhYHa4fCvGASCROcJ17yUV7oYI+1ah/og==", + "requires": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "@ckeditor/ckeditor5-widget": "38.1.1", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-cloud-services": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-cloud-services/-/ckeditor5-cloud-services-38.1.1.tgz", + "integrity": "sha512-M4MykJmA9JqlZEDCJfcGwEKq6Y1AuDf8Kxbl0LfMZu6BKv74up+c0wSD/WX7isot3eqDdSQckVjHlJvmS31EOA==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-core": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-core/-/ckeditor5-core-38.1.1.tgz", + "integrity": "sha512-5yC+oSoCnjfOrvmECbwtu4zBt9S5dJfOYsAzfIGEbmD9DVGIyLBDKEjJ9IbAKAy1HG6CgAkZyv1YyEc5G5g3ew==", + "requires": { + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-easy-image": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-easy-image/-/ckeditor5-easy-image-38.1.1.tgz", + "integrity": "sha512-kusGv9hBkFNm3/ZSr69fgdJ3V94feL0oXQoRUsCTsv2usda6KOIY3D5XMK8vvBpa7+0gFan98AvX9KM5IvrMkQ==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-editor-balloon": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-balloon/-/ckeditor5-editor-balloon-38.1.1.tgz", + "integrity": "sha512-gchehCuglncwOme1/7JGSA2obObm88MCWayy38xlNLHQZA/9FCUrbFAsqvkc2Pza+9+u84vw0FS/k2LIcG5nLQ==", + "requires": { + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-editor-classic": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-classic/-/ckeditor5-editor-classic-38.1.1.tgz", + "integrity": "sha512-LSh60tSuR8pGnLswy+Smx7x0NtFjbVX2dGiEkMyh4O0JLok/YgS3IU6UmoEd9FTjGqnOZ3644h3SpkSu84uDYA==", + "requires": { + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-editor-decoupled": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-decoupled/-/ckeditor5-editor-decoupled-38.1.1.tgz", + "integrity": "sha512-vFYKLbFNI8wWHQ6IGY43eJaE6hwyGzI0TEGNci0AKJo5K/szUo3heL/JnuEknOqRJf4EL7RGeHw8fLAmV2XiZQ==", + "requires": { + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-editor-inline": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-inline/-/ckeditor5-editor-inline-38.1.1.tgz", + "integrity": "sha512-orp4tRtiIaWxK3UB+612OgvL/NRTRVjDmxObq5QXfmdPE8I4diM0RFx4aLlBJzjK943+6tt9/8aQKVuN5s5TEQ==", + "requires": { + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-engine": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-engine/-/ckeditor5-engine-38.1.1.tgz", + "integrity": "sha512-Z0LYg7B4vN3ZNUf3utmBRXQBn3JNy81Xs+45sQ09Fpf5p6aKer37vxEA315O17PnWYndildeKNRUNdjI942HcQ==", + "requires": { + "@ckeditor/ckeditor5-utils": "38.1.1", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-enter": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-enter/-/ckeditor5-enter-38.1.1.tgz", + "integrity": "sha512-jzlTvyBwBw4TLr03NXwVeZD87pOSjisx8WCEahWM8Rxrw77k+7rg3blAWmmpw9cHUp2WkpxCztfvQtQouT9Jpw==", + "requires": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1" + } + }, + "@ckeditor/ckeditor5-essentials": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-essentials/-/ckeditor5-essentials-38.1.1.tgz", + "integrity": "sha512-8Upvcjqny39pEZM5JbdyM8MESGjC6IkAJpjvqEFkbZsFcFzXjPolbxPReI3Xbl74XaMGYpwfraTv7ozkCxD7eA==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-font": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-font/-/ckeditor5-font-38.1.1.tgz", + "integrity": "sha512-DHXtwbMbX4BtRzlCFTe/3Z2bISf5c1tOpu9+RozcOEnV3it0B8R8HacrETcbK3s0sH9zG5iZCVj5sRC66/TEvg==", + "requires": { + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-heading": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-heading/-/ckeditor5-heading-38.1.1.tgz", + "integrity": "sha512-uEh62XWpw5uIpaslJfn8YZ+9DfViCRR5auAz5SdiYDY+tdLjwKS308S1um5i5G/CLjp1M3uXlvDieOopit9nYg==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-image": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-image/-/ckeditor5-image-38.1.1.tgz", + "integrity": "sha512-iXUlw38Eoo5zwj3h9eKULenEDPYoohPLT/74UDYw1V7Q3QY3dN4fCovcWwQx7VFPMPFUtd5T1S/ki/3UpLQhSA==", + "requires": { + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-indent": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-indent/-/ckeditor5-indent-38.1.1.tgz", + "integrity": "sha512-Wr0lAiTVGVAD4N/4zqFSGdO40uZEUdVaPFBNzRz2XeohLlMiu5poaWQkEmwtShyl8CFG5MYIayw0JBDw7uHPbA==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-link": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-link/-/ckeditor5-link-38.1.1.tgz", + "integrity": "sha512-CMIPPaUIOvVPW/gIEmcZ00bYbQyy3/YenxPrzmdMkYjDWoPqfhDnn4FTrgEBYyWRXTNXXrS7D08VGeGCDOyYPA==", + "requires": { + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-list": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-list/-/ckeditor5-list-38.1.1.tgz", + "integrity": "sha512-FzBdAZWaBXjUYmtd7fDzIJ4evXM6n1RbNYG7ICzoviarlKL99mv/wLEkEvNDH0japdu/G11JtV36tRtBCzwoDQ==", + "requires": { + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-media-embed": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-media-embed/-/ckeditor5-media-embed-38.1.1.tgz", + "integrity": "sha512-jWZUsJNRwVBfeTroSHcssEijCmNLgs2pJwKzJTcltyJr44se2V2kTEieCT3r0qpQvbdyw90n+MfrrlWb+S1bnQ==", + "requires": { + "@ckeditor/ckeditor5-ui": "38.1.1", + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-paragraph": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-paragraph/-/ckeditor5-paragraph-38.1.1.tgz", + "integrity": "sha512-IsiCDTMK5s9T1QWwiLW90VFKsNfsTUlYy8tnr/sH5t2QFP8LOkF2ZL2igb/BqyuROrGVvS8At+BTnlH3hqAW/Q==", + "requires": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1" + } + }, + "@ckeditor/ckeditor5-paste-from-office": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-paste-from-office/-/ckeditor5-paste-from-office-38.1.1.tgz", + "integrity": "sha512-xCAw3HwxfFgsZPINf6jb29MObDN2wDzZFpiMkChdjzmHqaCugd2SAssZQo/flxdy5fkMXju8gCa0bfM2g1HTkQ==", + "requires": { + "ckeditor5": "38.1.1" + } + }, + "@ckeditor/ckeditor5-select-all": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-select-all/-/ckeditor5-select-all-38.1.1.tgz", + "integrity": "sha512-e/JUdGsBkf902rG0g+6ii/QhDP+LFV2W9bxhrGppLahzPX09NT5BCJh2/bTtUPw0cIRpk49ji7hNBzDjCKqctQ==", + "requires": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1" + } + }, + "@ckeditor/ckeditor5-table": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-table/-/ckeditor5-table-38.1.1.tgz", + "integrity": "sha512-QOTc+Re3K5mY6GHC2vmglNb8k5D49cCjVlO2ORvr3Pk/Nepmk6asW3NoSfox8YJZSAfJyloD+t56FagZSokP+g==", + "requires": { + "ckeditor5": "38.1.1", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-typing": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-typing/-/ckeditor5-typing-38.1.1.tgz", + "integrity": "sha512-KU0wF1ueWFwK3BnkGB2v2vpjISgwmC0OxpPM0RLHCDG5iSvIkPbu1tUj9rbxRx45JM6xgpTP1C9kEFSm5w5MoQ==", + "requires": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-ui": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ui/-/ckeditor5-ui-38.1.1.tgz", + "integrity": "sha512-lTqOaciupH66Zz7BSRGOm5DyjLURJwmFfZyCYCKD6+ZbTsxcP1asdiUm8y3bOx2maRCZTrHMhuAANp3qFWXoLQ==", + "requires": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "color-convert": "2.0.1", + "color-parse": "1.4.2", + "lodash-es": "^4.17.15", + "vanilla-colorful": "0.7.2" + } + }, + "@ckeditor/ckeditor5-undo": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-undo/-/ckeditor5-undo-38.1.1.tgz", + "integrity": "sha512-21XCRb4XKYrK2bAkNTbOUb3Cmbu4FB11cqG3ncIg2rWSHSJJOijMdvZpZBvNpXVEsvJgA2Ol7bCiSXgdVUR/yQ==", + "requires": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1" + } + }, + "@ckeditor/ckeditor5-upload": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-upload/-/ckeditor5-upload-38.1.1.tgz", + "integrity": "sha512-c7zau/N4cGJKpNPoRj0QEAQKOiIQzrSK2UCG0JsPtfF9jzTWa5fIJ/6hSHquwjtnhkB7zAL0PKXwcTNpdlyibA==", + "requires": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1" + } + }, + "@ckeditor/ckeditor5-utils": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-utils/-/ckeditor5-utils-38.1.1.tgz", + "integrity": "sha512-+dSCchr8sseqWSfCuuOk5uajCo2Tr71IXmn3EGalEHE6Fc1GjWElO90GAA4Pbezrt1zG1tDqhh+bZHULAcK8wQ==", + "requires": { + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-watchdog": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-watchdog/-/ckeditor5-watchdog-38.1.1.tgz", + "integrity": "sha512-NijdWJsl+vnzdtyhI0u0Ln2TEVaSLa2VEHyB7J1r57cUN9Bq5tqRH4/BhvvqGKGc9lkpbvcSFduH2c6StHm0rw==", + "requires": { + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-widget": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-widget/-/ckeditor5-widget-38.1.1.tgz", + "integrity": "sha512-WAQhYBRfpu5jhV7Subc8pVkHYFCgXyJ65bQg5Jn8Em86lySejXQEi/GowjKwkwzlSrceqDrELEJV9jcCaUZlaA==", + "requires": { + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-enter": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "lodash-es": "^4.17.15" + } + }, + "@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "optional": true + }, + "@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "dev": true + }, + "@egjs/hammerjs": { + "version": "2.0.17", + "resolved": "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz", + "integrity": "sha512-XQsZgjm2EcVUiZQf11UBJQfmZeEmOW8DpI1gsFeln6w0ae0ii4dMQEQ0kjl6DspdWX1aGY1/loyXnP0JS06e/A==", + "peer": true, + "requires": { + "@types/hammerjs": "^2.0.36" + } + }, + "@eonasdan/tempus-dominus": { + "version": "6.7.13", + "resolved": "https://registry.npmjs.org/@eonasdan/tempus-dominus/-/tempus-dominus-6.7.13.tgz", + "integrity": "sha512-1saI7S0WM6jVE+799KjwsVwcDgrde4SUwmR9AofWGi+yq6w4j6TfVCF9rss+pMXTjSnApY17Nd70260pdm3LTA==", + "requires": {} + }, + "@foliojs-fork/fontkit": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@foliojs-fork/fontkit/-/fontkit-1.9.1.tgz", + "integrity": "sha512-U589voc2/ROnvx1CyH9aNzOQWJp127JGU1QAylXGQ7LoEAF6hMmahZLQ4eqAcgHUw+uyW4PjtCItq9qudPkK3A==", + "requires": { + "@foliojs-fork/restructure": "^2.0.2", + "brfs": "^2.0.0", + "brotli": "^1.2.0", + "browserify-optional": "^1.0.1", + "clone": "^1.0.4", + "deep-equal": "^1.0.0", + "dfa": "^1.2.0", + "tiny-inflate": "^1.0.2", + "unicode-properties": "^1.2.2", + "unicode-trie": "^2.0.0" + } + }, + "@foliojs-fork/linebreak": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@foliojs-fork/linebreak/-/linebreak-1.1.1.tgz", + "integrity": "sha512-pgY/+53GqGQI+mvDiyprvPWgkTlVBS8cxqee03ejm6gKAQNsR1tCYCIvN9FHy7otZajzMqCgPOgC4cHdt4JPig==", + "requires": { + "base64-js": "1.3.1", + "brfs": "^2.0.2", + "unicode-trie": "^2.0.0" + }, + "dependencies": { + "base64-js": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" + } + } + }, + "@foliojs-fork/pdfkit": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@foliojs-fork/pdfkit/-/pdfkit-0.13.0.tgz", + "integrity": "sha512-YXeG1fml9k97YNC9K8e292Pj2JzGt9uOIiBFuQFxHsdQ45BlxW+JU3RQK6JAvXU7kjhjP8rCcYvpk36JLD33sQ==", + "requires": { + "@foliojs-fork/fontkit": "^1.9.1", + "@foliojs-fork/linebreak": "^1.1.1", + "crypto-js": "^4.0.0", + "png-js": "^1.0.0" + } + }, + "@foliojs-fork/restructure": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@foliojs-fork/restructure/-/restructure-2.0.2.tgz", + "integrity": "sha512-59SgoZ3EXbkfSX7b63tsou/SDGzwUEK6MuB5sKqgVK1/XE0fxmpsOb9DQI8LXW3KfGnAjImCGhhEb7uPPAUVNA==" + }, + "@fortawesome/fontawesome-free": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.4.2.tgz", + "integrity": "sha512-m5cPn3e2+FDCOgi1mz0RexTUvvQibBebOUlUlW0+YrMjDTPkiJ6VTKukA1GRsvRw+12KyJndNjj0O4AgTxm2Pg==" + }, + "@fullhuman/postcss-purgecss": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@fullhuman/postcss-purgecss/-/postcss-purgecss-3.1.3.tgz", + "integrity": "sha512-kwOXw8fZ0Lt1QmeOOrd+o4Ibvp4UTEBFQbzvWldjlKv5n+G9sXfIPn1hh63IQIL8K8vbvv1oYMJiIUbuy9bGaA==", + "dev": true, + "requires": { + "purgecss": "^3.1.3" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true + }, + "@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "@leichtgewicht/ip-codec": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", + "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", + "dev": true + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==" + }, + "@romainberger/css-diff": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@romainberger/css-diff/-/css-diff-1.0.3.tgz", + "integrity": "sha512-zR2EvxtJvQXRxFtTnqazMsJADngyVIulzYQ+wVYWRC1Hw3e4gfEIbigX46wTsPUyjAI+lRXFrBSoCWcgZ6ZSlQ==", + "dev": true, + "requires": { + "lodash.merge": "^4.4.0", + "postcss": "^5.0.21" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "js-base64": "^2.1.9", + "source-map": "^0.5.6", + "supports-color": "^3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + } + } + }, + "@shopify/draggable": { + "version": "1.0.0-beta.12", + "resolved": "https://registry.npmjs.org/@shopify/draggable/-/draggable-1.0.0-beta.12.tgz", + "integrity": "sha512-Un/Dn61sv2er9yjDXLGWMauCOWBb0BMbm0yzmmrD+oUX2/x50yhNJASTsCRdndUCpWlqYfZH8jEfaOgTPsKc/g==" + }, + "@terraformer/arcgis": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@terraformer/arcgis/-/arcgis-2.1.2.tgz", + "integrity": "sha512-IvdfqehcNAUtKU1OFMKwPT8EvdKlVFZ7q7ZKzkIF8XzYZIVsZLuXuOS1UBdRh5u/o+X5Gax7jiZhD8U/4TV+Jw==", + "requires": { + "@terraformer/common": "^2.1.2" + } + }, + "@terraformer/common": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@terraformer/common/-/common-2.1.2.tgz", + "integrity": "sha512-cwPdTFzIpekZhZRrgDEkqLKNPoqbyCBQHiemaovnGIeUx0Pl336MY/eCxzJ5zXkrQLVo9zPalq/vYW5HnyKevQ==" + }, + "@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "dev": true + }, + "@types/babel__core": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", + "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", + "dev": true, + "requires": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@types/babel__traverse": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", + "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", + "dev": true, + "requires": { + "@babel/types": "^7.3.0" + } + }, + "@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dev": true, + "requires": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "@types/bonjour": { + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", + "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/clean-css": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@types/clean-css/-/clean-css-4.2.6.tgz", + "integrity": "sha512-Ze1tf+LnGPmG6hBFMi0B4TEB0mhF7EiMM5oyjLDNPE9hxrPU0W+5+bHvO+eFPA+bt0iC1zkQMoU/iGdRVjcRbw==", + "dev": true, + "requires": { + "@types/node": "*", + "source-map": "^0.6.0" + } + }, + "@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/connect-history-api-fallback": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", + "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", + "dev": true, + "requires": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "@types/eslint": { + "version": "8.21.3", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.3.tgz", + "integrity": "sha512-fa7GkppZVEByMWGbTtE5MbmXWJTVbrjjaS8K6uQj+XtuuUv1fsuPAxhygfqLmsb/Ufb3CV8deFCpiMfAgi00Sw==", + "dev": true, + "requires": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "dev": true, + "requires": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", + "dev": true + }, + "@types/express": { + "version": "4.17.17", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", + "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", + "dev": true, + "requires": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "@types/express-serve-static-core": { + "version": "4.17.33", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", + "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "@types/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", + "dev": true, + "requires": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/hammerjs": { + "version": "2.0.41", + "resolved": "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.41.tgz", + "integrity": "sha512-ewXv/ceBaJprikMcxCmWU1FKyMAQ2X7a9Gtmzw8fcg2kIePI1crERDM818W+XYrxqdBBOdlf2rm137bU+BltCA==", + "peer": true + }, + "@types/http-proxy": { + "version": "1.17.10", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.10.tgz", + "integrity": "sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/imagemin": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/@types/imagemin/-/imagemin-8.0.1.tgz", + "integrity": "sha512-DSpM//dRPzme7doePGkmR1uoquHi0h0ElaA5qFnxHECfFcB8z/jhMI8eqmxWNpHn9ZG18p4PC918sZLhR0cr5A==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/imagemin-gifsicle": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@types/imagemin-gifsicle/-/imagemin-gifsicle-7.0.1.tgz", + "integrity": "sha512-kUz6sUh0P95JOS0RGEaaemWUrASuw+dLsWIveK2UZJx74id/B9epgblMkCk/r5MjUWbZ83wFvacG5Rb/f97gyA==", + "dev": true, + "requires": { + "@types/imagemin": "*" + } + }, + "@types/imagemin-mozjpeg": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/@types/imagemin-mozjpeg/-/imagemin-mozjpeg-8.0.1.tgz", + "integrity": "sha512-kMQWEoKxxhlnH4POI3qfW9DjXlQfi80ux3l2b3j5R3eudSCoUIzKQLkfMjNJ6eMYnMWBcB+rfQOWqIzdIwFGKw==", + "dev": true, + "requires": { + "@types/imagemin": "*" + } + }, + "@types/imagemin-optipng": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@types/imagemin-optipng/-/imagemin-optipng-5.2.1.tgz", + "integrity": "sha512-XCM/3q+HUL7v4zOqMI+dJ5dTxT+MUukY9KU49DSnYb/4yWtSMHJyADP+WHSMVzTR63J2ZvfUOzSilzBNEQW78g==", + "dev": true, + "requires": { + "@types/imagemin": "*" + } + }, + "@types/imagemin-svgo": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/@types/imagemin-svgo/-/imagemin-svgo-8.0.1.tgz", + "integrity": "sha512-YafkdrVAcr38U0Ln1C+L1n4SIZqC47VBHTyxCq7gTUSd1R9MdIvMcrljWlgU1M9O68WZDeQWUrKipKYfEOCOvQ==", + "dev": true, + "requires": { + "@types/imagemin": "*", + "@types/svgo": "^1" + } + }, + "@types/jquery": { + "version": "3.5.16", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.16.tgz", + "integrity": "sha512-bsI7y4ZgeMkmpG9OM710RRzDFp+w4P1RGiIt30C1mSBT+ExCleeh4HObwgArnDFELmRrOpXgSYN9VF1hj+f1lw==", + "requires": { + "@types/sizzle": "*" + } + }, + "@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "dev": true + }, + "@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", + "dev": true + }, + "@types/minimatch": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", + "dev": true + }, + "@types/node": { + "version": "18.15.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.3.tgz", + "integrity": "sha512-p6ua9zBxz5otCmbpb5D3U4B5Nanw6Pk3PPyX05xnxbB/fRv71N7CPmORg7uAD5P70T0xmx1pzAx/FUfa5X+3cw==", + "dev": true + }, + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "@types/q": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz", + "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==", + "dev": true + }, + "@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true + }, + "@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "dev": true + }, + "@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true + }, + "@types/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", + "dev": true, + "requires": { + "@types/express": "*" + } + }, + "@types/serve-static": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", + "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", + "dev": true, + "requires": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "@types/sizzle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", + "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==" + }, + "@types/sockjs": { + "version": "0.3.33", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", + "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/svgo": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/@types/svgo/-/svgo-1.3.6.tgz", + "integrity": "sha512-AZU7vQcy/4WFEuwnwsNsJnFwupIpbllH1++LXScN6uxT1Z4zPzdrWG97w4/I7eFKFTvfy/bHFStWjdBAg2Vjug==", + "dev": true + }, + "@types/ws": { + "version": "8.5.4", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz", + "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@vue/reactivity": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz", + "integrity": "sha512-1tdfLmNjWG6t/CsPldh+foumYFo3cpyCHgBYQ34ylaMsJ+SNHQ1kApMIa8jN+i593zQuaw3AdWH0nJTARzCFhg==", + "dev": true, + "requires": { + "@vue/shared": "3.1.5" + } + }, + "@vue/shared": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", + "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==", + "dev": true + }, + "@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "dev": true, + "requires": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", + "dev": true + }, + "@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "dev": true, + "requires": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "dev": true, + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "dev": true, + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "@webpack-cli/configtest": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz", + "integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==", + "dev": true, + "requires": {} + }, + "@webpack-cli/info": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz", + "integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==", + "dev": true, + "requires": { + "envinfo": "^7.7.3" + } + }, + "@webpack-cli/serve": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz", + "integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==", + "dev": true, + "requires": {} + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "@yaireo/tagify": { + "version": "4.17.9", + "resolved": "https://registry.npmjs.org/@yaireo/tagify/-/tagify-4.17.9.tgz", + "integrity": "sha512-x9aZy22hzte7BNmMrFcYNrZH71ombgH5PnzcOVXqPevRV/m/ItSnWIvY5fOHYzpC9Uxy0+h/1P5v62fIvwq2MA==", + "requires": {} + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, + "accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "requires": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==" + }, + "acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "dev": true, + "requires": {} + }, + "acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "requires": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" + }, + "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + } + } + }, + "acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==" + }, + "adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + } + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dev": true, + "requires": { + "ajv": "^8.0.0" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + } + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "requires": {} + }, + "alphanum-sort": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", + "integrity": "sha512-0FcBfdcmaumGPQ0qPn7Q5qTgz/ooXgIyp1rf8ik5bGX8mpE2YHjC0P/eyQvxu1GURYQgq9ozf2mteQ5ZD9YiyQ==", + "dev": true + }, + "alpinejs": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-3.12.0.tgz", + "integrity": "sha512-YENcRBA9dlwR8PsZNFMTHbmdlTNwd1BkCeivPvOzzCKHas6AfwNRsDK9UEFmE5dXTMEZjnnpCTxV8vkdpWiOCw==", + "dev": true, + "requires": { + "@vue/reactivity": "~3.1.1" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==", + "optional": true + }, + "ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "dev": true + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "apexcharts": { + "version": "3.41.0", + "resolved": "https://registry.npmjs.org/apexcharts/-/apexcharts-3.41.0.tgz", + "integrity": "sha512-FJXA7NVjxs1q+ptR3b1I+pN8K/gWuXn+qLZjFz8EHvJOokdgcuwa/HSe5aC465HW/LWnrjWLSTsOQejQbQ42hQ==", + "requires": { + "svg.draggable.js": "^2.2.2", + "svg.easing.js": "^2.0.0", + "svg.filter.js": "^2.0.2", + "svg.pathmorphing.js": "^0.1.3", + "svg.resize.js": "^1.4.3", + "svg.select.js": "^3.0.1" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "array-buffer-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", + "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "is-array-buffer": "^3.0.1" + } + }, + "array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", + "dev": true + }, + "array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha512-GQTc6Uupx1FCavi5mPzBvVT7nEOeWMmUA9P95wpfpW1XwMSKs+KaymD5C2Up7KAUKg/mYwbsUYzdZWcoajlNZg==" + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "array.prototype.reduce": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", + "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-array-method-boxes-properly": "^1.0.0", + "is-string": "^1.0.7" + } + }, + "asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } + } + }, + "assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "dev": true, + "requires": { + "object-assign": "^4.1.1", + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "ast-transform": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/ast-transform/-/ast-transform-0.0.0.tgz", + "integrity": "sha512-e/JfLiSoakfmL4wmTGPjv0HpTICVmxwXgYOB8x+mzozHL8v+dSfCbrJ8J8hJ0YBP0XcYu1aLZ6b/3TnxNK3P2A==", + "requires": { + "escodegen": "~1.2.0", + "esprima": "~1.0.4", + "through": "~2.3.4" + } + }, + "ast-types": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.7.8.tgz", + "integrity": "sha512-RIOpVnVlltB6PcBJ5BMLx+H+6JJ/zjDGU0t7f0L6c2M1dqcK92VQopLBlPQ9R80AVXelfqYgjcPLtHtDbNFg0Q==" + }, + "async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "atoa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/atoa/-/atoa-1.0.0.tgz", + "integrity": "sha512-VVE1H6cc4ai+ZXo/CRWoJiHXrA1qfA31DPnx6D20+kSI547hQN5Greh51LQ1baMRMfxO5K5M4ImMtZbZt2DODQ==" + }, + "autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "dev": true, + "requires": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + } + }, + "autosize": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/autosize/-/autosize-6.0.1.tgz", + "integrity": "sha512-f86EjiUKE6Xvczc4ioP1JBlWG7FKrE13qe/DxBCpe8GCipCq2nFw73aO8QEBKHfSbYGDN5eB9jXWKen7tspDqQ==" + }, + "available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "dev": true + }, + "axios": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.0.tgz", + "integrity": "sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ==", + "requires": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "babel-loader": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", + "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", + "dev": true, + "requires": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + } + }, + "babel-plugin-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", + "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.3", + "core-js-compat": "^3.25.1" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "dev": true + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" + }, + "bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "dev": true + }, + "body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dev": true, + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "bonjour-service": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz", + "integrity": "sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q==", + "dev": true, + "requires": { + "array-flatten": "^2.1.2", + "dns-equal": "^1.0.0", + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "bootstrap": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.0.tgz", + "integrity": "sha512-UnBV3E3v4STVNQdms6jSGO2CvOkjUMdDAVR2V5N4uCMdaIkaQjbcEAMqRimDHIs4uqBYzDAKCQwCB+97tJgHQw==", + "requires": {} + }, + "bootstrap-cookie-alert": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bootstrap-cookie-alert/-/bootstrap-cookie-alert-1.2.1.tgz", + "integrity": "sha512-T4nzcJkrCJCfxbw9eRM93EwO3/seSL/wbjsDLLOdLIhhksb07zhj4NOgNJUwtLc7dkI28ef1KZU9yYzHZMUXvQ==" + }, + "bootstrap-daterangepicker": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bootstrap-daterangepicker/-/bootstrap-daterangepicker-3.1.0.tgz", + "integrity": "sha512-oaQZx6ZBDo/dZNyXGVi2rx5GmFXThyQLAxdtIqjtLlYVaQUfQALl5JZMJJZzyDIX7blfy4ppZPAJ10g8Ma4d/g==", + "requires": { + "jquery": ">=1.10", + "moment": "^2.9.0" + } + }, + "bootstrap-icons": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/bootstrap-icons/-/bootstrap-icons-1.10.3.tgz", + "integrity": "sha512-7Qvj0j0idEm/DdX9Q0CpxAnJYqBCFCiUI6qzSPYfERMcokVuV9Mdm/AJiVZI8+Gawe4h/l6zFcOzvV7oXCZArw==" + }, + "bootstrap-maxlength": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/bootstrap-maxlength/-/bootstrap-maxlength-1.10.1.tgz", + "integrity": "sha512-VYQosg0ojUNq05PlZcTwETm0E0Aoe/cclRmCC27QrHk/sY0Q75PUvgHYujN0gb2CD3n2olJfPeqx3EGAqpKjww==", + "requires": { + "bootstrap": "^4.4.1", + "jquery": "^3.5.1", + "qunit": "^2.10.0" + }, + "dependencies": { + "bootstrap": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.6.2.tgz", + "integrity": "sha512-51Bbp/Uxr9aTuy6ca/8FbFloBUJZLHwnhTcnjIeRn2suQWsWzcuJhGjKDB5eppVte/8oCdOL3VuwxvZDUggwGQ==", + "requires": {} + } + } + }, + "bootstrap-multiselectsplitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/bootstrap-multiselectsplitter/-/bootstrap-multiselectsplitter-1.0.4.tgz", + "integrity": "sha512-G1TyuzRUOdcf9iuSoTcYPKVr1waMm6rwoBbDi8/nXM7GX5eF3qZGZXLMeT8tGoaYwuQIsZXGerMtq5VTFQgcHQ==" + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "requires": { + "fill-range": "^7.0.1" + } + }, + "brfs": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brfs/-/brfs-2.0.2.tgz", + "integrity": "sha512-IrFjVtwu4eTJZyu8w/V2gxU7iLTtcHih67sgEdzrhjLBMHp2uYefUBfdM4k2UvcuWMgV7PQDZHSLeNWnLFKWVQ==", + "requires": { + "quote-stream": "^1.0.1", + "resolve": "^1.1.5", + "static-module": "^3.0.2", + "through2": "^2.0.0" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", + "dev": true + }, + "brotli": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/brotli/-/brotli-1.3.3.tgz", + "integrity": "sha512-oTKjJdShmDuGW94SyyaoQvAjf30dZaHnjJ8uAF+u2/vGJkJbJPJAT1gDiOJP5v1Zb6f9KEyW/1HpuaWIXtGHPg==", + "requires": { + "base64-js": "^1.1.2" + } + }, + "browser-resolve": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", + "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "requires": { + "resolve": "1.1.7" + }, + "dependencies": { + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg==" + } + } + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-optional": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-optional/-/browserify-optional-1.0.1.tgz", + "integrity": "sha512-VrhjbZ+Ba5mDiSYEuPelekQMfTbhcA2DhLk2VQWqdcCROWeFqlTcXZ7yfRkXCIl8E+g4gINJYJiRB7WEtfomAQ==", + "requires": { + "ast-transform": "0.0.0", + "ast-types": "^0.7.0", + "browser-resolve": "^1.8.1" + } + }, + "browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dev": true, + "requires": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "dev": true, + "requires": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "requires": { + "pako": "~1.0.5" + } + }, + "browserslist": { + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" + } + }, + "buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "buffer-equal": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz", + "integrity": "sha512-RgSV6InVQ9ODPdLWJ5UAqBqJBOg370Nz6ZQtRzpt6nUjc8v0St97uJ4PYC6NztqIScrAXafKM3mZPMygSe1ggA==" + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", + "dev": true + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==", + "dev": true + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "dev": true + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", + "integrity": "sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==", + "dev": true, + "requires": { + "callsites": "^2.0.0" + }, + "dependencies": { + "callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==", + "dev": true + } + } + }, + "caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==", + "dev": true, + "requires": { + "caller-callsite": "^2.0.0" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dev": true, + "requires": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "caniuse-lite": { + "version": "1.0.30001563", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001563.tgz", + "integrity": "sha512-na2WUmOxnwIZtwnFI2CZ/3er0wdNzU7hN+cPYz/z2ajHThnkWjNBOpEPP4n+4r2WPM847JaMotaJE3bnfzjyKw==", + "dev": true + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "charenc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", + "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==", + "dev": true + }, + "chart.js": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-3.9.1.tgz", + "integrity": "sha512-Ro2JbLmvg83gXF5F4sniaQ+lTbSv18E+TIf2cOeiH1Iqd2PGFOtem+DUufMZsCJwFE7ywPOpfXFBwRTGq7dh6w==" + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "ckeditor5": { + "version": "38.1.1", + "resolved": "https://registry.npmjs.org/ckeditor5/-/ckeditor5-38.1.1.tgz", + "integrity": "sha512-KE6H2WGLlhlI4F//AZn+fv52DhbwAeVv+ZeSIsa5gC81/3ZCzuYc3+IMur/70IBE9Gze8gKwFP9elh/TIaQ5Hw==", + "requires": { + "@ckeditor/ckeditor5-clipboard": "38.1.1", + "@ckeditor/ckeditor5-core": "38.1.1", + "@ckeditor/ckeditor5-engine": "38.1.1", + "@ckeditor/ckeditor5-enter": "38.1.1", + "@ckeditor/ckeditor5-paragraph": "38.1.1", + "@ckeditor/ckeditor5-select-all": "38.1.1", + "@ckeditor/ckeditor5-typing": "38.1.1", + "@ckeditor/ckeditor5-ui": "38.1.1", + "@ckeditor/ckeditor5-undo": "38.1.1", + "@ckeditor/ckeditor5-upload": "38.1.1", + "@ckeditor/ckeditor5-utils": "38.1.1", + "@ckeditor/ckeditor5-watchdog": "38.1.1", + "@ckeditor/ckeditor5-widget": "38.1.1" + } + }, + "clean-css": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", + "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", + "dev": true, + "requires": { + "source-map": "~0.6.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, + "cli-table3": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", + "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "dev": true, + "requires": { + "@colors/colors": "1.5.0", + "string-width": "^4.2.0" + } + }, + "clipboard": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.11.tgz", + "integrity": "sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==", + "requires": { + "good-listener": "^1.2.2", + "select": "^1.1.2", + "tiny-emitter": "^2.0.0" + } + }, + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + } + }, + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==" + }, + "clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + } + }, + "coa": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", + "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "dev": true, + "requires": { + "@types/q": "^1.5.1", + "chalk": "^2.4.1", + "q": "^1.1.2" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "collect.js": { + "version": "4.34.3", + "resolved": "https://registry.npmjs.org/collect.js/-/collect.js-4.34.3.tgz", + "integrity": "sha512-aFr67xDazPwthsGm729mnClgNuh15JEagU6McKBKqxuHOkWL7vMFzGbhsXDdPZ+H6ia5QKIMGYuGOMENBHnVpg==", + "dev": true + }, + "color": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "dev": true, + "requires": { + "color-convert": "^1.9.3", + "color-string": "^1.6.0" + }, + "dependencies": { + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + } + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "color-parse": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.2.tgz", + "integrity": "sha512-RI7s49/8yqDj3fECFZjUI1Yi0z/Gq1py43oNJivAIIDSyJiOZLfYCRQEgn8HEVAj++PcRe8AnL2XF0fRJ3BTnA==", + "requires": { + "color-name": "^1.0.0" + } + }, + "color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "dev": true, + "requires": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", + "dev": true + }, + "colorette": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", + "dev": true + }, + "colors": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz", + "integrity": "sha512-OsSVtHK8Ir8r3+Fxw/b4jS1ZLPXkV6ZxDRJQzeD7qo0SqMXWrHDM71DgYzPMHY8SFJ0Ao+nNU2p1MmwdzKqPrw==", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==" + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "peer": true + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "requires": { + "mime-db": ">= 1.43.0 < 2" + } + }, + "compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } + } + }, + "concat": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/concat/-/concat-1.0.3.tgz", + "integrity": "sha512-f/ZaH1aLe64qHgTILdldbvyfGiGF4uzeo9IuXUloIOLQzFmIPloy9QbZadNsuVv0j5qbKQvQb/H/UYf2UsKTpw==", + "dev": true, + "requires": { + "commander": "^2.9.0" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + } + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "dev": true + }, + "consola": { + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", + "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==", + "dev": true + }, + "console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", + "dev": true + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==", + "dev": true + }, + "content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "requires": { + "safe-buffer": "5.2.1" + } + }, + "content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true + }, + "contra": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/contra/-/contra-1.9.4.tgz", + "integrity": "sha512-N9ArHAqwR/lhPq4OdIAwH4e1btn6EIZMAz4TazjnzCiVECcWUPTma+dRAM38ERImEJBh8NiCCpjoQruSZ+agYg==", + "requires": { + "atoa": "1.0.0", + "ticky": "1.0.1" + } + }, + "convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "dev": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true + }, + "core-js-compat": { + "version": "3.29.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.1.tgz", + "integrity": "sha512-QmchCua884D8wWskMX8tW5ydINzd8oSJVx38lx/pVkFGqztxt73GYre3pm/hyYq8bPf+MW5In4I/uRShFDsbrA==", + "dev": true, + "requires": { + "browserslist": "^4.21.5" + } + }, + "core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dev": true, + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + } + }, + "countup.js": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/countup.js/-/countup.js-2.6.0.tgz", + "integrity": "sha512-GeORCrCcaFUHP3RNf0/dWK+XQX+fsdtrMO31mNvsbKXNNG+DMTcgZ4dWpIG9BnOS8t5+iJbaRXgaaG9oLs0N4g==" + }, + "create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "cropperjs": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/cropperjs/-/cropperjs-1.5.13.tgz", + "integrity": "sha512-by7jKAo73y5/Do0K6sxdTKHgndY0NMjG2bEdgeJxycbcmHuCiMXqw8sxy5C5Y5WTOTcDGmbT7Sr5CgKOXR06OA==" + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "crossvent": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/crossvent/-/crossvent-1.5.5.tgz", + "integrity": "sha512-MY4xhBYEnVi+pmTpHCOCsCLYczc0PVtGdPBz6NXNXxikLaUZo4HdAeUb1UqAo3t3yXAloSelTmfxJ+/oUqkW5w==", + "requires": { + "custom-event": "^1.0.0" + } + }, + "crypt": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", + "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==", + "dev": true + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "crypto-js": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", + "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==" + }, + "css-color-names": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", + "integrity": "sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==", + "dev": true + }, + "css-declaration-sorter": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", + "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", + "dev": true, + "requires": {} + }, + "css-loader": { + "version": "5.2.7", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-5.2.7.tgz", + "integrity": "sha512-Q7mOvpBNBG7YrVGMxRxcBJZFL75o+cH2abNASdibkj/fffYD8qWbInZrD0S9ccI6vZclF3DsHE7njGlLtaHbhg==", + "dev": true, + "requires": { + "icss-utils": "^5.1.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.15", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^3.0.0", + "semver": "^7.3.5" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "dependencies": { + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "requires": { + "domelementtype": "^2.2.0" + } + } + } + }, + "css-select-base-adapter": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", + "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", + "dev": true + }, + "css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dev": true, + "requires": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + } + }, + "css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "cssfilter": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", + "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==", + "peer": true + }, + "cssnano": { + "version": "5.1.15", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", + "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", + "dev": true, + "requires": { + "cssnano-preset-default": "^5.2.14", + "lilconfig": "^2.0.3", + "yaml": "^1.10.2" + } + }, + "cssnano-preset-default": { + "version": "5.2.14", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", + "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", + "dev": true, + "requires": { + "css-declaration-sorter": "^6.3.1", + "cssnano-utils": "^3.1.0", + "postcss-calc": "^8.2.3", + "postcss-colormin": "^5.3.1", + "postcss-convert-values": "^5.1.3", + "postcss-discard-comments": "^5.1.2", + "postcss-discard-duplicates": "^5.1.0", + "postcss-discard-empty": "^5.1.1", + "postcss-discard-overridden": "^5.1.0", + "postcss-merge-longhand": "^5.1.7", + "postcss-merge-rules": "^5.1.4", + "postcss-minify-font-values": "^5.1.0", + "postcss-minify-gradients": "^5.1.1", + "postcss-minify-params": "^5.1.4", + "postcss-minify-selectors": "^5.2.1", + "postcss-normalize-charset": "^5.1.0", + "postcss-normalize-display-values": "^5.1.0", + "postcss-normalize-positions": "^5.1.1", + "postcss-normalize-repeat-style": "^5.1.1", + "postcss-normalize-string": "^5.1.0", + "postcss-normalize-timing-functions": "^5.1.0", + "postcss-normalize-unicode": "^5.1.1", + "postcss-normalize-url": "^5.1.0", + "postcss-normalize-whitespace": "^5.1.1", + "postcss-ordered-values": "^5.1.3", + "postcss-reduce-initial": "^5.1.2", + "postcss-reduce-transforms": "^5.1.0", + "postcss-svgo": "^5.1.0", + "postcss-unique-selectors": "^5.1.1" + } + }, + "cssnano-util-get-arguments": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz", + "integrity": "sha512-6RIcwmV3/cBMG8Aj5gucQRsJb4vv4I4rn6YjPbVWd5+Pn/fuG+YseGvXGk00XLkoZkaj31QOD7vMUpNPC4FIuw==", + "dev": true + }, + "cssnano-util-get-match": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz", + "integrity": "sha512-JPMZ1TSMRUPVIqEalIBNoBtAYbi8okvcFns4O0YIhcdGebeYZK7dMyHJiQ6GqNBA9kE0Hym4Aqym5rPdsV/4Cw==", + "dev": true + }, + "cssnano-util-raw-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz", + "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "cssnano-util-same-parent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz", + "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==", + "dev": true + }, + "cssnano-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", + "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", + "dev": true, + "requires": {} + }, + "csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dev": true, + "requires": { + "css-tree": "^1.1.2" + } + }, + "custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==" + }, + "d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "requires": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "dash-ast": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/dash-ast/-/dash-ast-2.0.1.tgz", + "integrity": "sha512-5TXltWJGc+RdnabUGzhRae1TRq6m4gr+3K2wQX0is5/F2yS6MJXJvLyI3ErAnsAXuJoGqvfVD5icRgim07DrxQ==" + }, + "datatables.net": { + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.13.6.tgz", + "integrity": "sha512-rHNcnW+yEP9me82/KmRcid5eKrqPqW3+I/p1TwqCW3c/7GRYYkDyF6aJQOQ9DNS/pw+nyr4BVpjyJ3yoZXiFPg==", + "requires": { + "jquery": ">=1.7" + } + }, + "datatables.net-bs5": { + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/datatables.net-bs5/-/datatables.net-bs5-1.13.6.tgz", + "integrity": "sha512-lXroZoXhLhDulp8gvU7y7wBherg38SbLMGXcHwbnj+XXh4Hvy+d67zSPYbrVI3YiRwYq+aCx15G5qmMj7KjYQg==", + "requires": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "datatables.net-buttons": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/datatables.net-buttons/-/datatables.net-buttons-2.4.2.tgz", + "integrity": "sha512-ps88Wk6yju8hPyqIPhHZ9xhL+pAfgoiI1nZsyPswvqk84kzcqgj1nmulSSLMYNwFG8awsU8C94gF+Pf+JhDh7g==", + "requires": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "datatables.net-buttons-bs5": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/datatables.net-buttons-bs5/-/datatables.net-buttons-bs5-2.4.2.tgz", + "integrity": "sha512-FIapzeW8zBZJ6/yjnbXn22gjk0ONSLykFRfxiU5w1Zjnn2e3fPSi/xN9l9NagRXFvRO80zacC4nYmYOc2cXKfg==", + "requires": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-buttons": ">=2.3.6", + "jquery": ">=1.7" + } + }, + "datatables.net-colreorder": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/datatables.net-colreorder/-/datatables.net-colreorder-1.7.0.tgz", + "integrity": "sha512-Vyysfxe2kfjeuPJJMGRQ2jHVOfoadyBYKzizbOHzR2bhTVsIYjrbEhUA1H24TISE17SdR77X0RmcUvS/h/Bifw==", + "requires": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "datatables.net-colreorder-bs5": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/datatables.net-colreorder-bs5/-/datatables.net-colreorder-bs5-1.7.0.tgz", + "integrity": "sha512-rqTry8MjF4+ImYqn7mqWp54Bf41DfCoqVLV/4RnaM5YZdSfmeQ+Q3Cp3VcL0/CoIDUIcz0MlexzkhSnYU+L9hA==", + "requires": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-colreorder": ">=1.6.2", + "jquery": ">=1.7" + } + }, + "datatables.net-datetime": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/datatables.net-datetime/-/datatables.net-datetime-1.5.0.tgz", + "integrity": "sha512-MyqPiaLVcf51rkAmUww1GFeJeLl9XqVXOOHMWw8NrR/5usaTINO3gORXYuH9QQSf4wWUs7naWWgyHczxKPWu6g==" + }, + "datatables.net-fixedcolumns": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/datatables.net-fixedcolumns/-/datatables.net-fixedcolumns-4.3.0.tgz", + "integrity": "sha512-H2otCswJDHufI4A8k7HUDj25HCB3a44KFnBlYEwYFWdrJayLcYB3I79kBjS8rSCu4rFEp0I9nVLKvWgKlZZgCQ==", + "requires": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "datatables.net-fixedcolumns-bs5": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/datatables.net-fixedcolumns-bs5/-/datatables.net-fixedcolumns-bs5-4.3.0.tgz", + "integrity": "sha512-DvBRTfFlvZAqUErXYgkQLcF70sL5zBSJNsaWLF3in++sYHZDfY3fdVqHu0NQMTE0QuwmYh61AgJUrtWLrp7zwQ==", + "requires": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-fixedcolumns": ">=4.2.2", + "jquery": ">=1.7" + } + }, + "datatables.net-fixedheader": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/datatables.net-fixedheader/-/datatables.net-fixedheader-3.4.0.tgz", + "integrity": "sha512-qglLTqo/T0IJq0Lp7Ca7wEo50T1iqUO2+YeVG4Ddy6ML5f66B7mLZLzP6yy8zXACFjlRGBDEDxD0ato3g6tviA==", + "requires": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "datatables.net-fixedheader-bs5": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/datatables.net-fixedheader-bs5/-/datatables.net-fixedheader-bs5-3.4.0.tgz", + "integrity": "sha512-x2dTTrsZnm8ah7DJSF40XAiUGEk3oAdBMtrucfZM8TnbU8ekhe+LJAbSj4epDXBr8BAfnVi3KMlfiZKEsa5lRQ==", + "requires": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-fixedheader": ">=3.3.2", + "jquery": ">=1.7" + } + }, + "datatables.net-plugins": { + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/datatables.net-plugins/-/datatables.net-plugins-1.13.6.tgz", + "integrity": "sha512-CPLH+09OiEAP3PKbZH7u2qcLajgHhy4fBHCdLzjGWJwKbIkhaPu7tby4jZHQXqoolUznbm3TEpJj4eMI1eqcGw==", + "requires": { + "@types/jquery": "^3.5.16", + "datatables.net": "^1.13.2" + } + }, + "datatables.net-responsive": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/datatables.net-responsive/-/datatables.net-responsive-2.5.0.tgz", + "integrity": "sha512-GL7DFiRl5qqrp5ql54Psz92xTGPR0rMcrO3hzNxMfvcfpRGL5zFNTvMpTUh59Erm6u1+KoX+j+Ig1ZD3r0iFsA==", + "requires": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "datatables.net-responsive-bs5": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/datatables.net-responsive-bs5/-/datatables.net-responsive-bs5-2.5.0.tgz", + "integrity": "sha512-GklXpvBKOal11chL9l8RiQsvKYEZwxKA50pgwlkrbxrmRmqMH7+sMvLSE42QQCa5E5fWqtYsYdTY+SNkHfa+qA==", + "requires": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-responsive": ">=2.4.1", + "jquery": ">=1.7" + } + }, + "datatables.net-rowgroup": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/datatables.net-rowgroup/-/datatables.net-rowgroup-1.4.0.tgz", + "integrity": "sha512-IyiEqCBA6B49EMm/SvW2dktZvHJCybD30qvYPehQ4Jd9QfRLgQxZtNXNsv0sFG2SX7j7+QlnJoKUb2/zdt4OQw==", + "requires": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "datatables.net-rowgroup-bs5": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/datatables.net-rowgroup-bs5/-/datatables.net-rowgroup-bs5-1.4.0.tgz", + "integrity": "sha512-vdz2Ini/78Aw2FDOl+ynJsmISACYOJukWokqHwddVsOzj46BNlhB/kD2OD4B1Ai/Q4Vtiogp9doTy6UGz6Ru4g==", + "requires": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-rowgroup": ">=1.3.1", + "jquery": ">=1.7" + } + }, + "datatables.net-rowreorder": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/datatables.net-rowreorder/-/datatables.net-rowreorder-1.4.1.tgz", + "integrity": "sha512-N5iS2Sts7DSfukPP9B/AVCYmn/5Yjw51Sui/HT/cuDl3QHm9aNulUqIrUBDPqmeqfrKQModbTvh8MfljdMzw3A==", + "requires": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "datatables.net-rowreorder-bs5": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/datatables.net-rowreorder-bs5/-/datatables.net-rowreorder-bs5-1.4.1.tgz", + "integrity": "sha512-hRFlON9feppkISldXaX/Rz5UgRI8RVq25aOZ8fo8idbk3o78piQ6lyYBl6twXVLfUiexFKp6PlraoMLPhbpniA==", + "requires": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-rowreorder": ">=1.3.3", + "jquery": ">=1.7" + } + }, + "datatables.net-scroller": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/datatables.net-scroller/-/datatables.net-scroller-2.2.0.tgz", + "integrity": "sha512-+erNWYqb8qTGhtt23Weh/i2XuEPthHGtZobAEEqpTZSg7IXMl6jKDh41LAI0+KfvzSPURK1ttVRBtigyNS/zyA==", + "requires": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "datatables.net-scroller-bs5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/datatables.net-scroller-bs5/-/datatables.net-scroller-bs5-2.2.0.tgz", + "integrity": "sha512-eWTgy41lpPRUoTTAspbZLWBQvsexXCVSFNapBPXX4lx1HopMM0fQ5Hxy+liU8IyuBMCHUqO1RxY/URPyWrCtuQ==", + "requires": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-scroller": ">=2.1.1", + "jquery": ">=1.7" + } + }, + "datatables.net-select": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/datatables.net-select/-/datatables.net-select-1.7.0.tgz", + "integrity": "sha512-ps8eL8S2gUV7EdzMraw8mfQlHXpfuc8TC2onBxdk0snP8eizPe85VhpI3r4ULvPRTTI7vcViz8E7JV8aayA2lw==", + "requires": { + "datatables.net": ">=1.13.4", + "jquery": ">=1.7" + } + }, + "datatables.net-select-bs5": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/datatables.net-select-bs5/-/datatables.net-select-bs5-1.7.0.tgz", + "integrity": "sha512-9lDH+V+9ewaVSpKUFMplmpxEBM6eeUl0C+feGD4BRKkrFhMAzVYfuLibm4/gJvG0burQciO9U9eoLI9ywdiWWw==", + "requires": { + "datatables.net-bs5": ">=1.13.4", + "datatables.net-select": ">=1.6.2", + "jquery": ">=1.7" + } + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "requires": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + } + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "requires": { + "execa": "^5.0.0" + } + }, + "define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true + }, + "define-properties": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "del": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "dev": true, + "requires": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" + }, + "delegate": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", + "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==" + }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true + }, + "des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true + }, + "detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true + }, + "dfa": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/dfa/-/dfa-1.2.0.tgz", + "integrity": "sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q==" + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } + } + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "requires": { + "path-type": "^4.0.0" + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", + "dev": true + }, + "dns-packet": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", + "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", + "dev": true, + "requires": { + "@leichtgewicht/ip-codec": "^2.0.1" + } + }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "dependencies": { + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "requires": { + "domelementtype": "^2.2.0" + } + } + } + }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true + }, + "domhandler": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-3.3.0.tgz", + "integrity": "sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "dependencies": { + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "requires": { + "domelementtype": "^2.2.0" + } + } + } + }, + "dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dev": true, + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, + "requires": { + "is-obj": "^2.0.0" + } + }, + "dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "dev": true + }, + "dotenv-expand": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz", + "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", + "dev": true + }, + "dragula": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/dragula/-/dragula-3.7.3.tgz", + "integrity": "sha512-/rRg4zRhcpf81TyDhaHLtXt6sEywdfpv1cRUMeFFy7DuypH2U0WUL0GTdyAQvXegviT4PJK4KuMmOaIDpICseQ==", + "requires": { + "contra": "1.9.4", + "crossvent": "1.5.5" + } + }, + "dropzone": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/dropzone/-/dropzone-5.9.3.tgz", + "integrity": "sha512-Azk8kD/2/nJIuVPK+zQ9sjKMRIpRvNyqn9XwbBHNq+iNuSccbJS6hwm1Woy0pMST0erSo0u4j+KJaodndDk4vA==" + }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", + "requires": { + "readable-stream": "^2.0.2" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.333", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.333.tgz", + "integrity": "sha512-YyE8+GKyGtPEP1/kpvqsdhD6rA/TP1DUFDN4uiU/YI52NzDxmwHkEb3qjId8hLBa5siJvG0sfC3O66501jMruQ==", + "dev": true + }, + "elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dev": true, + "requires": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true + }, + "enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + }, + "envinfo": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz", + "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==", + "dev": true + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.21.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz", + "integrity": "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==", + "dev": true, + "requires": { + "array-buffer-byte-length": "^1.0.0", + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.2.0", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "is-array-buffer": "^3.0.2", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trim": "^1.2.7", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.9" + } + }, + "es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", + "dev": true + }, + "es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "dev": true + }, + "es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "es5-ext": { + "version": "0.10.62", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", + "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", + "requires": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha512-mz3UqCh0uPCIqsw1SSAkB/p0rOzF/M0V++vyN7JqlPtSW/VsYgQBvVvqMLmfBuyMzTpLnNqi6JmcSizs4jy19A==", + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + }, + "es6-promise-polyfill": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es6-promise-polyfill/-/es6-promise-polyfill-1.2.0.tgz", + "integrity": "sha512-HHb0vydCpoclpd0ySPkRXMmBw80MRt1wM4RBJBlXkux97K7gleabZdsR0gvE1nNPM9mgOZIBTzjjXiPxf4lIqQ==" + }, + "es6-set": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.6.tgz", + "integrity": "sha512-TE3LgGLDIBX332jq3ypv6bcOpkLO0AslAQo7p2VqX/1N46YNsvIWgvjojjSEnWEGWMhr1qUbYeTSir5J6mFHOw==", + "requires": { + "d": "^1.0.1", + "es5-ext": "^0.10.62", + "es6-iterator": "~2.0.3", + "es6-symbol": "^3.1.3", + "event-emitter": "^0.3.5", + "type": "^2.7.2" + }, + "dependencies": { + "type": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" + } + } + }, + "es6-shim": { + "version": "0.35.7", + "resolved": "https://registry.npmjs.org/es6-shim/-/es6-shim-0.35.7.tgz", + "integrity": "sha512-baZkUfTDSx7X69+NA8imbvGrsPfqH0MX7ADdIDjqwsI8lkTgLIiD2QWrUCSGsUQ0YMnSCA/4pNgSyXdnLHWf3A==" + }, + "es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "requires": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "escodegen": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.2.0.tgz", + "integrity": "sha512-yLy3Cc+zAC0WSmoT2fig3J87TpQ8UaZGx8ahCAs9FL8qNbyV7CVyPKS74DG4bsHiL5ew9sxdYx131OkBQMFnvA==", + "requires": { + "esprima": "~1.0.4", + "estraverse": "~1.5.0", + "esutils": "~1.0.0", + "source-map": "~0.1.30" + }, + "dependencies": { + "esutils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-1.0.0.tgz", + "integrity": "sha512-x/iYH53X3quDwfHRz4y8rn4XcEwwCJeWsul9pF1zldMbGtgOtMNBEOuYWwB1EQlK2LRa1fev3YAgym/RElp5Cg==" + }, + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha512-VtCvB9SIQhk3aF6h+N85EaqIaBFIAfZ9Cu+NJHHVvc8BbEcnvDcFw6sqQ2dQrT6SlOrZq3tIvyD9+EGq/lJryQ==", + "optional": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "dependencies": { + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + } + } + }, + "esprima": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz", + "integrity": "sha512-rp5dMKN8zEs9dfi9g0X1ClLmV//WRyk/R15mppFNICIFRG5P92VP7Z04p8pk++gABo9W2tY+kHyu6P1mEHgmTA==" + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "esri-leaflet": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/esri-leaflet/-/esri-leaflet-3.0.10.tgz", + "integrity": "sha512-2ma+mMHrJA7oqJFHZDLZrCAMkaXTdFFJRsJqlsh3Z2G+nXKj2SrlzJ2YmN5qgnI9y/X5AkcSfxViBoQTX9rcSw==", + "requires": { + "@terraformer/arcgis": "^2.1.0", + "tiny-binary-search": "^1.0.3" + } + }, + "esri-leaflet-geocoder": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/esri-leaflet-geocoder/-/esri-leaflet-geocoder-3.1.4.tgz", + "integrity": "sha512-VMqWgbB7/3X8GuIaUemn/NGlLr3BB51ZpBWBfj/Q71HDXBKIPnGExUuXU9wqblYlj1j3w8uhwVKSGEHPpX+QiA==", + "requires": { + "esri-leaflet": "^3.0.2", + "leaflet": "^1.0.0" + } + }, + "estraverse": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.5.1.tgz", + "integrity": "sha512-FpCjJDfmo3vsc/1zKSeqR5k42tcIhxFIlvq+h9j0fO2q/h2uLKyweq7rYJ+0CoVvrGQOxIS5wyBrW/+vF58BUQ==" + }, + "estree-is-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/estree-is-function/-/estree-is-function-1.0.0.tgz", + "integrity": "sha512-nSCWn1jkSq2QAtkaVLJZY2ezwcFO161HVc174zL1KPW3RJ+O6C3eJb8Nx7OXzvhoEv+nLgSR1g71oWUHUDTrJA==" + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true + }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "eventemitter3": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-2.0.3.tgz", + "integrity": "sha512-jLN68Dx5kyFHaePoXWPsCGW5qdyZQtLYHkxkg02/Mz6g0kYpDx4FyP6XfArhQdlOC4b8Mv+EMxPo/8La7Tzghg==" + }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + } + }, + "express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dev": true, + "requires": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "dependencies": { + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "ext": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", + "requires": { + "type": "^2.7.2" + }, + "dependencies": { + "type": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-diff": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.1.2.tgz", + "integrity": "sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig==" + }, + "fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" + }, + "fastest-levenshtein": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "dev": true + }, + "fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dev": true, + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "file-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "file-type": { + "version": "12.4.2", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-12.4.2.tgz", + "integrity": "sha512-UssQP5ZgIOKelfsaB5CuGAL+Y+q7EmONuiwF3N5HAH0t27rvrttgi6Ra9k/+DVaY9UF6+ybxu5pOXLUdA8N7Vg==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "findup": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/findup/-/findup-0.1.5.tgz", + "integrity": "sha512-Udxo3C9A6alt2GZ2MNsgnIvX7De0V3VGxeP/x98NSVgSlizcDHdmJza61LI7zJy4OEtSiJyE72s0/+tBl5/ZxA==", + "dev": true, + "requires": { + "colors": "~0.6.0-1", + "commander": "~2.1.0" + }, + "dependencies": { + "commander": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.1.0.tgz", + "integrity": "sha512-J2wnb6TKniXNOtoHS8TSrG9IOQluPrsmyAJ8oCUJOBmv+uLBCyPYAZkD2jFvw2DCzIXNnISIM01NIvr35TkBMQ==", + "dev": true + } + } + }, + "flatpickr": { + "version": "4.6.13", + "resolved": "https://registry.npmjs.org/flatpickr/-/flatpickr-4.6.13.tgz", + "integrity": "sha512-97PMG/aywoYpB4IvbvUJi0RQi8vearvU0oov1WW3k0WZPBMrTQVqekSX5CjSG/M4Q3i6A/0FKXC7RyAoAUUSPw==" + }, + "flot": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/flot/-/flot-4.2.3.tgz", + "integrity": "sha512-r1t2gfhILE6dt7cnYDHX/D2VHERyD0YoV0UdFJg5dWbjkcu05MugfhNY7VspfBFTa+hjVNYVZw6/t9ZyYNen+w==" + }, + "follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" + }, + "for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, + "requires": { + "is-callable": "^1.1.3" + } + }, + "form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true + }, + "fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "dev": true + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true + }, + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "fs-monkey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "optional": true + }, + "fslightbox": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/fslightbox/-/fslightbox-3.4.1.tgz", + "integrity": "sha512-/YkPP9jCnZMIlPuJPUo10JTCOCntU0vHeIKe0cB5ruR0ss2QCLhzxY5h24grZ2gUsF//0NXik7iGMU05RV/jcg==" + }, + "fullcalendar": { + "version": "5.11.4", + "resolved": "https://registry.npmjs.org/fullcalendar/-/fullcalendar-5.11.4.tgz", + "integrity": "sha512-1TH40KkWFVlZBpqJ/eB69E7nPABleA0skoc7pTIXJNNNYyUuKPjiJg+TSMunjJ9faPLzvbvfCdgttGZnynPA3Q==" + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + } + }, + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==" + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true + }, + "get-assigned-identifiers": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz", + "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==" + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "get-intrinsic": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true + }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "requires": { + "is-glob": "^4.0.1" + } + }, + "glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, + "globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "requires": { + "define-properties": "^1.1.3" + } + }, + "globalyzer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz", + "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==" + }, + "globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + } + }, + "globrex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", + "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==" + }, + "good-listener": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", + "integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==", + "requires": { + "delegate": "^3.1.2" + } + }, + "gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.3" + } + }, + "graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw==", + "dev": true + }, + "handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true + }, + "handlebars": { + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", + "requires": { + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + } + } + }, + "has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "requires": { + "get-intrinsic": "^1.1.1" + } + }, + "has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "hash-sum": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz", + "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", + "dev": true + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "hex-color-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz", + "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==", + "dev": true + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "hsl-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz", + "integrity": "sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==", + "dev": true + }, + "hsla-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz", + "integrity": "sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA==", + "dev": true + }, + "html-entities": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", + "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", + "dev": true + }, + "html-loader": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/html-loader/-/html-loader-1.3.2.tgz", + "integrity": "sha512-DEkUwSd0sijK5PF3kRWspYi56XP7bTNkyg5YWSzBdjaSDmvCufep5c4Vpb3PBf6lUL0YPtLwBfy9fL0t5hBAGA==", + "dev": true, + "requires": { + "html-minifier-terser": "^5.1.1", + "htmlparser2": "^4.1.0", + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "html-minifier-terser": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", + "dev": true, + "requires": { + "camel-case": "^4.1.1", + "clean-css": "^4.2.3", + "commander": "^4.1.1", + "he": "^1.2.0", + "param-case": "^3.0.3", + "relateurl": "^0.2.7", + "terser": "^4.6.3" + }, + "dependencies": { + "clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dev": true, + "requires": { + "source-map": "~0.6.0" + } + }, + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true + }, + "terser": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", + "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", + "dev": true, + "requires": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + } + } + } + } + }, + "htmlparser2": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-4.1.0.tgz", + "integrity": "sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^3.0.0", + "domutils": "^2.0.0", + "entities": "^2.0.0" + } + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", + "dev": true + }, + "http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "requires": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + } + }, + "http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", + "dev": true + }, + "http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "requires": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "dependencies": { + "eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true + } + } + }, + "http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "dev": true, + "requires": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + } + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==", + "dev": true + }, + "human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true + }, + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + }, + "icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "requires": {} + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true + }, + "ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true + }, + "ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==" + }, + "imagemin": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/imagemin/-/imagemin-7.0.1.tgz", + "integrity": "sha512-33AmZ+xjZhg2JMCe+vDf6a9mzWukE7l+wAtesjE7KyteqqKjzxv7aVQeWnul1Ve26mWvEQqyPwl0OctNBfSR9w==", + "dev": true, + "requires": { + "file-type": "^12.0.0", + "globby": "^10.0.0", + "graceful-fs": "^4.2.2", + "junk": "^3.1.0", + "make-dir": "^3.0.0", + "p-pipe": "^3.0.0", + "replace-ext": "^1.0.0" + }, + "dependencies": { + "globby": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", + "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" + } + } + } + }, + "img-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/img-loader/-/img-loader-4.0.0.tgz", + "integrity": "sha512-UwRcPQdwdOyEHyCxe1V9s9YFwInwEWCpoO+kJGfIqDrBDqA8jZUsEZTxQ0JteNPGw/Gupmwesk2OhLTcnw6tnQ==", + "dev": true, + "requires": { + "loader-utils": "^1.1.0" + }, + "dependencies": { + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } + } + }, + "immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==" + }, + "immutable": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz", + "integrity": "sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "requires": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + } + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true + }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha512-bup+4tap3Hympa+JBJUG7XuOsdNQ6fxt0MHyXMKuLBKn0OqsTfvUxkUrroEX1+B2VsSHvCjiIcZVxRtYa4nllA==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "inputmask": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/inputmask/-/inputmask-5.0.8.tgz", + "integrity": "sha512-1WcbyudPTXP1B28ozWWyFa6QRIUG4KiLoyR6LFHlpT4OfTzRqFfWgHFadNvRuMN1S9XNVz9CdNvCGjJi+uAMqQ==" + }, + "internal-slot": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", + "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "dev": true, + "requires": { + "get-intrinsic": "^1.2.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "interpret": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", + "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "dev": true + }, + "ipaddr.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", + "dev": true + }, + "is-absolute-url": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", + "integrity": "sha512-vOx7VprsKyllwjSkLV79NIhpyLfr3jAp7VaTCMXOJHu4m0Ew1CZ2fcjASwmV1jI3BWuWHB013M48eyeldk9gYg==", + "dev": true + }, + "is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "requires": { + "has-bigints": "^1.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true + }, + "is-color-stop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", + "integrity": "sha512-H1U8Vz0cfXNujrJzEcvvwMDW9Ra+biSYA3ThdQvAnMLJkEHQXn6bWzLkxHtVYJ+Sdbx0b6finn3jZiaVe7MAHA==", + "dev": true, + "requires": { + "css-color-names": "^0.0.4", + "hex-color-regex": "^1.1.0", + "hsl-regex": "^1.0.0", + "hsla-regex": "^1.0.0", + "rgb-regex": "^1.0.1", + "rgba-regex": "^1.0.0" + } + }, + "is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==", + "dev": true + }, + "is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, + "is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true + }, + "is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "dev": true + }, + "is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true + }, + "is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-resolvable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", + "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", + "dev": true + }, + "is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "is-typed-array": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "dev": true, + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + } + }, + "is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "requires": { + "is-docker": "^2.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "dependencies": { + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jkanban": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jkanban/-/jkanban-1.3.1.tgz", + "integrity": "sha512-5M2nQuLnYTW8ZWAj0Gzes0BVYKE2BmpvJ+wc4Kv5/WZ4A+NYH/Njw3UJbW8hnClgrRVyHbeVNe3Q4gvZzoNjaw==", + "requires": { + "dragula": "^3.7.3", + "npm-watch": "^0.7.0" + } + }, + "jquery": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.0.tgz", + "integrity": "sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw==" + }, + "jquery-chained": { + "version": "2.0.0-beta.2", + "resolved": "https://registry.npmjs.org/jquery-chained/-/jquery-chained-2.0.0-beta.2.tgz", + "integrity": "sha512-3/M0J5RCz1b6nqt8+JumCA/x5LgcBrKka3Zv+rimjkbhFzzWD6prCKQrGQXHSXqJdW2yfQv+MxVAQFUfyu3Q5w==" + }, + "jquery.repeater": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/jquery.repeater/-/jquery.repeater-1.2.1.tgz", + "integrity": "sha512-OltR1Z1AwaOsCQFBbfe1h+RnxjAwLrBa9uYkOjuj6DvyEJx0alr0ToCvfbCX1CJqq4vOMfoZUSjjKXBVog0srw==" + }, + "js-base64": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", + "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==", + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "dependencies": { + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + } + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "jstree": { + "version": "3.3.15", + "resolved": "https://registry.npmjs.org/jstree/-/jstree-3.3.15.tgz", + "integrity": "sha512-fNK2EBgGjaJQ3cJuINX/80vDeAufYWtM0csudgYl3eJG+eRAH/1r1IJVUOvAlJIa+uSgg+Fi8uGrt+Xbs92eKg==", + "requires": { + "jquery": "^3.5.0" + } + }, + "jszip": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", + "requires": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" + } + }, + "junk": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/junk/-/junk-3.1.0.tgz", + "integrity": "sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==", + "dev": true + }, + "keycharm": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/keycharm/-/keycharm-0.4.0.tgz", + "integrity": "sha512-TyQTtsabOVv3MeOpR92sIKk/br9wxS+zGj4BG7CR8YbK4jM3tyIBaF0zhzeBUMx36/Q/iQLOKKOT+3jOQtemRQ==", + "peer": true + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + }, + "klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true + }, + "laravel-datatables-vite": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/laravel-datatables-vite/-/laravel-datatables-vite-0.5.2.tgz", + "integrity": "sha512-jWclnbbx21L9ccrMxP5G/1cvF1h/ouDXBhaHoidDpcSuHv2Oy1A7td/coIZHJHxevLjZH8vBHA6CP1F6q4dPiQ==", + "dev": true, + "requires": { + "bootstrap": "^5.2.2", + "bootstrap-icons": "^1.9.1", + "datatables.net": "^1.12.1", + "datatables.net-bs5": "^1.12.1", + "datatables.net-buttons-bs5": "^2.2.3", + "datatables.net-select-bs5": "^1.4.0", + "jquery": "^3.6.1" + }, + "dependencies": { + "jquery": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==", + "dev": true + } + } + }, + "laravel-mix": { + "version": "6.0.49", + "resolved": "https://registry.npmjs.org/laravel-mix/-/laravel-mix-6.0.49.tgz", + "integrity": "sha512-bBMFpFjp26XfijPvY5y9zGKud7VqlyOE0OWUcPo3vTBY5asw8LTjafAbee1dhfLz6PWNqDziz69CP78ELSpfKw==", + "dev": true, + "requires": { + "@babel/core": "^7.15.8", + "@babel/plugin-proposal-object-rest-spread": "^7.15.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.15.8", + "@babel/preset-env": "^7.15.8", + "@babel/runtime": "^7.15.4", + "@types/babel__core": "^7.1.16", + "@types/clean-css": "^4.2.5", + "@types/imagemin-gifsicle": "^7.0.1", + "@types/imagemin-mozjpeg": "^8.0.1", + "@types/imagemin-optipng": "^5.2.1", + "@types/imagemin-svgo": "^8.0.0", + "autoprefixer": "^10.4.0", + "babel-loader": "^8.2.3", + "chalk": "^4.1.2", + "chokidar": "^3.5.2", + "clean-css": "^5.2.4", + "cli-table3": "^0.6.0", + "collect.js": "^4.28.5", + "commander": "^7.2.0", + "concat": "^1.0.3", + "css-loader": "^5.2.6", + "cssnano": "^5.0.8", + "dotenv": "^10.0.0", + "dotenv-expand": "^5.1.0", + "file-loader": "^6.2.0", + "fs-extra": "^10.0.0", + "glob": "^7.2.0", + "html-loader": "^1.3.2", + "imagemin": "^7.0.1", + "img-loader": "^4.0.0", + "lodash": "^4.17.21", + "md5": "^2.3.0", + "mini-css-extract-plugin": "^1.6.2", + "node-libs-browser": "^2.2.1", + "postcss-load-config": "^3.1.0", + "postcss-loader": "^6.2.0", + "semver": "^7.3.5", + "strip-ansi": "^6.0.0", + "style-loader": "^2.0.0", + "terser": "^5.9.0", + "terser-webpack-plugin": "^5.2.4", + "vue-style-loader": "^4.1.3", + "webpack": "^5.60.0", + "webpack-cli": "^4.9.1", + "webpack-dev-server": "^4.7.3", + "webpack-merge": "^5.8.0", + "webpack-notifier": "^1.14.1", + "webpackbar": "^5.0.0-3", + "yargs": "^17.2.1" + } + }, + "laravel-mix-purgecss": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/laravel-mix-purgecss/-/laravel-mix-purgecss-6.0.0.tgz", + "integrity": "sha512-1OVy3xVVqvWrBTI+vQrr9qlrNKKqq3lFlWQpdJxKO2IeK8bMERkNab3fLtldyyOd5ApBuoMd81EqF4ew2N/NdA==", + "dev": true, + "requires": { + "postcss-purgecss-laravel": "^2.0.0" + } + }, + "launch-editor": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.0.tgz", + "integrity": "sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==", + "dev": true, + "requires": { + "picocolors": "^1.0.0", + "shell-quote": "^1.7.3" + } + }, + "leaflet": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.9.3.tgz", + "integrity": "sha512-iB2cR9vAkDOu5l3HAay2obcUHZ7xwUBBjph8+PGtmW/2lYhbLizWtG7nTeYht36WfOslixQF9D/uSIzhZgGMfQ==" + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "requires": { + "immediate": "~3.0.5" + } + }, + "lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "dev": true + }, + "line-awesome": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/line-awesome/-/line-awesome-1.3.0.tgz", + "integrity": "sha512-Y0YHksL37ixDsHz+ihCwOtF5jwJgCDxQ3q+zOVgaSW8VugHGTsZZXMacPYZB1/JULBi6BAuTCTek+4ZY/UIwcw==" + }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true + }, + "loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "peer": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dev": true, + "requires": { + "tslib": "^2.0.3" + } + }, + "lozad": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/lozad/-/lozad-1.16.0.tgz", + "integrity": "sha512-JBr9WjvEFeKoyim3svo/gsQPTkgG/mOHJmDctZ/+U9H3ymUuvEkqpn8bdQMFsvTMcyRJrdJkLv0bXqGm0sP72w==" + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "magic-string": { + "version": "0.25.1", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.1.tgz", + "integrity": "sha512-sCuTz6pYom8Rlt4ISPFn6wuFodbKMIHUMv4Qko9P17dpxb7s52KJTmRuZZqHdGmLCK9AOcDare039nRIcfdkEg==", + "requires": { + "sourcemap-codec": "^1.4.1" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "md5": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", + "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", + "dev": true, + "requires": { + "charenc": "0.0.2", + "crypt": "0.0.2", + "is-buffer": "~1.1.6" + } + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "dev": true + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true + }, + "memfs": { + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz", + "integrity": "sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==", + "dev": true, + "requires": { + "fs-monkey": "^1.0.3" + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "dev": true + }, + "merge-source-map": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.0.4.tgz", + "integrity": "sha512-PGSmS0kfnTnMJCzJ16BLLCEe6oeYCamKFFdQKshi4BmM6FUwipjVOcBFGxqtQtirtAG4iZvHlqST9CpZKqlRjA==", + "requires": { + "source-map": "^0.5.6" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" + } + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true + }, + "micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "mini-css-extract-plugin": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.6.2.tgz", + "integrity": "sha512-WhDvO3SjGm40oV5y26GjMJYjd2UMqrLAGKy5YS2/3QKJy2F7jgynuHTir/tgUUOiNQu5saXHdc8reo7YuhhT4Q==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0", + "webpack-sources": "^1.1.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", + "dev": true + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, + "moment": { + "version": "2.29.4", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", + "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "dev": true, + "requires": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + } + }, + "nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "dev": true + }, + "negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true + }, + "neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + }, + "next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + }, + "no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dev": true, + "requires": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "dev": true + }, + "node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "dev": true, + "requires": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + } + }, + "node-notifier": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-9.0.1.tgz", + "integrity": "sha512-fPNFIp2hF/Dq7qLDzSg4vZ0J4e9v60gJR+Qx7RbjbWqzPDdEqeVpEx5CFeDAELIl+A/woaaNn1fQ5nEVerMxJg==", + "dev": true, + "requires": { + "growly": "^1.3.0", + "is-wsl": "^2.2.0", + "semver": "^7.3.2", + "shellwords": "^0.1.1", + "uuid": "^8.3.0", + "which": "^2.0.2" + } + }, + "node-releases": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", + "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", + "dev": true + }, + "node-watch": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/node-watch/-/node-watch-0.7.3.tgz", + "integrity": "sha512-3l4E8uMPY1HdMMryPRUAl+oIHtXtyiTlIiESNSVSNxcPfzAFzeTbXFQkZfAwBbo0B1qMSG8nUABx+Gd+YrbKrQ==" + }, + "nodemon": { + "version": "2.0.21", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.21.tgz", + "integrity": "sha512-djN/n2549DUtY33S7o1djRCd7dEm0kBnj9c7S9XVXqRUbuggN1MZH/Nqa+5RFQr63Fbefq37nFXAE9VU86yL1A==", + "requires": { + "chokidar": "^3.5.2", + "debug": "^3.2.7", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.1.2", + "pstree.remy": "^1.1.8", + "semver": "^5.7.1", + "simple-update-notifier": "^1.0.7", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.5" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "requires": { + "ms": "^2.1.1" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==", + "requires": { + "abbrev": "1" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true + }, + "normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "dev": true + }, + "nouislider": { + "version": "15.7.0", + "resolved": "https://registry.npmjs.org/nouislider/-/nouislider-15.7.0.tgz", + "integrity": "sha512-aJVEULBPOUwq32/s7xnLNyLvo4kuzYJJsNp2PNGW932AQ0uuDAbLShAqswtxRzJc5n/dLJXNlYSLOZ57bcUg1w==" + }, + "npm": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/npm/-/npm-7.24.2.tgz", + "integrity": "sha512-120p116CE8VMMZ+hk8IAb1inCPk4Dj3VZw29/n2g6UI77urJKVYb7FZUDW8hY+EBnfsjI/2yrobBgFyzo7YpVQ==", + "requires": { + "@isaacs/string-locale-compare": "*", + "@npmcli/arborist": "*", + "@npmcli/ci-detect": "*", + "@npmcli/config": "*", + "@npmcli/map-workspaces": "*", + "@npmcli/package-json": "*", + "@npmcli/run-script": "*", + "abbrev": "*", + "ansicolors": "*", + "ansistyles": "*", + "archy": "*", + "cacache": "*", + "chalk": "*", + "chownr": "*", + "cli-columns": "*", + "cli-table3": "*", + "columnify": "*", + "fastest-levenshtein": "*", + "glob": "*", + "graceful-fs": "*", + "hosted-git-info": "*", + "ini": "*", + "init-package-json": "*", + "is-cidr": "*", + "json-parse-even-better-errors": "*", + "libnpmaccess": "*", + "libnpmdiff": "*", + "libnpmexec": "*", + "libnpmfund": "*", + "libnpmhook": "*", + "libnpmorg": "*", + "libnpmpack": "*", + "libnpmpublish": "*", + "libnpmsearch": "*", + "libnpmteam": "*", + "libnpmversion": "*", + "make-fetch-happen": "*", + "minipass": "*", + "minipass-pipeline": "*", + "mkdirp": "*", + "mkdirp-infer-owner": "*", + "ms": "*", + "node-gyp": "*", + "nopt": "*", + "npm-audit-report": "*", + "npm-install-checks": "*", + "npm-package-arg": "*", + "npm-pick-manifest": "*", + "npm-profile": "*", + "npm-registry-fetch": "*", + "npm-user-validate": "*", + "npmlog": "*", + "opener": "*", + "pacote": "*", + "parse-conflict-json": "*", + "qrcode-terminal": "*", + "read": "*", + "read-package-json": "*", + "read-package-json-fast": "*", + "readdir-scoped-modules": "*", + "rimraf": "*", + "semver": "*", + "ssri": "*", + "tar": "*", + "text-table": "*", + "tiny-relative-date": "*", + "treeverse": "*", + "validate-npm-package-name": "*", + "which": "*", + "write-file-atomic": "*" + }, + "dependencies": { + "@gar/promisify": { + "version": "1.1.2", + "bundled": true + }, + "@isaacs/string-locale-compare": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz", + "integrity": "sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ==", + "bundled": true + }, + "@npmcli/arborist": { + "version": "2.9.0", + "bundled": true, + "requires": { + "@isaacs/string-locale-compare": "^1.0.1", + "@npmcli/installed-package-contents": "^1.0.7", + "@npmcli/map-workspaces": "^1.0.2", + "@npmcli/metavuln-calculator": "^1.1.0", + "@npmcli/move-file": "^1.1.0", + "@npmcli/name-from-folder": "^1.0.1", + "@npmcli/node-gyp": "^1.0.1", + "@npmcli/package-json": "^1.0.1", + "@npmcli/run-script": "^1.8.2", + "bin-links": "^2.2.1", + "cacache": "^15.0.3", + "common-ancestor-path": "^1.0.1", + "json-parse-even-better-errors": "^2.3.1", + "json-stringify-nice": "^1.1.4", + "mkdirp": "^1.0.4", + "mkdirp-infer-owner": "^2.0.0", + "npm-install-checks": "^4.0.0", + "npm-package-arg": "^8.1.5", + "npm-pick-manifest": "^6.1.0", + "npm-registry-fetch": "^11.0.0", + "pacote": "^11.3.5", + "parse-conflict-json": "^1.1.1", + "proc-log": "^1.0.0", + "promise-all-reject-late": "^1.0.0", + "promise-call-limit": "^1.0.1", + "read-package-json-fast": "^2.0.2", + "readdir-scoped-modules": "^1.1.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "ssri": "^8.0.1", + "treeverse": "^1.0.4", + "walk-up-path": "^1.0.0" + } + }, + "@npmcli/ci-detect": { + "version": "1.3.0", + "bundled": true + }, + "@npmcli/config": { + "version": "2.3.0", + "bundled": true, + "requires": { + "ini": "^2.0.0", + "mkdirp-infer-owner": "^2.0.0", + "nopt": "^5.0.0", + "semver": "^7.3.4", + "walk-up-path": "^1.0.0" + } + }, + "@npmcli/disparity-colors": { + "version": "1.0.1", + "bundled": true, + "requires": { + "ansi-styles": "^4.3.0" + } + }, + "@npmcli/fs": { + "version": "1.0.0", + "bundled": true, + "requires": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + } + }, + "@npmcli/git": { + "version": "2.1.0", + "bundled": true, + "requires": { + "@npmcli/promise-spawn": "^1.3.2", + "lru-cache": "^6.0.0", + "mkdirp": "^1.0.4", + "npm-pick-manifest": "^6.1.1", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^2.0.2" + } + }, + "@npmcli/installed-package-contents": { + "version": "1.0.7", + "bundled": true, + "requires": { + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + } + }, + "@npmcli/map-workspaces": { + "version": "1.0.4", + "bundled": true, + "requires": { + "@npmcli/name-from-folder": "^1.0.1", + "glob": "^7.1.6", + "minimatch": "^3.0.4", + "read-package-json-fast": "^2.0.1" + } + }, + "@npmcli/metavuln-calculator": { + "version": "1.1.1", + "bundled": true, + "requires": { + "cacache": "^15.0.5", + "pacote": "^11.1.11", + "semver": "^7.3.2" + } + }, + "@npmcli/move-file": { + "version": "1.1.2", + "bundled": true, + "requires": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + } + }, + "@npmcli/name-from-folder": { + "version": "1.0.1", + "bundled": true + }, + "@npmcli/node-gyp": { + "version": "1.0.2", + "bundled": true + }, + "@npmcli/package-json": { + "version": "1.0.1", + "bundled": true, + "requires": { + "json-parse-even-better-errors": "^2.3.1" + } + }, + "@npmcli/promise-spawn": { + "version": "1.3.2", + "bundled": true, + "requires": { + "infer-owner": "^1.0.4" + } + }, + "@npmcli/run-script": { + "version": "1.8.6", + "bundled": true, + "requires": { + "@npmcli/node-gyp": "^1.0.2", + "@npmcli/promise-spawn": "^1.3.2", + "node-gyp": "^7.1.0", + "read-package-json-fast": "^2.0.1" + } + }, + "@tootallnate/once": { + "version": "1.1.2", + "bundled": true + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "bundled": true + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "bundled": true, + "requires": { + "debug": "4" + } + }, + "agentkeepalive": { + "version": "4.1.4", + "bundled": true, + "requires": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + } + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "bundled": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.12.6", + "bundled": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "bundled": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "bundled": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "ansicolors": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==", + "bundled": true + }, + "ansistyles": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/ansistyles/-/ansistyles-0.1.3.tgz", + "integrity": "sha512-6QWEyvMgIXX0eO972y7YPBLSBsq7UWKFAoNNTLGaOJ9bstcEL9sCbcjf96dVfNDdUsRoGOK82vWFJlKApXds7g==", + "bundled": true + }, + "aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "bundled": true + }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", + "bundled": true + }, + "are-we-there-yet": { + "version": "1.1.6", + "bundled": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + } + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", + "bundled": true + }, + "asn1": { + "version": "0.2.4", + "bundled": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "bundled": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "bundled": true + }, + "aws-sign2": { + "version": "0.7.0", + "bundled": true + }, + "aws4": { + "version": "1.11.0", + "bundled": true + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "bundled": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "bundled": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "bin-links": { + "version": "2.2.1", + "bundled": true, + "requires": { + "cmd-shim": "^4.0.1", + "mkdirp": "^1.0.3", + "npm-normalize-package-bin": "^1.0.0", + "read-cmd-shim": "^2.0.0", + "rimraf": "^3.0.0", + "write-file-atomic": "^3.0.3" + } + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "bundled": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "bundled": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "builtins": { + "version": "1.0.3", + "bundled": true + }, + "cacache": { + "version": "15.3.0", + "bundled": true, + "requires": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" + } + }, + "caseless": { + "version": "0.12.0", + "bundled": true + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "bundled": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "bundled": true + }, + "cidr-regex": { + "version": "3.1.1", + "bundled": true, + "requires": { + "ip-regex": "^4.1.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "bundled": true + }, + "cli-columns": { + "version": "3.1.2", + "bundled": true, + "requires": { + "string-width": "^2.0.0", + "strip-ansi": "^3.0.1" + } + }, + "cli-table3": { + "version": "0.6.0", + "bundled": true, + "requires": { + "colors": "^1.1.2", + "object-assign": "^4.1.0", + "string-width": "^4.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "bundled": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "bundled": true + }, + "string-width": { + "version": "4.2.2", + "bundled": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "bundled": true, + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "bundled": true + }, + "cmd-shim": { + "version": "4.1.0", + "bundled": true, + "requires": { + "mkdirp-infer-owner": "^2.0.0" + } + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "bundled": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "bundled": true + }, + "color-support": { + "version": "1.1.3", + "bundled": true + }, + "colors": { + "version": "1.4.0", + "bundled": true, + "optional": true + }, + "columnify": { + "version": "1.5.4", + "bundled": true, + "requires": { + "strip-ansi": "^3.0.0", + "wcwidth": "^1.0.0" + } + }, + "combined-stream": { + "version": "1.0.8", + "bundled": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "common-ancestor-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz", + "integrity": "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==", + "bundled": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "bundled": true + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "bundled": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true + }, + "dashdash": { + "version": "1.14.1", + "bundled": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "debug": { + "version": "4.3.2", + "bundled": true, + "requires": { + "ms": "2.1.2" + }, + "dependencies": { + "ms": { + "version": "2.1.2", + "bundled": true + } + } + }, + "debuglog": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz", + "integrity": "sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw==", + "bundled": true + }, + "defaults": { + "version": "1.0.3", + "bundled": true, + "requires": { + "clone": "^1.0.2" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "bundled": true + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "bundled": true + }, + "depd": { + "version": "1.1.2", + "bundled": true + }, + "dezalgo": { + "version": "1.0.3", + "bundled": true, + "requires": { + "asap": "^2.0.0", + "wrappy": "1" + } + }, + "diff": { + "version": "5.0.0", + "bundled": true + }, + "ecc-jsbn": { + "version": "0.1.2", + "bundled": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "bundled": true + }, + "encoding": { + "version": "0.1.13", + "bundled": true, + "optional": true, + "requires": { + "iconv-lite": "^0.6.2" + } + }, + "env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "bundled": true + }, + "err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "bundled": true + }, + "extend": { + "version": "3.0.2", + "bundled": true + }, + "extsprintf": { + "version": "1.3.0", + "bundled": true + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "bundled": true + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "bundled": true + }, + "fastest-levenshtein": { + "version": "1.0.12", + "bundled": true + }, + "forever-agent": { + "version": "0.6.1", + "bundled": true + }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "bundled": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "bundled": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "bundled": true + }, + "gauge": { + "version": "3.0.1", + "bundled": true, + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1 || ^2.0.0", + "strip-ansi": "^3.0.1 || ^4.0.0", + "wide-align": "^1.1.2" + } + }, + "getpass": { + "version": "0.1.7", + "bundled": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.2.0", + "bundled": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.2.8", + "bundled": true + }, + "har-schema": { + "version": "2.0.0", + "bundled": true + }, + "har-validator": { + "version": "5.1.5", + "bundled": true, + "requires": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "bundled": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "bundled": true + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "bundled": true + }, + "hosted-git-info": { + "version": "4.0.2", + "bundled": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "http-cache-semantics": { + "version": "4.1.0", + "bundled": true + }, + "http-proxy-agent": { + "version": "4.0.1", + "bundled": true, + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + } + }, + "http-signature": { + "version": "1.2.0", + "bundled": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "https-proxy-agent": { + "version": "5.0.0", + "bundled": true, + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "bundled": true, + "requires": { + "ms": "^2.0.0" + } + }, + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "bundled": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + }, + "ignore-walk": { + "version": "3.0.4", + "bundled": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "bundled": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "bundled": true + }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "bundled": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "bundled": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "bundled": true + }, + "ini": { + "version": "2.0.0", + "bundled": true + }, + "init-package-json": { + "version": "2.0.5", + "bundled": true, + "requires": { + "npm-package-arg": "^8.1.5", + "promzard": "^0.3.0", + "read": "~1.0.1", + "read-package-json": "^4.1.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4", + "validate-npm-package-name": "^3.0.0" + } + }, + "ip": { + "version": "1.1.5", + "bundled": true + }, + "ip-regex": { + "version": "4.3.0", + "bundled": true + }, + "is-cidr": { + "version": "4.0.2", + "bundled": true, + "requires": { + "cidr-regex": "^3.1.1" + } + }, + "is-core-module": { + "version": "2.7.0", + "bundled": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "bundled": true + }, + "is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "bundled": true + }, + "is-typedarray": { + "version": "1.0.0", + "bundled": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "bundled": true + }, + "isstream": { + "version": "0.1.2", + "bundled": true + }, + "jsbn": { + "version": "0.1.1", + "bundled": true + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "bundled": true + }, + "json-schema": { + "version": "0.2.3", + "bundled": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "bundled": true + }, + "json-stringify-nice": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz", + "integrity": "sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==", + "bundled": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "bundled": true + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "bundled": true + }, + "jsprim": { + "version": "1.4.1", + "bundled": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "just-diff": { + "version": "3.1.1", + "bundled": true + }, + "just-diff-apply": { + "version": "3.0.0", + "bundled": true + }, + "libnpmaccess": { + "version": "4.0.3", + "bundled": true, + "requires": { + "aproba": "^2.0.0", + "minipass": "^3.1.1", + "npm-package-arg": "^8.1.2", + "npm-registry-fetch": "^11.0.0" + } + }, + "libnpmdiff": { + "version": "2.0.4", + "bundled": true, + "requires": { + "@npmcli/disparity-colors": "^1.0.1", + "@npmcli/installed-package-contents": "^1.0.7", + "binary-extensions": "^2.2.0", + "diff": "^5.0.0", + "minimatch": "^3.0.4", + "npm-package-arg": "^8.1.4", + "pacote": "^11.3.4", + "tar": "^6.1.0" + } + }, + "libnpmexec": { + "version": "2.0.1", + "bundled": true, + "requires": { + "@npmcli/arborist": "^2.3.0", + "@npmcli/ci-detect": "^1.3.0", + "@npmcli/run-script": "^1.8.4", + "chalk": "^4.1.0", + "mkdirp-infer-owner": "^2.0.0", + "npm-package-arg": "^8.1.2", + "pacote": "^11.3.1", + "proc-log": "^1.0.0", + "read": "^1.0.7", + "read-package-json-fast": "^2.0.2", + "walk-up-path": "^1.0.0" + } + }, + "libnpmfund": { + "version": "1.1.0", + "bundled": true, + "requires": { + "@npmcli/arborist": "^2.5.0" + } + }, + "libnpmhook": { + "version": "6.0.3", + "bundled": true, + "requires": { + "aproba": "^2.0.0", + "npm-registry-fetch": "^11.0.0" + } + }, + "libnpmorg": { + "version": "2.0.3", + "bundled": true, + "requires": { + "aproba": "^2.0.0", + "npm-registry-fetch": "^11.0.0" + } + }, + "libnpmpack": { + "version": "2.0.1", + "bundled": true, + "requires": { + "@npmcli/run-script": "^1.8.3", + "npm-package-arg": "^8.1.0", + "pacote": "^11.2.6" + } + }, + "libnpmpublish": { + "version": "4.0.2", + "bundled": true, + "requires": { + "normalize-package-data": "^3.0.2", + "npm-package-arg": "^8.1.2", + "npm-registry-fetch": "^11.0.0", + "semver": "^7.1.3", + "ssri": "^8.0.1" + } + }, + "libnpmsearch": { + "version": "3.1.2", + "bundled": true, + "requires": { + "npm-registry-fetch": "^11.0.0" + } + }, + "libnpmteam": { + "version": "2.0.4", + "bundled": true, + "requires": { + "aproba": "^2.0.0", + "npm-registry-fetch": "^11.0.0" + } + }, + "libnpmversion": { + "version": "1.2.1", + "bundled": true, + "requires": { + "@npmcli/git": "^2.0.7", + "@npmcli/run-script": "^1.8.4", + "json-parse-even-better-errors": "^2.3.1", + "semver": "^7.3.5", + "stringify-package": "^1.0.1" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "bundled": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "make-fetch-happen": { + "version": "9.1.0", + "bundled": true, + "requires": { + "agentkeepalive": "^4.1.3", + "cacache": "^15.2.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^6.0.0", + "minipass": "^3.1.3", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.3.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.2", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.0.0", + "ssri": "^8.0.0" + } + }, + "mime-db": { + "version": "1.49.0", + "bundled": true + }, + "mime-types": { + "version": "2.1.32", + "bundled": true, + "requires": { + "mime-db": "1.49.0" + } + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minipass": { + "version": "3.1.5", + "bundled": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "bundled": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-fetch": { + "version": "1.4.1", + "bundled": true, + "requires": { + "encoding": "^0.1.12", + "minipass": "^3.1.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + } + }, + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "bundled": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "bundled": true, + "requires": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "bundled": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "bundled": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "bundled": true, + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bundled": true + }, + "mkdirp-infer-owner": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz", + "integrity": "sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw==", + "bundled": true, + "requires": { + "chownr": "^2.0.0", + "infer-owner": "^1.0.4", + "mkdirp": "^1.0.3" + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "bundled": true + }, + "mute-stream": { + "version": "0.0.8", + "bundled": true + }, + "negotiator": { + "version": "0.6.2", + "bundled": true + }, + "node-gyp": { + "version": "7.1.2", + "bundled": true, + "requires": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.3", + "nopt": "^5.0.0", + "npmlog": "^4.1.2", + "request": "^2.88.2", + "rimraf": "^3.0.2", + "semver": "^7.3.2", + "tar": "^6.0.2", + "which": "^2.0.2" + }, + "dependencies": { + "aproba": { + "version": "1.2.0", + "bundled": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + } + } + }, + "nopt": { + "version": "5.0.0", + "bundled": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-package-data": { + "version": "3.0.3", + "bundled": true, + "requires": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + } + }, + "npm-audit-report": { + "version": "2.1.5", + "bundled": true, + "requires": { + "chalk": "^4.0.0" + } + }, + "npm-bundled": { + "version": "1.1.2", + "bundled": true, + "requires": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npm-install-checks": { + "version": "4.0.0", + "bundled": true, + "requires": { + "semver": "^7.1.1" + } + }, + "npm-normalize-package-bin": { + "version": "1.0.1", + "bundled": true + }, + "npm-package-arg": { + "version": "8.1.5", + "bundled": true, + "requires": { + "hosted-git-info": "^4.0.1", + "semver": "^7.3.4", + "validate-npm-package-name": "^3.0.0" + } + }, + "npm-packlist": { + "version": "2.2.2", + "bundled": true, + "requires": { + "glob": "^7.1.6", + "ignore-walk": "^3.0.3", + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npm-pick-manifest": { + "version": "6.1.1", + "bundled": true, + "requires": { + "npm-install-checks": "^4.0.0", + "npm-normalize-package-bin": "^1.0.1", + "npm-package-arg": "^8.1.2", + "semver": "^7.3.4" + } + }, + "npm-profile": { + "version": "5.0.4", + "bundled": true, + "requires": { + "npm-registry-fetch": "^11.0.0" + } + }, + "npm-registry-fetch": { + "version": "11.0.0", + "bundled": true, + "requires": { + "make-fetch-happen": "^9.0.1", + "minipass": "^3.1.3", + "minipass-fetch": "^1.3.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.0.0", + "npm-package-arg": "^8.0.0" + } + }, + "npm-user-validate": { + "version": "1.0.1", + "bundled": true + }, + "npmlog": { + "version": "5.0.1", + "bundled": true, + "requires": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + }, + "dependencies": { + "are-we-there-yet": { + "version": "2.0.0", + "bundled": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + } + } + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true + }, + "oauth-sign": { + "version": "0.9.0", + "bundled": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "bundled": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "bundled": true, + "requires": { + "wrappy": "1" + } + }, + "opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", + "bundled": true + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "bundled": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "pacote": { + "version": "11.3.5", + "bundled": true, + "requires": { + "@npmcli/git": "^2.1.0", + "@npmcli/installed-package-contents": "^1.0.6", + "@npmcli/promise-spawn": "^1.2.0", + "@npmcli/run-script": "^1.8.2", + "cacache": "^15.0.5", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "infer-owner": "^1.0.4", + "minipass": "^3.1.3", + "mkdirp": "^1.0.3", + "npm-package-arg": "^8.0.1", + "npm-packlist": "^2.1.4", + "npm-pick-manifest": "^6.0.0", + "npm-registry-fetch": "^11.0.0", + "promise-retry": "^2.0.1", + "read-package-json-fast": "^2.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.1.0" + } + }, + "parse-conflict-json": { + "version": "1.1.1", + "bundled": true, + "requires": { + "json-parse-even-better-errors": "^2.3.0", + "just-diff": "^3.0.1", + "just-diff-apply": "^3.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "bundled": true + }, + "performance-now": { + "version": "2.1.0", + "bundled": true + }, + "proc-log": { + "version": "1.0.0", + "bundled": true + }, + "promise-all-reject-late": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz", + "integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==", + "bundled": true + }, + "promise-call-limit": { + "version": "1.0.1", + "bundled": true + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "bundled": true + }, + "promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "bundled": true, + "requires": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + } + }, + "promzard": { + "version": "0.3.0", + "bundled": true, + "requires": { + "read": "1" + } + }, + "psl": { + "version": "1.8.0", + "bundled": true + }, + "punycode": { + "version": "2.1.1", + "bundled": true + }, + "qrcode-terminal": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz", + "integrity": "sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==", + "bundled": true + }, + "qs": { + "version": "6.5.2", + "bundled": true + }, + "read": { + "version": "1.0.7", + "bundled": true, + "requires": { + "mute-stream": "~0.0.4" + } + }, + "read-cmd-shim": { + "version": "2.0.0", + "bundled": true + }, + "read-package-json": { + "version": "4.1.1", + "bundled": true, + "requires": { + "glob": "^7.1.1", + "json-parse-even-better-errors": "^2.3.0", + "normalize-package-data": "^3.0.0", + "npm-normalize-package-bin": "^1.0.0" + } + }, + "read-package-json-fast": { + "version": "2.0.3", + "bundled": true, + "requires": { + "json-parse-even-better-errors": "^2.3.0", + "npm-normalize-package-bin": "^1.0.1" + } + }, + "readable-stream": { + "version": "3.6.0", + "bundled": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "readdir-scoped-modules": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz", + "integrity": "sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==", + "bundled": true, + "requires": { + "debuglog": "^1.0.1", + "dezalgo": "^1.0.0", + "graceful-fs": "^4.1.2", + "once": "^1.3.0" + } + }, + "request": { + "version": "2.88.2", + "bundled": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "form-data": { + "version": "2.3.3", + "bundled": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "tough-cookie": { + "version": "2.5.0", + "bundled": true, + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + } + } + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "bundled": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "bundled": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "bundled": true + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "bundled": true + }, + "semver": { + "version": "7.3.5", + "bundled": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "bundled": true + }, + "signal-exit": { + "version": "3.0.3", + "bundled": true + }, + "smart-buffer": { + "version": "4.2.0", + "bundled": true + }, + "socks": { + "version": "2.6.1", + "bundled": true, + "requires": { + "ip": "^1.1.5", + "smart-buffer": "^4.1.0" + } + }, + "socks-proxy-agent": { + "version": "6.1.0", + "bundled": true, + "requires": { + "agent-base": "^6.0.2", + "debug": "^4.3.1", + "socks": "^2.6.1" + } + }, + "spdx-correct": { + "version": "3.1.1", + "bundled": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "bundled": true + }, + "spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "bundled": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.10", + "bundled": true + }, + "sshpk": { + "version": "1.16.1", + "bundled": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "ssri": { + "version": "8.0.1", + "bundled": true, + "requires": { + "minipass": "^3.1.1" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "bundled": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "string-width": { + "version": "2.1.1", + "bundled": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "bundled": true + }, + "strip-ansi": { + "version": "4.0.0", + "bundled": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "stringify-package": { + "version": "1.0.1", + "bundled": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "bundled": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "bundled": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "tar": { + "version": "6.1.11", + "bundled": true, + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "bundled": true + }, + "tiny-relative-date": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/tiny-relative-date/-/tiny-relative-date-1.3.0.tgz", + "integrity": "sha512-MOQHpzllWxDCHHaDno30hhLfbouoYlOI8YlMNtvKe1zXbjEVhbcEovQxvZrPvtiYW630GQDoMMarCnjfyfHA+A==", + "bundled": true + }, + "treeverse": { + "version": "1.0.4", + "bundled": true + }, + "tunnel-agent": { + "version": "0.6.0", + "bundled": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "bundled": true + }, + "typedarray-to-buffer": { + "version": "3.1.5", + "bundled": true, + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "unique-filename": { + "version": "1.1.1", + "bundled": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "bundled": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "bundled": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "bundled": true + }, + "uuid": { + "version": "3.4.0", + "bundled": true + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "bundled": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "validate-npm-package-name": { + "version": "3.0.0", + "bundled": true, + "requires": { + "builtins": "^1.0.3" + } + }, + "verror": { + "version": "1.10.0", + "bundled": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "walk-up-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-1.0.0.tgz", + "integrity": "sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg==", + "bundled": true + }, + "wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "bundled": true, + "requires": { + "defaults": "^1.0.3" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "bundled": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "wide-align": { + "version": "1.1.3", + "bundled": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "bundled": true + }, + "write-file-atomic": { + "version": "3.0.3", + "bundled": true, + "requires": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "bundled": true + } + } + }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } + }, + "npm-watch": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/npm-watch/-/npm-watch-0.7.0.tgz", + "integrity": "sha512-AN2scNyMljMGkn0mIkaRRk19I7Vx0qTK6GmsIcDblX5YRbSsoJORTAtrceICSx7Om9q48NWcwm/R0t6E7F4Ocg==", + "requires": { + "nodemon": "^2.0.3", + "through2": "^2.0.0" + } + }, + "nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "requires": { + "boolbase": "^1.0.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + }, + "object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==" + }, + "object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + }, + "object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + } + }, + "object.getownpropertydescriptors": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", + "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", + "dev": true, + "requires": { + "array.prototype.reduce": "^1.0.5", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.values": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", + "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dev": true, + "requires": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + } + }, + "optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", + "dev": true + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-pipe": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-pipe/-/p-pipe-3.1.0.tgz", + "integrity": "sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw==", + "dev": true + }, + "p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dev": true, + "requires": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dev": true, + "requires": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "parchment": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/parchment/-/parchment-1.1.4.tgz", + "integrity": "sha512-J5FBQt/pM2inLzg4hEWmzQx/8h8D0CiDxaG3vyp9rKrQRSDgBlhjdP5jQGgosEajXPSQouXGHOmVdgo7QmJuOg==" + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "dev": true, + "requires": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + } + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true + }, + "pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dev": true, + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", + "dev": true + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "dev": true + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dev": true, + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "pdfmake": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/pdfmake/-/pdfmake-0.2.7.tgz", + "integrity": "sha512-ClLpgx30H5G3EDvRW1MrA1Xih6YxEaSgIVFrOyBMgAAt62V+hxsyWAi6JNP7u1Fc5JKYAbpb4RRVw8Rhvmz5cQ==", + "requires": { + "@foliojs-fork/linebreak": "^1.1.1", + "@foliojs-fork/pdfkit": "^0.13.0", + "iconv-lite": "^0.6.3", + "xmldoc": "^1.1.2" + } + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + } + }, + "png-js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/png-js/-/png-js-1.0.0.tgz", + "integrity": "sha512-k+YsbhpA9e+EFfKjTCH3VW6aoKlyNYI6NYdTfDL4CIvFnvsuO84ttonmZE7rc+v23SLTH8XX+5w/Ak9v0xGY4g==" + }, + "popper.js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", + "peer": true + }, + "postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "dev": true, + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "postcss-calc": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", + "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.9", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-colormin": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", + "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", + "dev": true, + "requires": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "colord": "^2.9.1", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-convert-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", + "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", + "dev": true, + "requires": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-discard-comments": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", + "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", + "dev": true, + "requires": {} + }, + "postcss-discard-duplicates": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", + "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", + "dev": true, + "requires": {} + }, + "postcss-discard-empty": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", + "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", + "dev": true, + "requires": {} + }, + "postcss-discard-overridden": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", + "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", + "dev": true, + "requires": {} + }, + "postcss-import": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", + "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + } + }, + "postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "dev": true, + "requires": { + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" + } + }, + "postcss-loader": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.1.tgz", + "integrity": "sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q==", + "dev": true, + "requires": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.5" + } + }, + "postcss-merge-longhand": { + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", + "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0", + "stylehacks": "^5.1.1" + } + }, + "postcss-merge-rules": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", + "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", + "dev": true, + "requires": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "cssnano-utils": "^3.1.0", + "postcss-selector-parser": "^6.0.5" + } + }, + "postcss-minify-font-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", + "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-minify-gradients": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", + "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", + "dev": true, + "requires": { + "colord": "^2.9.1", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-minify-params": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", + "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", + "dev": true, + "requires": { + "browserslist": "^4.21.4", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-minify-selectors": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", + "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.5" + } + }, + "postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "dev": true, + "requires": {} + }, + "postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "dev": true, + "requires": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + } + }, + "postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.4" + } + }, + "postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dev": true, + "requires": { + "icss-utils": "^5.0.0" + } + }, + "postcss-normalize-charset": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", + "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", + "dev": true, + "requires": {} + }, + "postcss-normalize-display-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", + "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-positions": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", + "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-repeat-style": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", + "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-string": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", + "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-timing-functions": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", + "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-unicode": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", + "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", + "dev": true, + "requires": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", + "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", + "dev": true, + "requires": { + "normalize-url": "^6.0.1", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-whitespace": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", + "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-ordered-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", + "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", + "dev": true, + "requires": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-purgecss-laravel": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-purgecss-laravel/-/postcss-purgecss-laravel-2.0.0.tgz", + "integrity": "sha512-vWObgEC5f0isOdumiLwzJPuZFyp7i1Go9i2Obce5qrVJWciBtCG1rrNiPEb7xp5bU3u/uk30M2P891tLL8tcQQ==", + "dev": true, + "requires": { + "@fullhuman/postcss-purgecss": "^3.0.0" + } + }, + "postcss-reduce-initial": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", + "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", + "dev": true, + "requires": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0" + } + }, + "postcss-reduce-transforms": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", + "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-svgo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", + "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0", + "svgo": "^2.7.0" + } + }, + "postcss-unique-selectors": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", + "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.5" + } + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==" + }, + "pretty-time": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", + "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==", + "dev": true + }, + "prism-themes": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/prism-themes/-/prism-themes-1.9.0.tgz", + "integrity": "sha512-tX2AYsehKDw1EORwBps+WhBFKc2kxfoFpQAjxBndbZKr4fRmMkv47XN0BghC/K1qwodB1otbe4oF23vUTFDokw==" + }, + "prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==" + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "peer": true, + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "propagating-hammerjs": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/propagating-hammerjs/-/propagating-hammerjs-2.0.1.tgz", + "integrity": "sha512-PH3zG5whbSxMocphXJzVtvKr+vWAgfkqVvtuwjSJ/apmEACUoiw6auBAT5HYXpZOR0eGcTAfYG5Yl8h91O5Elg==", + "peer": true, + "requires": {} + }, + "proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "requires": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "dependencies": { + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true + } + } + }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==" + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } + } + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", + "dev": true + }, + "purgecss": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/purgecss/-/purgecss-3.1.3.tgz", + "integrity": "sha512-hRSLN9mguJ2lzlIQtW4qmPS2kh6oMnA9RxdIYK8sz18QYqd6ePp4GNDl18oWHA1f2v2NEQIh51CO8s/E3YGckQ==", + "dev": true, + "requires": { + "commander": "^6.0.0", + "glob": "^7.0.0", + "postcss": "^8.2.1", + "postcss-selector-parser": "^6.0.2" + }, + "dependencies": { + "commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true + } + } + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==", + "dev": true + }, + "qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "requires": { + "side-channel": "^1.0.4" + } + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", + "dev": true + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, + "quill": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/quill/-/quill-1.3.7.tgz", + "integrity": "sha512-hG/DVzh/TiknWtE6QmWAF/pxoZKYxfe3J/d/+ShUWkDvvkZQVTPeVmUJVu1uE6DDooC4fWTiCLh84ul89oNz5g==", + "requires": { + "clone": "^2.1.1", + "deep-equal": "^1.0.1", + "eventemitter3": "^2.0.3", + "extend": "^3.0.2", + "parchment": "^1.1.4", + "quill-delta": "^3.6.2" + }, + "dependencies": { + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==" + } + } + }, + "quill-delta": { + "version": "3.6.3", + "resolved": "https://registry.npmjs.org/quill-delta/-/quill-delta-3.6.3.tgz", + "integrity": "sha512-wdIGBlcX13tCHOXGMVnnTVFtGRLoP0imqxM696fIPwIf5ODIYUHIvHbZcyvGlZFiFhK5XzDC2lpjbxRhnM05Tg==", + "requires": { + "deep-equal": "^1.0.1", + "extend": "^3.0.2", + "fast-diff": "1.1.2" + } + }, + "qunit": { + "version": "2.19.4", + "resolved": "https://registry.npmjs.org/qunit/-/qunit-2.19.4.tgz", + "integrity": "sha512-aqUzzUeCqlleWYKlpgfdHHw9C6KxkB9H3wNfiBg5yHqQMzy0xw/pbCRHYFkjl8MsP/t8qkTQE+JTYL71azgiew==", + "requires": { + "commander": "7.2.0", + "node-watch": "0.7.3", + "tiny-glob": "0.2.9" + } + }, + "quote-stream": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/quote-stream/-/quote-stream-1.0.2.tgz", + "integrity": "sha512-kKr2uQ2AokadPjvTyKJQad9xELbZwYzWlNfI3Uz2j/ib5u6H9lDP7fUUR//rMycd0gv4Z5P1qXMfXR8YpIxrjQ==", + "requires": { + "buffer-equal": "0.0.1", + "minimist": "^1.1.3", + "through2": "^2.0.0" + } + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true + }, + "raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dev": true, + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + } + } + }, + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "peer": true + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "requires": { + "pify": "^2.3.0" + } + }, + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "requires": { + "picomatch": "^2.2.1" + } + }, + "rechoir": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", + "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", + "dev": true, + "requires": { + "resolve": "^1.9.0" + } + }, + "regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "dev": true, + "requires": { + "regenerate": "^1.4.2" + } + }, + "regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "dev": true + }, + "regenerator-transform": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.4" + } + }, + "regex-parser": { + "version": "2.2.11", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", + "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", + "dev": true + }, + "regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + } + }, + "regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "requires": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + } + }, + "regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true + } + } + }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "dev": true + }, + "replace-ext": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", + "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==", + "dev": true + }, + "replace-in-file-webpack-plugin": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/replace-in-file-webpack-plugin/-/replace-in-file-webpack-plugin-1.0.6.tgz", + "integrity": "sha512-+KRgNYL2nbc6nza6SeF+wTBNkovuHFTfJF8QIEqZg5MbwkYpU9no0kH2YU354wvY/BK8mAC2UKoJ7q+sJTvciw==", + "dev": true + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true + }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "requires": { + "resolve-from": "^5.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + } + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "resolve-url-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-4.0.0.tgz", + "integrity": "sha512-05VEMczVREcbtT7Bz+C+96eUO5HDNvdthIiMB34t7FcF8ehcu4wC0sSgPUubs3XW2Q3CNLJk/BJrCU9wVRymiA==", + "dev": true, + "requires": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^7.0.35", + "source-map": "0.6.1" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rgb-regex": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", + "integrity": "sha512-gDK5mkALDFER2YLqH6imYvK6g02gpNGM4ILDZ472EwWfXZnC2ZEpoB2ECXTyOVUKuk/bPJZMzwQPBYICzP+D3w==", + "dev": true + }, + "rgba-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", + "integrity": "sha512-zgn5OjNQXLUTdq8m17KdaicF6w89TZs8ZU8y0AYENIU6wG8GG6LLm0yLSiPY8DmaYmHdgRW8rnApjoT0fQRfMg==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rtlcss": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", + "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", + "dev": true, + "requires": { + "find-up": "^5.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.3.11", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + } + } + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sass": { + "version": "1.55.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.55.0.tgz", + "integrity": "sha512-Pk+PMy7OGLs9WaxZGJMn7S96dvlyVBwwtToX895WmCpAOr5YiJYEUJfiJidMuKb613z2xNWcXCHEuOvjZbqC6A==", + "dev": true, + "requires": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + } + }, + "sass-loader": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.2.0.tgz", + "integrity": "sha512-JWEp48djQA4nbZxmgC02/Wh0eroSUutulROUusYJO9P9zltRbNN80JCBHqRGzjd4cmZCa/r88xgfkjGD0TXsHg==", + "dev": true, + "requires": { + "klona": "^2.0.4", + "neo-async": "^2.6.2" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + } + }, + "scope-analyzer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/scope-analyzer/-/scope-analyzer-2.1.2.tgz", + "integrity": "sha512-5cfCmsTYV/wPaRIItNxatw02ua/MThdIUNnUOCYp+3LSEJvnG804ANw2VLaavNILIfWXF1D1G2KNANkBBvInwQ==", + "requires": { + "array-from": "^2.1.1", + "dash-ast": "^2.0.1", + "es6-map": "^0.1.5", + "es6-set": "^0.1.5", + "es6-symbol": "^3.1.1", + "estree-is-function": "^1.0.0", + "get-assigned-identifiers": "^1.1.0" + } + }, + "select": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", + "integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==" + }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", + "dev": true + }, + "select2": { + "version": "4.1.0-rc.0", + "resolved": "https://registry.npmjs.org/select2/-/select2-4.1.0-rc.0.tgz", + "integrity": "sha512-Hr9TdhyHCZUtwznEH2CBf7967mEM0idtJ5nMtjvk3Up5tPukOLXbHUNmh10oRfeNIhj+3GD3niu+g6sVK+gK0A==" + }, + "selfsigned": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", + "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "dev": true, + "requires": { + "node-forge": "^1" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "requires": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + } + } + }, + "serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true + } + } + }, + "serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + }, + "setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, + "shallow-copy": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/shallow-copy/-/shallow-copy-0.0.1.tgz", + "integrity": "sha512-b6i4ZpVuUxB9h5gfCxPiusKYkqTMOjEbBs4wMaFbkfia4yFv92UKZ6Df8WXcKbn08JNL/abvg3FnMAOfakDvUw==" + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "shell-quote": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", + "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==", + "dev": true + }, + "shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "dev": true + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "dev": true, + "requires": { + "is-arrayish": "^0.3.1" + }, + "dependencies": { + "is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "dev": true + } + } + }, + "simple-update-notifier": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz", + "integrity": "sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg==", + "requires": { + "semver": "~7.0.0" + }, + "dependencies": { + "semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==" + } + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "smooth-scroll": { + "version": "16.1.3", + "resolved": "https://registry.npmjs.org/smooth-scroll/-/smooth-scroll-16.1.3.tgz", + "integrity": "sha512-ca9U+neJS/cbdScTBuUTCZvUWNF2EuMCk7oAx3ImdeRK5FPm+xRo9XsVHIkeEVkn7MBRx+ufVEhyveM4ZhaTGA==" + }, + "sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dev": true, + "requires": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" + }, + "spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dev": true, + "requires": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + } + }, + "spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dev": true, + "requires": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "dev": true + }, + "static-eval": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.1.0.tgz", + "integrity": "sha512-agtxZ/kWSsCkI5E4QifRwsaPs0P0JmZV6dkLz6ILYfFYQGn+5plctanRN+IC8dJRiFkyXHrwEE3W9Wmx67uDbw==", + "requires": { + "escodegen": "^1.11.1" + }, + "dependencies": { + "escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "requires": { + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + } + } + }, + "static-module": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/static-module/-/static-module-3.0.4.tgz", + "integrity": "sha512-gb0v0rrgpBkifXCa3yZXxqVmXDVE+ETXj6YlC/jt5VzOnGXR2C15+++eXuMDUYsePnbhf+lwW0pE1UXyOLtGCw==", + "requires": { + "acorn-node": "^1.3.0", + "concat-stream": "~1.6.0", + "convert-source-map": "^1.5.1", + "duplexer2": "~0.1.4", + "escodegen": "^1.11.1", + "has": "^1.0.1", + "magic-string": "0.25.1", + "merge-source-map": "1.0.4", + "object-inspect": "^1.6.0", + "readable-stream": "~2.3.3", + "scope-analyzer": "^2.0.1", + "shallow-copy": "~0.0.1", + "static-eval": "^2.0.5", + "through2": "~2.0.3" + }, + "dependencies": { + "escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "requires": { + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + } + } + }, + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true + }, + "std-env": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.2.tgz", + "integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==", + "dev": true + }, + "stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "string.prototype.trim": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz", + "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, + "style-loader": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-2.0.0.tgz", + "integrity": "sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "stylehacks": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", + "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", + "dev": true, + "requires": { + "browserslist": "^4.21.4", + "postcss-selector-parser": "^6.0.4" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "svg.draggable.js": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/svg.draggable.js/-/svg.draggable.js-2.2.2.tgz", + "integrity": "sha512-JzNHBc2fLQMzYCZ90KZHN2ohXL0BQJGQimK1kGk6AvSeibuKcIdDX9Kr0dT9+UJ5O8nYA0RB839Lhvk4CY4MZw==", + "requires": { + "svg.js": "^2.0.1" + } + }, + "svg.easing.js": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/svg.easing.js/-/svg.easing.js-2.0.0.tgz", + "integrity": "sha512-//ctPdJMGy22YoYGV+3HEfHbm6/69LJUTAqI2/5qBvaNHZ9uUFVC82B0Pl299HzgH13rKrBgi4+XyXXyVWWthA==", + "requires": { + "svg.js": ">=2.3.x" + } + }, + "svg.filter.js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/svg.filter.js/-/svg.filter.js-2.0.2.tgz", + "integrity": "sha512-xkGBwU+dKBzqg5PtilaTb0EYPqPfJ9Q6saVldX+5vCRy31P6TlRCP3U9NxH3HEufkKkpNgdTLBJnmhDHeTqAkw==", + "requires": { + "svg.js": "^2.2.5" + } + }, + "svg.js": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/svg.js/-/svg.js-2.7.1.tgz", + "integrity": "sha512-ycbxpizEQktk3FYvn/8BH+6/EuWXg7ZpQREJvgacqn46gIddG24tNNe4Son6omdXCnSOaApnpZw6MPCBA1dODA==" + }, + "svg.pathmorphing.js": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/svg.pathmorphing.js/-/svg.pathmorphing.js-0.1.3.tgz", + "integrity": "sha512-49HWI9X4XQR/JG1qXkSDV8xViuTLIWm/B/7YuQELV5KMOPtXjiwH4XPJvr/ghEDibmLQ9Oc22dpWpG0vUDDNww==", + "requires": { + "svg.js": "^2.4.0" + } + }, + "svg.resize.js": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/svg.resize.js/-/svg.resize.js-1.4.3.tgz", + "integrity": "sha512-9k5sXJuPKp+mVzXNvxz7U0uC9oVMQrrf7cFsETznzUDDm0x8+77dtZkWdMfRlmbkEEYvUn9btKuZ3n41oNA+uw==", + "requires": { + "svg.js": "^2.6.5", + "svg.select.js": "^2.1.2" + }, + "dependencies": { + "svg.select.js": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/svg.select.js/-/svg.select.js-2.1.2.tgz", + "integrity": "sha512-tH6ABEyJsAOVAhwcCjF8mw4crjXSI1aa7j2VQR8ZuJ37H2MBUbyeqYr5nEO7sSN3cy9AR9DUwNg0t/962HlDbQ==", + "requires": { + "svg.js": "^2.2.5" + } + } + } + }, + "svg.select.js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/svg.select.js/-/svg.select.js-3.0.1.tgz", + "integrity": "sha512-h5IS/hKkuVCbKSieR9uQCj9w+zLHoPh+ce19bBYyqF53g6mnPB8sAtIbe1s9dh2S2fCmYX2xel1Ln3PJBbK4kw==", + "requires": { + "svg.js": "^2.6.5" + } + }, + "svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "dev": true, + "requires": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + } + }, + "sweetalert2": { + "version": "11.4.8", + "resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.4.8.tgz", + "integrity": "sha512-BDS/+E8RwaekGSxCPUbPnsRAyQ439gtXkTF/s98vY2l9DaVEOMjGj1FaQSorfGREKsbbxGSP7UXboibL5vgTMA==" + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true + }, + "terser": { + "version": "5.16.6", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.6.tgz", + "integrity": "sha512-IBZ+ZQIA9sMaXmRZCUMDjNH0D5AQQfdn4WUjHL0+1lF4TP1IHRJbrhb6fNaXWikrYQTSkb7SLxkeXAiy1p7mbg==", + "dev": true, + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + } + } + }, + "terser-webpack-plugin": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.7.tgz", + "integrity": "sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.17", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.16.5" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", + "dev": true + }, + "ticky": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ticky/-/ticky-1.0.1.tgz", + "integrity": "sha512-RX35iq/D+lrsqhcPWIazM9ELkjOe30MSeoBHQHSsRwd1YuhJO5ui1K1/R0r7N3mFvbLBs33idw+eR6j+w6i/DA==" + }, + "timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "dev": true, + "requires": { + "setimmediate": "^1.0.4" + } + }, + "timsort": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", + "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==", + "dev": true + }, + "tiny-binary-search": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-binary-search/-/tiny-binary-search-1.0.3.tgz", + "integrity": "sha512-STSHX/L5nI9WTLv6wrzJbAPbO7OIISX83KFBh2GVbX1Uz/vgZOU/ANn/8iV6t35yMTpoPzzO+3OQid3mifE0CA==" + }, + "tiny-emitter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", + "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==" + }, + "tiny-glob": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz", + "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==", + "requires": { + "globalyzer": "0.1.0", + "globrex": "^0.1.2" + } + }, + "tiny-inflate": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", + "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==" + }, + "tiny-slider": { + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/tiny-slider/-/tiny-slider-2.9.4.tgz", + "integrity": "sha512-LAs2kldWcY+BqCKw4kxd4CMx2RhWrHyEePEsymlOIISTlOVkjfK40sSD7ay73eKXBLg/UkluAZpcfCstimHXew==" + }, + "tinymce": { + "version": "5.10.7", + "resolved": "https://registry.npmjs.org/tinymce/-/tinymce-5.10.7.tgz", + "integrity": "sha512-9UUjaO0R7FxcFo0oxnd1lMs7H+D0Eh+dDVo5hKbVe1a+VB0nit97vOqlinj+YwgoBDt6/DSCUoWqAYlLI8BLYA==" + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA==", + "dev": true + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "requires": { + "is-number": "^7.0.0" + } + }, + "toastr": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/toastr/-/toastr-2.1.4.tgz", + "integrity": "sha512-LIy77F5n+sz4tefMmFOntcJ6HL0Fv3k1TDnNmFZ0bU/GcvIIfy6eG2v7zQmMiYgaalAiUv75ttFrPn5s0gyqlA==", + "requires": { + "jquery": ">=1.12.0" + } + }, + "toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true + }, + "touch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", + "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", + "requires": { + "nopt": "~1.0.10" + } + }, + "tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", + "dev": true + }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==", + "dev": true + }, + "type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + } + }, + "typed.js": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/typed.js/-/typed.js-2.0.16.tgz", + "integrity": "sha512-IBB52GlJiTUOnomwdVVf7lWgC6gScn8md+26zTHj5oJWA+4pSuclHE76rbGI2hnyO+NT+QXdIUHbfjAY5nEtcw==" + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" + }, + "uglify-js": { + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", + "optional": true + }, + "unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + } + }, + "undefsafe": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", + "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==" + }, + "unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true + }, + "unicode-properties": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/unicode-properties/-/unicode-properties-1.4.1.tgz", + "integrity": "sha512-CLjCCLQ6UuMxWnbIylkisbRj31qxHPAurvena/0iwSVbQ2G1VY5/HjV0IRabOEbDHlzZlRdCrD4NhB0JtU40Pg==", + "requires": { + "base64-js": "^1.3.0", + "unicode-trie": "^2.0.0" + } + }, + "unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true + }, + "unicode-trie": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-trie/-/unicode-trie-2.0.0.tgz", + "integrity": "sha512-x7bc76x0bm4prf1VLg79uhAzKw8DVboClSN5VxJuQ+LKDOVEW9CdH+VY7SP+vX7xCYQqzzgQpFqz15zeLvAtZQ==", + "requires": { + "pako": "^0.2.5", + "tiny-inflate": "^1.0.0" + }, + "dependencies": { + "pako": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", + "integrity": "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==" + } + } + }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==", + "dev": true + }, + "uniqs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", + "integrity": "sha512-mZdDpf3vBV5Efh29kMw5tXoup/buMgxLzOt/XKFKcVmi+15ManNQWr6HfZ2aiZTYlYixbdNJ0KFmIZIv52tHSQ==", + "dev": true + }, + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true + }, + "unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + }, + "dependencies": { + "punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true + } + } + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==", + "dev": true + } + } + }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dev": true, + "requires": { + "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + } + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "util.promisify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", + "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.2", + "has-symbols": "^1.0.1", + "object.getownpropertydescriptors": "^2.1.0" + } + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + }, + "vanilla-colorful": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/vanilla-colorful/-/vanilla-colorful-0.7.2.tgz", + "integrity": "sha512-z2YZusTFC6KnLERx1cgoIRX2CjPRP0W75N+3CC6gbvdX5Ch47rZkEMGO2Xnf+IEmi3RiFLxS18gayMA27iU7Kg==" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true + }, + "vendors": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz", + "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==", + "dev": true + }, + "vis-data": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/vis-data/-/vis-data-7.1.4.tgz", + "integrity": "sha512-usy+ePX1XnArNvJ5BavQod7YRuGQE1pjFl+pu7IS6rCom2EBoG0o1ZzCqf3l5US6MW51kYkLR+efxRbnjxNl7w==", + "peer": true, + "requires": {} + }, + "vis-timeline": { + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/vis-timeline/-/vis-timeline-7.7.0.tgz", + "integrity": "sha512-et5xobQTEp7i8lqcEjgMWoGE4s4qn+2VtEJ35uRZiL5Y3qRzi84bCTkUKAjOM/HTzVFiLTWET+DZZi1iHYriuA==", + "requires": {} + }, + "vis-util": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/vis-util/-/vis-util-5.0.3.tgz", + "integrity": "sha512-Wf9STUcFrDzK4/Zr7B6epW2Kvm3ORNWF+WiwEz2dpf5RdWkLUXFSbLcuB88n1W6tCdFwVN+v3V4/Xmn9PeL39g==", + "peer": true, + "requires": {} + }, + "vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", + "dev": true + }, + "vue-style-loader": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.3.tgz", + "integrity": "sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg==", + "dev": true, + "requires": { + "hash-sum": "^1.0.2", + "loader-utils": "^1.0.2" + }, + "dependencies": { + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } + } + }, + "watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dev": true, + "requires": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + } + }, + "wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "requires": { + "minimalistic-assert": "^1.0.0" + } + }, + "webpack": { + "version": "5.76.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.76.2.tgz", + "integrity": "sha512-Th05ggRm23rVzEOlX8y67NkYCHa9nTNcwHPBhdg+lKG+mtiW7XgggjAeeLnADAe7mLjJ6LUNfgHAuRRh+Z6J7w==", + "dev": true, + "requires": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true + } + } + }, + "webpack-cli": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz", + "integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==", + "dev": true, + "requires": { + "@discoveryjs/json-ext": "^0.5.0", + "@webpack-cli/configtest": "^1.2.0", + "@webpack-cli/info": "^1.5.0", + "@webpack-cli/serve": "^1.7.0", + "colorette": "^2.0.14", + "commander": "^7.0.0", + "cross-spawn": "^7.0.3", + "fastest-levenshtein": "^1.0.12", + "import-local": "^3.0.2", + "interpret": "^2.2.0", + "rechoir": "^0.7.0", + "webpack-merge": "^5.7.3" + } + }, + "webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "dev": true, + "requires": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + } + } + }, + "webpack-dev-server": { + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.13.1.tgz", + "integrity": "sha512-5tWg00bnWbYgkN+pd5yISQKDejRBYGEw15RaEEslH+zdbNDxxaZvEAO2WulaSaFKb5n3YG8JXsGaDsut1D0xdA==", + "dev": true, + "requires": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.13.0" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + } + } + }, + "webpack-merge": { + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", + "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", + "dev": true, + "requires": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + } + }, + "webpack-notifier": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/webpack-notifier/-/webpack-notifier-1.15.0.tgz", + "integrity": "sha512-N2V8UMgRB5komdXQRavBsRpw0hPhJq2/SWNOGuhrXpIgRhcMexzkGQysUyGStHLV5hkUlgpRiF7IUXoBqyMmzQ==", + "dev": true, + "requires": { + "node-notifier": "^9.0.0", + "strip-ansi": "^6.0.0" + } + }, + "webpack-rtl-plugin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/webpack-rtl-plugin/-/webpack-rtl-plugin-2.0.0.tgz", + "integrity": "sha512-lROgFkiPjapg9tcZ8FiLWeP5pJoG00018aEjLTxSrVldPD1ON+LPlhKPHjb7eE8Bc0+KL23pxcAjWDGOv9+UAw==", + "dev": true, + "requires": { + "@romainberger/css-diff": "^1.0.3", + "async": "^2.0.0", + "cssnano": "4.1.10", + "rtlcss": "2.4.0", + "webpack-sources": "1.3.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dev": true, + "requires": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + } + }, + "css-declaration-sorter": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz", + "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==", + "dev": true, + "requires": { + "postcss": "^7.0.1", + "timsort": "^0.3.0" + } + }, + "css-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "css-tree": { + "version": "1.0.0-alpha.37", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", + "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", + "dev": true, + "requires": { + "mdn-data": "2.0.4", + "source-map": "^0.6.1" + } + }, + "css-what": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", + "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", + "dev": true + }, + "cssnano": { + "version": "4.1.10", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.10.tgz", + "integrity": "sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ==", + "dev": true, + "requires": { + "cosmiconfig": "^5.0.0", + "cssnano-preset-default": "^4.0.7", + "is-resolvable": "^1.0.0", + "postcss": "^7.0.0" + } + }, + "cssnano-preset-default": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz", + "integrity": "sha512-LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==", + "dev": true, + "requires": { + "css-declaration-sorter": "^4.0.1", + "cssnano-util-raw-cache": "^4.0.1", + "postcss": "^7.0.0", + "postcss-calc": "^7.0.1", + "postcss-colormin": "^4.0.3", + "postcss-convert-values": "^4.0.1", + "postcss-discard-comments": "^4.0.2", + "postcss-discard-duplicates": "^4.0.2", + "postcss-discard-empty": "^4.0.1", + "postcss-discard-overridden": "^4.0.1", + "postcss-merge-longhand": "^4.0.11", + "postcss-merge-rules": "^4.0.3", + "postcss-minify-font-values": "^4.0.2", + "postcss-minify-gradients": "^4.0.2", + "postcss-minify-params": "^4.0.2", + "postcss-minify-selectors": "^4.0.2", + "postcss-normalize-charset": "^4.0.1", + "postcss-normalize-display-values": "^4.0.2", + "postcss-normalize-positions": "^4.0.2", + "postcss-normalize-repeat-style": "^4.0.2", + "postcss-normalize-string": "^4.0.2", + "postcss-normalize-timing-functions": "^4.0.2", + "postcss-normalize-unicode": "^4.0.1", + "postcss-normalize-url": "^4.0.1", + "postcss-normalize-whitespace": "^4.0.2", + "postcss-ordered-values": "^4.1.2", + "postcss-reduce-initial": "^4.0.3", + "postcss-reduce-transforms": "^4.0.2", + "postcss-svgo": "^4.0.3", + "postcss-unique-selectors": "^4.0.1" + } + }, + "dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + }, + "dependencies": { + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + } + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==", + "dev": true, + "requires": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + } + }, + "mdn-data": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", + "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", + "dev": true + }, + "normalize-url": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", + "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", + "dev": true + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "requires": { + "boolbase": "~1.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "postcss-calc": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.5.tgz", + "integrity": "sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==", + "dev": true, + "requires": { + "postcss": "^7.0.27", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.0.2" + } + }, + "postcss-colormin": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", + "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "color": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-convert-values": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz", + "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==", + "dev": true, + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-discard-comments": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz", + "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-duplicates": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz", + "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-empty": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", + "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-overridden": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz", + "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-merge-longhand": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", + "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", + "dev": true, + "requires": { + "css-color-names": "0.0.4", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "stylehacks": "^4.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-merge-rules": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", + "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "cssnano-util-same-parent": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0", + "vendors": "^1.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "dev": true, + "requires": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-minify-font-values": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz", + "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==", + "dev": true, + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-minify-gradients": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz", + "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "is-color-stop": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-minify-params": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz", + "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==", + "dev": true, + "requires": { + "alphanum-sort": "^1.0.0", + "browserslist": "^4.0.0", + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "uniqs": "^2.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-minify-selectors": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", + "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", + "dev": true, + "requires": { + "alphanum-sort": "^1.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "dev": true, + "requires": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-normalize-charset": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz", + "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-normalize-display-values": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz", + "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==", + "dev": true, + "requires": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-positions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz", + "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-repeat-style": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz", + "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-string": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz", + "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==", + "dev": true, + "requires": { + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-timing-functions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz", + "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==", + "dev": true, + "requires": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-unicode": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz", + "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-url": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz", + "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==", + "dev": true, + "requires": { + "is-absolute-url": "^2.0.0", + "normalize-url": "^3.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-normalize-whitespace": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", + "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", + "dev": true, + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-ordered-values": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", + "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-reduce-initial": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz", + "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0" + } + }, + "postcss-reduce-transforms": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", + "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", + "dev": true, + "requires": { + "cssnano-util-get-match": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-svgo": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.3.tgz", + "integrity": "sha512-NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw==", + "dev": true, + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "svgo": "^1.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + } + } + }, + "postcss-unique-selectors": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", + "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", + "dev": true, + "requires": { + "alphanum-sort": "^1.0.0", + "postcss": "^7.0.0", + "uniqs": "^2.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", + "dev": true + }, + "rtlcss": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-2.4.0.tgz", + "integrity": "sha512-hdjFhZ5FCI0ABOfyXOMOhBtwPWtANLCG7rOiOcRf+yi5eDdxmDjqBruWouEnwVdzfh/TWF6NNncIEsigOCFZOA==", + "dev": true, + "requires": { + "chalk": "^2.3.0", + "findup": "^0.1.5", + "mkdirp": "^0.5.1", + "postcss": "^6.0.14", + "strip-json-comments": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "6.0.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", + "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "source-map": "^0.6.1", + "supports-color": "^5.4.0" + } + } + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "dev": true + }, + "stylehacks": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz", + "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "dev": true, + "requires": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "svgo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", + "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "coa": "^2.0.2", + "css-select": "^2.0.0", + "css-select-base-adapter": "^0.1.1", + "css-tree": "1.0.0-alpha.37", + "csso": "^4.0.2", + "js-yaml": "^3.13.1", + "mkdirp": "~0.5.1", + "object.values": "^1.1.0", + "sax": "~1.2.4", + "stable": "^0.1.8", + "unquote": "~1.1.1", + "util.promisify": "~1.0.0" + } + }, + "webpack-sources": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", + "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + } + } + }, + "webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, + "webpackbar": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz", + "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==", + "dev": true, + "requires": { + "chalk": "^4.1.0", + "consola": "^2.15.3", + "pretty-time": "^1.1.0", + "std-env": "^3.0.1" + } + }, + "websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dev": true, + "requires": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + } + }, + "websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "requires": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + } + }, + "which-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "dev": true, + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.10" + } + }, + "wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", + "dev": true + }, + "wnumb": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/wnumb/-/wnumb-1.2.0.tgz", + "integrity": "sha512-eYut5K/dW7usfk/Mwm6nxBNoTPp/uP7PlXld+hhg7lDtHLdHFnNclywGYM9BRC7Ohd4JhwuHg+vmOUGfd3NhVA==" + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==" + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "ws": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "dev": true, + "requires": {} + }, + "xmldoc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/xmldoc/-/xmldoc-1.2.0.tgz", + "integrity": "sha512-2eN8QhjBsMW2uVj7JHLHkMytpvGHLHxKXBy4J3fAT/HujsEtM6yU84iGjpESYGHg6XwK0Vu4l+KgqQ2dv2cCqg==", + "requires": { + "sax": "^1.2.4" + } + }, + "xss": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.14.tgz", + "integrity": "sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==", + "peer": true, + "requires": { + "commander": "^2.20.3", + "cssfilter": "0.0.10" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "peer": true + } + } + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true + }, + "yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "dev": true, + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + } + }, + "yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true + } } } diff --git a/package.json b/package.json index f07f066..5a1141e 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,6 @@ { "private": true, + "version": "8.2.3", "scripts": { "dev": "npm run development", "development": "mix", @@ -10,105 +11,105 @@ "production": "mix --production" }, "dependencies": { - "@ckeditor/ckeditor5-alignment": "^35.2.1", - "@ckeditor/ckeditor5-build-balloon": "^35.2.1", - "@ckeditor/ckeditor5-build-balloon-block": "^35.2.1", - "@ckeditor/ckeditor5-build-classic": "^35.2.1", - "@ckeditor/ckeditor5-build-decoupled-document": "^35.2.1", - "@ckeditor/ckeditor5-build-inline": "^35.2.1", - "@eonasdan/tempus-dominus": "^6.2.10", - "@fortawesome/fontawesome-free": "^6.1.1", - "@popperjs/core": "2.11.6", - "@shopify/draggable": "^1.0.0-beta.12", - "@yaireo/tagify": "^4.9.2", - "acorn": "^8.0.4", - "apexcharts": "^3.36.3", - "autosize": "^5.0.1", - "axios": "^0.21.1", - "bootstrap": "5.3.0-alpha1", - "bootstrap-cookie-alert": "^1.2.1", + "@ckeditor/ckeditor5-alignment": "40.2.0", + "@ckeditor/ckeditor5-build-balloon": "40.2.0", + "@ckeditor/ckeditor5-build-balloon-block": "40.2.0", + "@ckeditor/ckeditor5-build-classic": "40.2.0", + "@ckeditor/ckeditor5-build-decoupled-document": "40.2.0", + "@ckeditor/ckeditor5-build-inline": "40.2.0", + "@eonasdan/tempus-dominus": "^6.9.4", + "@fortawesome/fontawesome-free": "^6.5.1", + "@popperjs/core": "2.11.8", + "@shopify/draggable": "^1.1.3", + "@yaireo/tagify": "^4.18.2", + "acorn": "^8.11.3", + "apexcharts": "3.45.1", + "autosize": "^6.0.1", + "axios": "^1.6.5", + "bootstrap": "5.3.2", + "bootstrap-cookie-alert": "^1.2.2", "bootstrap-daterangepicker": "^3.1.0", - "bootstrap-icons": "^1.5.0", + "bootstrap-icons": "^1.11.3", "bootstrap-maxlength": "^1.10.1", "bootstrap-multiselectsplitter": "^1.0.4", - "chalk": "^4.1.0", - "chart.js": "^3.6.0", - "clipboard": "^2.0.8", - "countup.js": "^2.0.7", - "cropperjs": "^1.5.12", - "datatables.net": "^1.12.1", - "datatables.net-bs5": "^1.12.1", - "datatables.net-buttons": "^2.2.3", - "datatables.net-buttons-bs5": "^2.2.3", - "datatables.net-colreorder": "^1.5.6", - "datatables.net-colreorder-bs5": "^1.5.6", - "datatables.net-datetime": "^1.1.2", - "datatables.net-fixedcolumns": "^4.1.0", - "datatables.net-fixedcolumns-bs5": "^4.1.0", - "datatables.net-fixedheader": "^3.2.3", - "datatables.net-fixedheader-bs5": "^3.2.3", - "datatables.net-plugins": "^1.11.5", - "datatables.net-responsive": "^2.3.0", - "datatables.net-responsive-bs5": "^2.3.0", - "datatables.net-rowgroup": "^1.2.0", - "datatables.net-rowgroup-bs5": "^1.2.0", - "datatables.net-rowreorder": "^1.2.8", - "datatables.net-rowreorder-bs5": "^1.2.8", - "datatables.net-scroller": "^2.0.6", - "datatables.net-scroller-bs5": "^2.0.6", - "datatables.net-select": "^1.4.0", - "datatables.net-select-bs5": "^1.4.0", - "dropzone": "^5.9.2", + "chalk": "^5.3.0", + "chart.js": "^4.4.1", + "clipboard": "^2.0.11", + "countup.js": "^2.8.0", + "cropperjs": "^1.6.1", + "datatables.net": "^1.13.8", + "datatables.net-bs5": "^1.13.8", + "datatables.net-buttons": "^2.4.2", + "datatables.net-buttons-bs5": "^2.4.2", + "datatables.net-colreorder": "^1.7.0", + "datatables.net-colreorder-bs5": "^1.7.0", + "datatables.net-datetime": "^1.5.0", + "datatables.net-fixedcolumns": "^4.3.0", + "datatables.net-fixedcolumns-bs5": "^4.3.0", + "datatables.net-fixedheader": "^3.4.0", + "datatables.net-fixedheader-bs5": "^3.4.0", + "datatables.net-plugins": "^1.13.6", + "datatables.net-responsive": "^2.5.0", + "datatables.net-responsive-bs5": "^2.5.0", + "datatables.net-rowgroup": "^1.4.1", + "datatables.net-rowgroup-bs5": "^1.4.1", + "datatables.net-rowreorder": "^1.4.1", + "datatables.net-rowreorder-bs5": "^1.4.1", + "datatables.net-scroller": "^2.3.0", + "datatables.net-scroller-bs5": "^2.3.0", + "datatables.net-select": "^1.7.0", + "datatables.net-select-bs5": "^1.7.0", + "dropzone": "^5.9.3", "es6-promise": "^4.2.8", "es6-promise-polyfill": "^1.2.0", - "es6-shim": "^0.35.5", - "esri-leaflet": "^3.0.2", - "esri-leaflet-geocoder": "^3.0.0", - "flatpickr": "^4.6.9", - "flot": "^4.2.2", - "fslightbox": "^3.3.0-2", + "es6-shim": "^0.35.8", + "esri-leaflet": "^3.0.12", + "esri-leaflet-geocoder": "^3.1.4", + "flatpickr": "^4.6.13", + "flot": "^4.2.6", + "fs": "^0.0.1-security", + "fslightbox": "^3.4.1", "fullcalendar": "^5.8.0", - "handlebars": "^4.7.7", - "inputmask": "^5.0.6", + "handlebars": "^4.7.8", + "inputmask": "^5.0.8", "jkanban": "^1.3.1", - "jquery": "3.6.0", - "jquery-chained": "^2.0.0-beta.2", + "jquery": "3.7.1", "jquery.repeater": "^1.2.1", - "jstree": "^3.3.11", - "jszip": "^3.6.0", - "leaflet": "^1.7.1", + "jstree": "^3.3.16", + "jszip": "^3.10.1", + "leaflet": "^1.9.4", "line-awesome": "^1.3.0", "lozad": "^1.16.0", - "moment": "^2.29.1", - "nouislider": "^15.2.0", - "npm": "^7.19.1", - "pdfmake": "^0.2.0", - "prism-themes": "^1.7.0", - "prismjs": "^1.24.1", + "moment": "^2.30.1", + "nouislider": "^15.7.1", + "npm": "^10.3.0", + "pdfmake": "^0.2.9", + "prism-themes": "^1.9.0", + "prismjs": "^1.29.0", "quill": "^1.3.7", "select2": "^4.1.0-rc.0", "smooth-scroll": "^16.1.3", "sweetalert2": "11.4.8", - "tiny-slider": "^2.9.3", + "tiny-slider": "^2.9.4", "tinymce": "^5.8.2", "toastr": "^2.1.4", - "typed.js": "2.0.12", - "vis-timeline": "^7.4.9", + "typed.js": "2.1.0", + "vis-timeline": "^7.7.3", "wnumb": "^1.2.0" }, "devDependencies": { "alpinejs": "^3.7.1", "autoprefixer": "^10.4.2", - "axios": "^1.1.3", - "del": "^6.0.0", + "del": "^7.1.0", + "laravel-datatables-vite": "^0.5.2", "laravel-mix": "^6.0.39", "laravel-mix-purgecss": "^6.0.0", "lodash": "^4.17.19", - "postcss": "^8.4.5", - "postcss-import": "^14.0.2", + "postcss": "^8.4.33", + "postcss-import": "^16.0.0", "replace-in-file-webpack-plugin": "^1.0.6", - "resolve-url-loader": "^4.0.0", - "rtlcss": "^3.5.0", + "resolve-url-loader": "^5.0.0", + "rtlcss": "^4.1.1", "sass": "1.55.0", "sass-loader": "13.2.0", "webpack-rtl-plugin": "^2.0.0" diff --git a/public/assets/media/logos/favicon-16x16.png b/public/assets/media/logos/favicon-16x16.png new file mode 100644 index 0000000..644cdb9 Binary files /dev/null and b/public/assets/media/logos/favicon-16x16.png differ diff --git a/public/assets/media/logos/favicon-32x32.png b/public/assets/media/logos/favicon-32x32.png new file mode 100644 index 0000000..a122424 Binary files /dev/null and b/public/assets/media/logos/favicon-32x32.png differ diff --git a/public/assets/media/logos/favicon.ico b/public/assets/media/logos/favicon.ico new file mode 100644 index 0000000..3fd4fd8 Binary files /dev/null and b/public/assets/media/logos/favicon.ico differ diff --git a/public/assets/media/logos/logo_agi.png b/public/assets/media/logos/logo_agi.png new file mode 100644 index 0000000..a16ae47 Binary files /dev/null and b/public/assets/media/logos/logo_agi.png differ diff --git a/public/assets/media/misc/bg-login.png b/public/assets/media/misc/bg-login.png new file mode 100644 index 0000000..dead034 Binary files /dev/null and b/public/assets/media/misc/bg-login.png differ diff --git a/public/vendor/livewire/livewire.js b/public/vendor/livewire/livewire.js new file mode 100644 index 0000000..c28a26b --- /dev/null +++ b/public/vendor/livewire/livewire.js @@ -0,0 +1,14 @@ +!function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?module.exports=factory():"function"==typeof define&&define.amd?define(factory):(global="undefined"!=typeof globalThis?globalThis:global||self).Livewire=factory()}(this,(function(){"use strict";function _iterableToArrayLimit(arr,i){var _i=null==arr?null:"undefined"!=typeof Symbol&&arr[Symbol.iterator]||arr["@@iterator"];if(null!=_i){var _s,_e,_x,_r,_arr=[],_n=!0,_d=!1;try{if(_x=(_i=_i.call(arr)).next,0===i){if(Object(_i)!==_i)return;_n=!1}else for(;!(_n=(_s=_x.call(_i)).done)&&(_arr.push(_s.value),_arr.length!==i);_n=!0);}catch(err){_d=!0,_e=err}finally{try{if(!_n&&null!=_i.return&&(_r=_i.return(),Object(_r)!==_r))return}finally{if(_d)throw _e}}return _arr}}function ownKeys$1(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);enumerableOnly&&(symbols=symbols.filter((function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable}))),keys.push.apply(keys,symbols)}return keys}function _objectSpread2(target){for(var i=1;iarr.length)&&(len=arr.length);for(var i=0,arr2=new Array(len);i0&&void 0!==arguments[0]?arguments[0]:"right";return this.modifiers.includes("up")?"up":this.modifiers.includes("down")?"down":this.modifiers.includes("left")?"left":this.modifiers.includes("right")?"right":fallback}}]),Directive}();function walk(root,callback){if(!1!==callback(root))for(var node=root.firstElementChild;node;)walk(node,callback),node=node.nextElementSibling}function dispatch(eventName){var event=document.createEvent("Events");return event.initEvent(eventName,!0,!0),document.dispatchEvent(event),event}function getCsrfToken(){var _window$livewire_toke,tokenTag=document.head.querySelector('meta[name="csrf-token"]');return tokenTag?tokenTag.content:null!==(_window$livewire_toke=window.livewire_token)&&void 0!==_window$livewire_toke?_window$livewire_toke:void 0}function kebabCase(subject){return subject.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[_\s]/,"-").toLowerCase()} +/*! + * isobject + * + * Copyright (c) 2014-2017, Jon Schlinkert. + * Released under the MIT License. + */var isobject=function(val){return null!=val&&"object"==typeof val&&!1===Array.isArray(val)},getValue=function(target,path,options){if(isobject(options)||(options={default:options}),!isValidObject(target))return void 0!==options.default?options.default:target;"number"==typeof path&&(path=String(path));const isArray=Array.isArray(path),isString="string"==typeof path,splitChar=options.separator||".",joinChar=options.joinChar||("string"==typeof splitChar?splitChar:".");if(!isString&&!isArray)return target;if(isString&&path in target)return isValid(path,target,options)?target[path]:options.default;let segs=isArray?path:split$1(path,splitChar,options),len=segs.length,idx=0;do{let prop=segs[idx];for("number"==typeof prop&&(prop=String(prop));prop&&"\\"===prop.slice(-1);)prop=join([prop.slice(0,-1),segs[++idx]||""],joinChar,options);if(prop in target){if(!isValid(prop,target,options))return options.default;target=target[prop]}else{let hasProp=!1,n=idx+1;for(;n + * + * Copyright (c) 2014-2018, Jon Schlinkert. + * Released under the MIT License. + */function join(segs,joinChar,options){return"function"==typeof options.join?options.join(segs):segs[0]+joinChar+segs[1]}function split$1(path,splitChar,options){return"function"==typeof options.split?options.split(path):path.split(splitChar)}function isValid(key,target,options){return"function"!=typeof options.isValid||options.isValid(key,target)}function isValidObject(val){return isobject(val)||Array.isArray(val)||"function"==typeof val}var _default$6=function(){function _default(el){var skipWatcher=arguments.length>1&&void 0!==arguments[1]&&arguments[1];_classCallCheck(this,_default),this.el=el,this.skipWatcher=skipWatcher,this.resolveCallback=function(){},this.rejectCallback=function(){},this.signature=(Math.random()+1).toString(36).substring(8)}return _createClass(_default,[{key:"toId",value:function(){return btoa(encodeURIComponent(this.el.outerHTML))}},{key:"onResolve",value:function(callback){this.resolveCallback=callback}},{key:"onReject",value:function(callback){this.rejectCallback=callback}},{key:"resolve",value:function(thing){this.resolveCallback(thing)}},{key:"reject",value:function(thing){this.rejectCallback(thing)}}]),_default}(),_default$5=function(_Action){_inherits(_default,_Action);var _super=_createSuper(_default);function _default(event,params,el){var _this;return _classCallCheck(this,_default),(_this=_super.call(this,el)).type="fireEvent",_this.payload={id:_this.signature,event:event,params:params},_this}return _createClass(_default,[{key:"toId",value:function(){return btoa(encodeURIComponent(this.type,this.payload.event,JSON.stringify(this.payload.params)))}}]),_default}(_default$6),MessageBus=function(){function MessageBus(){_classCallCheck(this,MessageBus),this.listeners={}}return _createClass(MessageBus,[{key:"register",value:function(name,callback){this.listeners[name]||(this.listeners[name]=[]),this.listeners[name].push(callback)}},{key:"call",value:function(name){for(var _len=arguments.length,params=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)params[_key-1]=arguments[_key];(this.listeners[name]||[]).forEach((function(callback){callback.apply(void 0,params)}))}},{key:"has",value:function(name){return Object.keys(this.listeners).includes(name)}}]),MessageBus}(),HookManager={availableHooks:["component.initialized","element.initialized","element.updating","element.updated","element.removed","message.sent","message.failed","message.received","message.processed","interceptWireModelSetValue","interceptWireModelAttachListener","beforeReplaceState","beforePushState"],bus:new MessageBus,register:function(name,callback){if(!this.availableHooks.includes(name))throw"Livewire: Referencing unknown hook: [".concat(name,"]");this.bus.register(name,callback)},call:function(name){for(var _this$bus,_len=arguments.length,params=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)params[_key-1]=arguments[_key];(_this$bus=this.bus).call.apply(_this$bus,[name].concat(params))}},DirectiveManager={directives:new MessageBus,register:function(name,callback){if(this.has(name))throw"Livewire: Directive already registered: [".concat(name,"]");this.directives.register(name,callback)},call:function(name,el,directive,component){this.directives.call(name,el,directive,component)},has:function(name){return this.directives.has(name)}},store$2={componentsById:{},listeners:new MessageBus,initialRenderIsFinished:!1,livewireIsInBackground:!1,livewireIsOffline:!1,sessionHasExpired:!1,sessionHasExpiredCallback:void 0,directives:DirectiveManager,hooks:HookManager,onErrorCallback:function(){},components:function(){var _this=this;return Object.keys(this.componentsById).map((function(key){return _this.componentsById[key]}))},addComponent:function(component){return this.componentsById[component.id]=component},findComponent:function(id){return this.componentsById[id]},getComponentsByName:function(name){return this.components().filter((function(component){return component.name===name}))},hasComponent:function(id){return!!this.componentsById[id]},tearDownComponents:function(){var _this2=this;this.components().forEach((function(component){_this2.removeComponent(component)}))},on:function(event,callback){this.listeners.register(event,callback)},emit:function(event){for(var _this$listeners,_len=arguments.length,params=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)params[_key-1]=arguments[_key];(_this$listeners=this.listeners).call.apply(_this$listeners,[event].concat(params)),this.componentsListeningForEvent(event).forEach((function(component){return component.addAction(new _default$5(event,params))}))},emitUp:function(el,event){for(var _len2=arguments.length,params=new Array(_len2>2?_len2-2:0),_key2=2;_key2<_len2;_key2++)params[_key2-2]=arguments[_key2];this.componentsListeningForEventThatAreTreeAncestors(el,event).forEach((function(component){return component.addAction(new _default$5(event,params))}))},emitSelf:function(componentId,event){var component=this.findComponent(componentId);if(component.listeners.includes(event)){for(var _len3=arguments.length,params=new Array(_len3>2?_len3-2:0),_key3=2;_key3<_len3;_key3++)params[_key3-2]=arguments[_key3];component.addAction(new _default$5(event,params))}},emitTo:function(componentName,event){for(var _len4=arguments.length,params=new Array(_len4>2?_len4-2:0),_key4=2;_key4<_len4;_key4++)params[_key4-2]=arguments[_key4];var components=this.getComponentsByName(componentName);components.forEach((function(component){component.listeners.includes(event)&&component.addAction(new _default$5(event,params))}))},componentsListeningForEventThatAreTreeAncestors:function(el,event){for(var parentIds=[],parent=el.parentElement.closest("[wire\\:id]");parent;)parentIds.push(parent.getAttribute("wire:id")),parent=parent.parentElement.closest("[wire\\:id]");return this.components().filter((function(component){return component.listeners.includes(event)&&parentIds.includes(component.id)}))},componentsListeningForEvent:function(event){return this.components().filter((function(component){return component.listeners.includes(event)}))},registerDirective:function(name,callback){this.directives.register(name,callback)},registerHook:function(name,callback){this.hooks.register(name,callback)},callHook:function(name){for(var _this$hooks,_len5=arguments.length,params=new Array(_len5>1?_len5-1:0),_key5=1;_key5<_len5;_key5++)params[_key5-1]=arguments[_key5];(_this$hooks=this.hooks).call.apply(_this$hooks,[name].concat(params))},changeComponentId:function(component,newId){var oldId=component.id;component.id=newId,component.fingerprint.id=newId,this.componentsById[newId]=component,delete this.componentsById[oldId],this.components().forEach((function(component){var children=component.serverMemo.children||{};Object.entries(children).forEach((function(_ref){var _ref2=_slicedToArray(_ref,2),key=_ref2[0],_ref2$=_ref2[1],id=_ref2$.id;_ref2$.tagName,id===oldId&&(children[key].id=newId)}))}))},removeComponent:function(component){component.tearDown(),delete this.componentsById[component.id]},onError:function(callback){this.onErrorCallback=callback},getClosestParentId:function(childId,subsetOfParentIds){var _this3=this,distancesByParentId={};subsetOfParentIds.forEach((function(parentId){var distance=_this3.getDistanceToChild(parentId,childId);distance&&(distancesByParentId[parentId]=distance)}));var closestParentId,smallestDistance=Math.min.apply(Math,_toConsumableArray(Object.values(distancesByParentId)));return Object.entries(distancesByParentId).forEach((function(_ref3){var _ref4=_slicedToArray(_ref3,2),parentId=_ref4[0];_ref4[1]===smallestDistance&&(closestParentId=parentId)})),closestParentId},getDistanceToChild:function(parentId,childId){var distanceMemo=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,parentComponent=this.findComponent(parentId);if(parentComponent){var childIds=parentComponent.childIds;if(childIds.includes(childId))return distanceMemo;for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:null;null===node&&(node=document);var allEls=Array.from(node.querySelectorAll("[wire\\:initial-data]")),onlyChildEls=Array.from(node.querySelectorAll("[wire\\:initial-data] [wire\\:initial-data]"));return allEls.filter((function(el){return!onlyChildEls.includes(el)}))},allModelElementsInside:function(root){return Array.from(root.querySelectorAll("[wire\\:model]"))},getByAttributeAndValue:function(attribute,value){return document.querySelector("[wire\\:".concat(attribute,'="').concat(value,'"]'))},nextFrame:function(fn){var _this=this;requestAnimationFrame((function(){requestAnimationFrame(fn.bind(_this))}))},closestRoot:function(el){return this.closestByAttribute(el,"id")},closestByAttribute:function(el,attribute){var closestEl=el.closest("[wire\\:".concat(attribute,"]"));if(!closestEl)throw"\nLivewire Error:\n\nCannot find parent element in DOM tree containing attribute: [wire:".concat(attribute,"].\n\nUsually this is caused by Livewire's DOM-differ not being able to properly track changes.\n\nReference the following guide for common causes: https://laravel-livewire.com/docs/troubleshooting \n\nReferenced element:\n\n").concat(el.outerHTML,"\n");return closestEl},isComponentRootEl:function(el){return this.hasAttribute(el,"id")},hasAttribute:function(el,attribute){return el.hasAttribute("wire:".concat(attribute))},getAttribute:function(el,attribute){return el.getAttribute("wire:".concat(attribute))},removeAttribute:function(el,attribute){return el.removeAttribute("wire:".concat(attribute))},setAttribute:function(el,attribute,value){return el.setAttribute("wire:".concat(attribute),value)},hasFocus:function(el){return el===document.activeElement},isInput:function(el){return["INPUT","TEXTAREA","SELECT"].includes(el.tagName.toUpperCase())},isTextInput:function(el){return["INPUT","TEXTAREA"].includes(el.tagName.toUpperCase())&&!["checkbox","radio"].includes(el.type)},valueFromInput:function(el,component){if("checkbox"===el.type){var modelName=wireDirectives(el).get("model").value,modelValue=component.deferredActions[modelName]?component.deferredActions[modelName].payload.value:getValue(component.data,modelName);return Array.isArray(modelValue)?this.mergeCheckboxValueIntoArray(el,modelValue):!!el.checked&&(el.getAttribute("value")||!0)}return"SELECT"===el.tagName&&el.multiple?this.getSelectValues(el):el.value},mergeCheckboxValueIntoArray:function(el,arrayValue){return el.checked?arrayValue.includes(el.value)?arrayValue:arrayValue.concat(el.value):arrayValue.filter((function(item){return item!=el.value}))},setInputValueFromModel:function(el,component){var modelString=wireDirectives(el).get("model").value,modelValue=getValue(component.data,modelString);"input"===el.tagName.toLowerCase()&&"file"===el.type||this.setInputValue(el,modelValue)},setInputValue:function(el,value){if(store$2.callHook("interceptWireModelSetValue",value,el),"radio"===el.type)el.checked=el.value==value;else if("checkbox"===el.type)if(Array.isArray(value)){var valueFound=!1;value.forEach((function(val){val==el.value&&(valueFound=!0)})),el.checked=valueFound}else el.checked=!!value;else"SELECT"===el.tagName?this.updateSelect(el,value):(value=void 0===value?"":value,el.value=value)},getSelectValues:function(el){return Array.from(el.options).filter((function(option){return option.selected})).map((function(option){return option.value||option.text}))},updateSelect:function(el,value){var arrayWrappedValue=[].concat(value).map((function(value){return value+""}));Array.from(el.options).forEach((function(option){option.selected=arrayWrappedValue.includes(option.value)}))}},fails=function(exec){try{return!!exec()}catch(error){return!0}},functionBindNative=!fails((function(){var test=function(){}.bind();return"function"!=typeof test||test.hasOwnProperty("prototype")})),FunctionPrototype$2=Function.prototype,call$2=FunctionPrototype$2.call,uncurryThisWithBind=functionBindNative&&FunctionPrototype$2.bind.bind(call$2,call$2),functionUncurryThis=functionBindNative?uncurryThisWithBind:function(fn){return function(){return call$2.apply(fn,arguments)}},ceil=Math.ceil,floor=Math.floor,mathTrunc=Math.trunc||function(x){var n=+x;return(n>0?floor:ceil)(n)},toIntegerOrInfinity=function(argument){var number=+argument;return number!=number||0===number?0:mathTrunc(number)},commonjsGlobal="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function createCommonjsModule(fn,basedir,module){return module={path:basedir,exports:{},require:function(path,base){return commonjsRequire(path,null==base?module.path:base)}},fn(module,module.exports),module.exports}function commonjsRequire(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}var check=function(it){return it&&it.Math==Math&&it},global_1=check("object"==typeof globalThis&&globalThis)||check("object"==typeof window&&window)||check("object"==typeof self&&self)||check("object"==typeof commonjsGlobal&&commonjsGlobal)||function(){return this}()||Function("return this")(),defineProperty$4=Object.defineProperty,defineGlobalProperty=function(key,value){try{defineProperty$4(global_1,key,{value:value,configurable:!0,writable:!0})}catch(error){global_1[key]=value}return value},SHARED="__core-js_shared__",store$1=global_1[SHARED]||defineGlobalProperty(SHARED,{}),sharedStore=store$1,shared=createCommonjsModule((function(module){(module.exports=function(key,value){return sharedStore[key]||(sharedStore[key]=void 0!==value?value:{})})("versions",[]).push({version:"3.27.1",mode:"global",copyright:"© 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.27.1/LICENSE",source:"https://github.com/zloirock/core-js"})})),isNullOrUndefined=function(it){return null==it},$TypeError$e=TypeError,requireObjectCoercible=function(it){if(isNullOrUndefined(it))throw $TypeError$e("Can't call method on "+it);return it},$Object$4=Object,toObject=function(argument){return $Object$4(requireObjectCoercible(argument))},hasOwnProperty=functionUncurryThis({}.hasOwnProperty),hasOwnProperty_1=Object.hasOwn||function(it,key){return hasOwnProperty(toObject(it),key)},id=0,postfix=Math.random(),toString$1=functionUncurryThis(1..toString),uid=function(key){return"Symbol("+(void 0===key?"":key)+")_"+toString$1(++id+postfix,36)},documentAll$2="object"==typeof document&&document.all,IS_HTMLDDA=void 0===documentAll$2&&void 0!==documentAll$2,documentAll_1={all:documentAll$2,IS_HTMLDDA:IS_HTMLDDA},documentAll$1=documentAll_1.all,isCallable=documentAll_1.IS_HTMLDDA?function(argument){return"function"==typeof argument||argument===documentAll$1}:function(argument){return"function"==typeof argument},aFunction=function(argument){return isCallable(argument)?argument:void 0},getBuiltIn=function(namespace,method){return arguments.length<2?aFunction(global_1[namespace]):global_1[namespace]&&global_1[namespace][method]},engineUserAgent=getBuiltIn("navigator","userAgent")||"",process$3=global_1.process,Deno$1=global_1.Deno,versions=process$3&&process$3.versions||Deno$1&&Deno$1.version,v8=versions&&versions.v8,match,version;v8&&(match=v8.split("."),version=match[0]>0&&match[0]<4?1:+(match[0]+match[1])),!version&&engineUserAgent&&(match=engineUserAgent.match(/Edge\/(\d+)/),(!match||match[1]>=74)&&(match=engineUserAgent.match(/Chrome\/(\d+)/),match&&(version=+match[1])));var engineV8Version=version,symbolConstructorDetection=!!Object.getOwnPropertySymbols&&!fails((function(){var symbol=Symbol();return!String(symbol)||!(Object(symbol)instanceof Symbol)||!Symbol.sham&&engineV8Version&&engineV8Version<41})),useSymbolAsUid=symbolConstructorDetection&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,WellKnownSymbolsStore=shared("wks"),Symbol$1=global_1.Symbol,symbolFor=Symbol$1&&Symbol$1.for,createWellKnownSymbol=useSymbolAsUid?Symbol$1:Symbol$1&&Symbol$1.withoutSetter||uid,wellKnownSymbol=function(name){if(!hasOwnProperty_1(WellKnownSymbolsStore,name)||!symbolConstructorDetection&&"string"!=typeof WellKnownSymbolsStore[name]){var description="Symbol."+name;symbolConstructorDetection&&hasOwnProperty_1(Symbol$1,name)?WellKnownSymbolsStore[name]=Symbol$1[name]:WellKnownSymbolsStore[name]=useSymbolAsUid&&symbolFor?symbolFor(description):createWellKnownSymbol(description)}return WellKnownSymbolsStore[name]},TO_STRING_TAG$4=wellKnownSymbol("toStringTag"),test={};test[TO_STRING_TAG$4]="z";var toStringTagSupport="[object z]"===String(test),toString=functionUncurryThis({}.toString),stringSlice$2=functionUncurryThis("".slice),classofRaw=function(it){return stringSlice$2(toString(it),8,-1)},TO_STRING_TAG$3=wellKnownSymbol("toStringTag"),$Object$3=Object,CORRECT_ARGUMENTS="Arguments"==classofRaw(function(){return arguments}()),tryGet=function(it,key){try{return it[key]}catch(error){}},classof=toStringTagSupport?classofRaw:function(it){var O,tag,result;return void 0===it?"Undefined":null===it?"Null":"string"==typeof(tag=tryGet(O=$Object$3(it),TO_STRING_TAG$3))?tag:CORRECT_ARGUMENTS?classofRaw(O):"Object"==(result=classofRaw(O))&&isCallable(O.callee)?"Arguments":result},$String$3=String,toString_1=function(argument){if("Symbol"===classof(argument))throw TypeError("Cannot convert a Symbol value to a string");return $String$3(argument)},charAt$1=functionUncurryThis("".charAt),charCodeAt=functionUncurryThis("".charCodeAt),stringSlice$1=functionUncurryThis("".slice),createMethod$3=function(CONVERT_TO_STRING){return function($this,pos){var first,second,S=toString_1(requireObjectCoercible($this)),position=toIntegerOrInfinity(pos),size=S.length;return position<0||position>=size?CONVERT_TO_STRING?"":void 0:(first=charCodeAt(S,position))<55296||first>56319||position+1===size||(second=charCodeAt(S,position+1))<56320||second>57343?CONVERT_TO_STRING?charAt$1(S,position):first:CONVERT_TO_STRING?stringSlice$1(S,position,position+2):second-56320+(first-55296<<10)+65536}},stringMultibyte={codeAt:createMethod$3(!1),charAt:createMethod$3(!0)},WeakMap$1=global_1.WeakMap,weakMapBasicDetection=isCallable(WeakMap$1)&&/native code/.test(String(WeakMap$1)),documentAll=documentAll_1.all,isObject=documentAll_1.IS_HTMLDDA?function(it){return"object"==typeof it?null!==it:isCallable(it)||it===documentAll}:function(it){return"object"==typeof it?null!==it:isCallable(it)},descriptors=!fails((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),document$3=global_1.document,EXISTS$1=isObject(document$3)&&isObject(document$3.createElement),documentCreateElement=function(it){return EXISTS$1?document$3.createElement(it):{}},ie8DomDefine=!descriptors&&!fails((function(){return 7!=Object.defineProperty(documentCreateElement("div"),"a",{get:function(){return 7}}).a})),v8PrototypeDefineBug=descriptors&&fails((function(){return 42!=Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype})),$String$2=String,$TypeError$d=TypeError,anObject=function(argument){if(isObject(argument))return argument;throw $TypeError$d($String$2(argument)+" is not an object")},call$1=Function.prototype.call,functionCall=functionBindNative?call$1.bind(call$1):function(){return call$1.apply(call$1,arguments)},objectIsPrototypeOf=functionUncurryThis({}.isPrototypeOf),$Object$2=Object,isSymbol=useSymbolAsUid?function(it){return"symbol"==typeof it}:function(it){var $Symbol=getBuiltIn("Symbol");return isCallable($Symbol)&&objectIsPrototypeOf($Symbol.prototype,$Object$2(it))},$String$1=String,tryToString=function(argument){try{return $String$1(argument)}catch(error){return"Object"}},$TypeError$c=TypeError,aCallable=function(argument){if(isCallable(argument))return argument;throw $TypeError$c(tryToString(argument)+" is not a function")},getMethod=function(V,P){var func=V[P];return isNullOrUndefined(func)?void 0:aCallable(func)},$TypeError$b=TypeError,ordinaryToPrimitive=function(input,pref){var fn,val;if("string"===pref&&isCallable(fn=input.toString)&&!isObject(val=functionCall(fn,input)))return val;if(isCallable(fn=input.valueOf)&&!isObject(val=functionCall(fn,input)))return val;if("string"!==pref&&isCallable(fn=input.toString)&&!isObject(val=functionCall(fn,input)))return val;throw $TypeError$b("Can't convert object to primitive value")},$TypeError$a=TypeError,TO_PRIMITIVE=wellKnownSymbol("toPrimitive"),toPrimitive=function(input,pref){if(!isObject(input)||isSymbol(input))return input;var result,exoticToPrim=getMethod(input,TO_PRIMITIVE);if(exoticToPrim){if(void 0===pref&&(pref="default"),result=functionCall(exoticToPrim,input,pref),!isObject(result)||isSymbol(result))return result;throw $TypeError$a("Can't convert object to primitive value")}return void 0===pref&&(pref="number"),ordinaryToPrimitive(input,pref)},toPropertyKey=function(argument){var key=toPrimitive(argument,"string");return isSymbol(key)?key:key+""},$TypeError$9=TypeError,$defineProperty=Object.defineProperty,$getOwnPropertyDescriptor$1=Object.getOwnPropertyDescriptor,ENUMERABLE="enumerable",CONFIGURABLE$1="configurable",WRITABLE="writable",f$6=descriptors?v8PrototypeDefineBug?function(O,P,Attributes){if(anObject(O),P=toPropertyKey(P),anObject(Attributes),"function"==typeof O&&"prototype"===P&&"value"in Attributes&&WRITABLE in Attributes&&!Attributes[WRITABLE]){var current=$getOwnPropertyDescriptor$1(O,P);current&¤t[WRITABLE]&&(O[P]=Attributes.value,Attributes={configurable:CONFIGURABLE$1 in Attributes?Attributes[CONFIGURABLE$1]:current[CONFIGURABLE$1],enumerable:ENUMERABLE in Attributes?Attributes[ENUMERABLE]:current[ENUMERABLE],writable:!1})}return $defineProperty(O,P,Attributes)}:$defineProperty:function(O,P,Attributes){if(anObject(O),P=toPropertyKey(P),anObject(Attributes),ie8DomDefine)try{return $defineProperty(O,P,Attributes)}catch(error){}if("get"in Attributes||"set"in Attributes)throw $TypeError$9("Accessors not supported");return"value"in Attributes&&(O[P]=Attributes.value),O},objectDefineProperty={f:f$6},createPropertyDescriptor=function(bitmap,value){return{enumerable:!(1&bitmap),configurable:!(2&bitmap),writable:!(4&bitmap),value:value}},createNonEnumerableProperty=descriptors?function(object,key,value){return objectDefineProperty.f(object,key,createPropertyDescriptor(1,value))}:function(object,key,value){return object[key]=value,object},keys=shared("keys"),sharedKey=function(key){return keys[key]||(keys[key]=uid(key))},hiddenKeys$1={},OBJECT_ALREADY_INITIALIZED="Object already initialized",TypeError$2=global_1.TypeError,WeakMap=global_1.WeakMap,set$1,get,has,enforce=function(it){return has(it)?get(it):set$1(it,{})},getterFor=function(TYPE){return function(it){var state;if(!isObject(it)||(state=get(it)).type!==TYPE)throw TypeError$2("Incompatible receiver, "+TYPE+" required");return state}};if(weakMapBasicDetection||sharedStore.state){var store=sharedStore.state||(sharedStore.state=new WeakMap);store.get=store.get,store.has=store.has,store.set=store.set,set$1=function(it,metadata){if(store.has(it))throw TypeError$2(OBJECT_ALREADY_INITIALIZED);return metadata.facade=it,store.set(it,metadata),metadata},get=function(it){return store.get(it)||{}},has=function(it){return store.has(it)}}else{var STATE=sharedKey("state");hiddenKeys$1[STATE]=!0,set$1=function(it,metadata){if(hasOwnProperty_1(it,STATE))throw TypeError$2(OBJECT_ALREADY_INITIALIZED);return metadata.facade=it,createNonEnumerableProperty(it,STATE,metadata),metadata},get=function(it){return hasOwnProperty_1(it,STATE)?it[STATE]:{}},has=function(it){return hasOwnProperty_1(it,STATE)}}var internalState={set:set$1,get:get,has:has,enforce:enforce,getterFor:getterFor},$propertyIsEnumerable$1={}.propertyIsEnumerable,getOwnPropertyDescriptor$3=Object.getOwnPropertyDescriptor,NASHORN_BUG=getOwnPropertyDescriptor$3&&!$propertyIsEnumerable$1.call({1:2},1),f$5=NASHORN_BUG?function(V){var descriptor=getOwnPropertyDescriptor$3(this,V);return!!descriptor&&descriptor.enumerable}:$propertyIsEnumerable$1,objectPropertyIsEnumerable={f:f$5},$Object$1=Object,split=functionUncurryThis("".split),indexedObject=fails((function(){return!$Object$1("z").propertyIsEnumerable(0)}))?function(it){return"String"==classofRaw(it)?split(it,""):$Object$1(it)}:$Object$1,toIndexedObject=function(it){return indexedObject(requireObjectCoercible(it))},$getOwnPropertyDescriptor=Object.getOwnPropertyDescriptor,f$4=descriptors?$getOwnPropertyDescriptor:function(O,P){if(O=toIndexedObject(O),P=toPropertyKey(P),ie8DomDefine)try{return $getOwnPropertyDescriptor(O,P)}catch(error){}if(hasOwnProperty_1(O,P))return createPropertyDescriptor(!functionCall(objectPropertyIsEnumerable.f,O,P),O[P])},objectGetOwnPropertyDescriptor={f:f$4},FunctionPrototype$1=Function.prototype,getDescriptor=descriptors&&Object.getOwnPropertyDescriptor,EXISTS=hasOwnProperty_1(FunctionPrototype$1,"name"),PROPER=EXISTS&&"something"===function(){}.name,CONFIGURABLE=EXISTS&&(!descriptors||descriptors&&getDescriptor(FunctionPrototype$1,"name").configurable),functionName={EXISTS:EXISTS,PROPER:PROPER,CONFIGURABLE:CONFIGURABLE},functionToString=functionUncurryThis(Function.toString);isCallable(sharedStore.inspectSource)||(sharedStore.inspectSource=function(it){return functionToString(it)});var inspectSource=sharedStore.inspectSource,makeBuiltIn_1=createCommonjsModule((function(module){var CONFIGURABLE_FUNCTION_NAME=functionName.CONFIGURABLE,enforceInternalState=internalState.enforce,getInternalState=internalState.get,defineProperty=Object.defineProperty,CONFIGURABLE_LENGTH=descriptors&&!fails((function(){return 8!==defineProperty((function(){}),"length",{value:8}).length})),TEMPLATE=String(String).split("String"),makeBuiltIn=module.exports=function(value,name,options){"Symbol("===String(name).slice(0,7)&&(name="["+String(name).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),options&&options.getter&&(name="get "+name),options&&options.setter&&(name="set "+name),(!hasOwnProperty_1(value,"name")||CONFIGURABLE_FUNCTION_NAME&&value.name!==name)&&(descriptors?defineProperty(value,"name",{value:name,configurable:!0}):value.name=name),CONFIGURABLE_LENGTH&&options&&hasOwnProperty_1(options,"arity")&&value.length!==options.arity&&defineProperty(value,"length",{value:options.arity});try{options&&hasOwnProperty_1(options,"constructor")&&options.constructor?descriptors&&defineProperty(value,"prototype",{writable:!1}):value.prototype&&(value.prototype=void 0)}catch(error){}var state=enforceInternalState(value);return hasOwnProperty_1(state,"source")||(state.source=TEMPLATE.join("string"==typeof name?name:"")),value};Function.prototype.toString=makeBuiltIn((function(){return isCallable(this)&&getInternalState(this).source||inspectSource(this)}),"toString")})),defineBuiltIn=function(O,key,value,options){options||(options={});var simple=options.enumerable,name=void 0!==options.name?options.name:key;if(isCallable(value)&&makeBuiltIn_1(value,name,options),options.global)simple?O[key]=value:defineGlobalProperty(key,value);else{try{options.unsafe?O[key]&&(simple=!0):delete O[key]}catch(error){}simple?O[key]=value:objectDefineProperty.f(O,key,{value:value,enumerable:!1,configurable:!options.nonConfigurable,writable:!options.nonWritable})}return O},max=Math.max,min$2=Math.min,toAbsoluteIndex=function(index,length){var integer=toIntegerOrInfinity(index);return integer<0?max(integer+length,0):min$2(integer,length)},min$1=Math.min,toLength=function(argument){return argument>0?min$1(toIntegerOrInfinity(argument),9007199254740991):0},lengthOfArrayLike=function(obj){return toLength(obj.length)},createMethod$2=function(IS_INCLUDES){return function($this,el,fromIndex){var value,O=toIndexedObject($this),length=lengthOfArrayLike(O),index=toAbsoluteIndex(fromIndex,length);if(IS_INCLUDES&&el!=el){for(;length>index;)if((value=O[index++])!=value)return!0}else for(;length>index;index++)if((IS_INCLUDES||index in O)&&O[index]===el)return IS_INCLUDES||index||0;return!IS_INCLUDES&&-1}},arrayIncludes={includes:createMethod$2(!0),indexOf:createMethod$2(!1)},indexOf=arrayIncludes.indexOf,push$3=functionUncurryThis([].push),objectKeysInternal=function(object,names){var key,O=toIndexedObject(object),i=0,result=[];for(key in O)!hasOwnProperty_1(hiddenKeys$1,key)&&hasOwnProperty_1(O,key)&&push$3(result,key);for(;names.length>i;)hasOwnProperty_1(O,key=names[i++])&&(~indexOf(result,key)||push$3(result,key));return result},enumBugKeys=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],hiddenKeys=enumBugKeys.concat("length","prototype"),f$3=Object.getOwnPropertyNames||function(O){return objectKeysInternal(O,hiddenKeys)},objectGetOwnPropertyNames={f:f$3},f$2=Object.getOwnPropertySymbols,objectGetOwnPropertySymbols={f:f$2},concat$1=functionUncurryThis([].concat),ownKeys=getBuiltIn("Reflect","ownKeys")||function(it){var keys=objectGetOwnPropertyNames.f(anObject(it)),getOwnPropertySymbols=objectGetOwnPropertySymbols.f;return getOwnPropertySymbols?concat$1(keys,getOwnPropertySymbols(it)):keys},copyConstructorProperties=function(target,source,exceptions){for(var keys=ownKeys(source),defineProperty=objectDefineProperty.f,getOwnPropertyDescriptor=objectGetOwnPropertyDescriptor.f,i=0;iindex;)objectDefineProperty.f(O,key=keys[index++],props[key]);return O},objectDefineProperties={f:f$1},html=getBuiltIn("document","documentElement"),GT=">",LT="<",PROTOTYPE="prototype",SCRIPT="script",IE_PROTO$1=sharedKey("IE_PROTO"),EmptyConstructor=function(){},scriptTag=function(content){return LT+SCRIPT+GT+content+LT+"/"+SCRIPT+GT},NullProtoObjectViaActiveX=function(activeXDocument){activeXDocument.write(scriptTag("")),activeXDocument.close();var temp=activeXDocument.parentWindow.Object;return activeXDocument=null,temp},NullProtoObjectViaIFrame=function(){var iframeDocument,iframe=documentCreateElement("iframe"),JS="java"+SCRIPT+":";return iframe.style.display="none",html.appendChild(iframe),iframe.src=String(JS),(iframeDocument=iframe.contentWindow.document).open(),iframeDocument.write(scriptTag("document.F=Object")),iframeDocument.close(),iframeDocument.F},activeXDocument,NullProtoObject=function(){try{activeXDocument=new ActiveXObject("htmlfile")}catch(error){}NullProtoObject="undefined"!=typeof document?document.domain&&activeXDocument?NullProtoObjectViaActiveX(activeXDocument):NullProtoObjectViaIFrame():NullProtoObjectViaActiveX(activeXDocument);for(var length=enumBugKeys.length;length--;)delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];return NullProtoObject()};hiddenKeys$1[IE_PROTO$1]=!0;var objectCreate=Object.create||function(O,Properties){var result;return null!==O?(EmptyConstructor[PROTOTYPE]=anObject(O),result=new EmptyConstructor,EmptyConstructor[PROTOTYPE]=null,result[IE_PROTO$1]=O):result=NullProtoObject(),void 0===Properties?result:objectDefineProperties.f(result,Properties)},correctPrototypeGetter=!fails((function(){function F(){}return F.prototype.constructor=null,Object.getPrototypeOf(new F)!==F.prototype})),IE_PROTO=sharedKey("IE_PROTO"),$Object=Object,ObjectPrototype=$Object.prototype,objectGetPrototypeOf=correctPrototypeGetter?$Object.getPrototypeOf:function(O){var object=toObject(O);if(hasOwnProperty_1(object,IE_PROTO))return object[IE_PROTO];var constructor=object.constructor;return isCallable(constructor)&&object instanceof constructor?constructor.prototype:object instanceof $Object?ObjectPrototype:null},ITERATOR$5=wellKnownSymbol("iterator"),BUGGY_SAFARI_ITERATORS$1=!1,IteratorPrototype$2,PrototypeOfArrayIteratorPrototype,arrayIterator;[].keys&&(arrayIterator=[].keys(),"next"in arrayIterator?(PrototypeOfArrayIteratorPrototype=objectGetPrototypeOf(objectGetPrototypeOf(arrayIterator)),PrototypeOfArrayIteratorPrototype!==Object.prototype&&(IteratorPrototype$2=PrototypeOfArrayIteratorPrototype)):BUGGY_SAFARI_ITERATORS$1=!0);var NEW_ITERATOR_PROTOTYPE=!isObject(IteratorPrototype$2)||fails((function(){var test={};return IteratorPrototype$2[ITERATOR$5].call(test)!==test}));NEW_ITERATOR_PROTOTYPE&&(IteratorPrototype$2={}),isCallable(IteratorPrototype$2[ITERATOR$5])||defineBuiltIn(IteratorPrototype$2,ITERATOR$5,(function(){return this}));var iteratorsCore={IteratorPrototype:IteratorPrototype$2,BUGGY_SAFARI_ITERATORS:BUGGY_SAFARI_ITERATORS$1},defineProperty$3=objectDefineProperty.f,TO_STRING_TAG$2=wellKnownSymbol("toStringTag"),setToStringTag=function(target,TAG,STATIC){target&&!STATIC&&(target=target.prototype),target&&!hasOwnProperty_1(target,TO_STRING_TAG$2)&&defineProperty$3(target,TO_STRING_TAG$2,{configurable:!0,value:TAG})},iterators={},IteratorPrototype$1=iteratorsCore.IteratorPrototype,returnThis$1=function(){return this},iteratorCreateConstructor=function(IteratorConstructor,NAME,next,ENUMERABLE_NEXT){var TO_STRING_TAG=NAME+" Iterator";return IteratorConstructor.prototype=objectCreate(IteratorPrototype$1,{next:createPropertyDescriptor(+!ENUMERABLE_NEXT,next)}),setToStringTag(IteratorConstructor,TO_STRING_TAG,!1),iterators[TO_STRING_TAG]=returnThis$1,IteratorConstructor},$String=String,$TypeError$8=TypeError,aPossiblePrototype=function(argument){if("object"==typeof argument||isCallable(argument))return argument;throw $TypeError$8("Can't set "+$String(argument)+" as a prototype")},objectSetPrototypeOf=Object.setPrototypeOf||("__proto__"in{}?function(){var setter,CORRECT_SETTER=!1,test={};try{(setter=functionUncurryThis(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set))(test,[]),CORRECT_SETTER=test instanceof Array}catch(error){}return function(O,proto){return anObject(O),aPossiblePrototype(proto),CORRECT_SETTER?setter(O,proto):O.__proto__=proto,O}}():void 0),PROPER_FUNCTION_NAME=functionName.PROPER,CONFIGURABLE_FUNCTION_NAME=functionName.CONFIGURABLE,IteratorPrototype=iteratorsCore.IteratorPrototype,BUGGY_SAFARI_ITERATORS=iteratorsCore.BUGGY_SAFARI_ITERATORS,ITERATOR$4=wellKnownSymbol("iterator"),KEYS="keys",VALUES="values",ENTRIES="entries",returnThis=function(){return this},iteratorDefine=function(Iterable,NAME,IteratorConstructor,next,DEFAULT,IS_SET,FORCED){iteratorCreateConstructor(IteratorConstructor,NAME,next);var CurrentIteratorPrototype,methods,KEY,getIterationMethod=function(KIND){if(KIND===DEFAULT&&defaultIterator)return defaultIterator;if(!BUGGY_SAFARI_ITERATORS&&KIND in IterablePrototype)return IterablePrototype[KIND];switch(KIND){case KEYS:case VALUES:case ENTRIES:return function(){return new IteratorConstructor(this,KIND)}}return function(){return new IteratorConstructor(this)}},TO_STRING_TAG=NAME+" Iterator",INCORRECT_VALUES_NAME=!1,IterablePrototype=Iterable.prototype,nativeIterator=IterablePrototype[ITERATOR$4]||IterablePrototype["@@iterator"]||DEFAULT&&IterablePrototype[DEFAULT],defaultIterator=!BUGGY_SAFARI_ITERATORS&&nativeIterator||getIterationMethod(DEFAULT),anyNativeIterator="Array"==NAME&&IterablePrototype.entries||nativeIterator;if(anyNativeIterator&&(CurrentIteratorPrototype=objectGetPrototypeOf(anyNativeIterator.call(new Iterable)))!==Object.prototype&&CurrentIteratorPrototype.next&&(objectGetPrototypeOf(CurrentIteratorPrototype)!==IteratorPrototype&&(objectSetPrototypeOf?objectSetPrototypeOf(CurrentIteratorPrototype,IteratorPrototype):isCallable(CurrentIteratorPrototype[ITERATOR$4])||defineBuiltIn(CurrentIteratorPrototype,ITERATOR$4,returnThis)),setToStringTag(CurrentIteratorPrototype,TO_STRING_TAG,!0)),PROPER_FUNCTION_NAME&&DEFAULT==VALUES&&nativeIterator&&nativeIterator.name!==VALUES&&(CONFIGURABLE_FUNCTION_NAME?createNonEnumerableProperty(IterablePrototype,"name",VALUES):(INCORRECT_VALUES_NAME=!0,defaultIterator=function(){return functionCall(nativeIterator,this)})),DEFAULT)if(methods={values:getIterationMethod(VALUES),keys:IS_SET?defaultIterator:getIterationMethod(KEYS),entries:getIterationMethod(ENTRIES)},FORCED)for(KEY in methods)(BUGGY_SAFARI_ITERATORS||INCORRECT_VALUES_NAME||!(KEY in IterablePrototype))&&defineBuiltIn(IterablePrototype,KEY,methods[KEY]);else _export({target:NAME,proto:!0,forced:BUGGY_SAFARI_ITERATORS||INCORRECT_VALUES_NAME},methods);return IterablePrototype[ITERATOR$4]!==defaultIterator&&defineBuiltIn(IterablePrototype,ITERATOR$4,defaultIterator,{name:DEFAULT}),iterators[NAME]=defaultIterator,methods},createIterResultObject=function(value,done){return{value:value,done:done}},charAt=stringMultibyte.charAt,STRING_ITERATOR="String Iterator",setInternalState$2=internalState.set,getInternalState$1=internalState.getterFor(STRING_ITERATOR);iteratorDefine(String,"String",(function(iterated){setInternalState$2(this,{type:STRING_ITERATOR,string:toString_1(iterated),index:0})}),(function(){var point,state=getInternalState$1(this),string=state.string,index=state.index;return index>=string.length?createIterResultObject(void 0,!0):(point=charAt(string,index),state.index+=point.length,createIterResultObject(point,!1))}));var functionUncurryThisClause=function(fn){if("Function"===classofRaw(fn))return functionUncurryThis(fn)},bind$1=functionUncurryThisClause(functionUncurryThisClause.bind),functionBindContext=function(fn,that){return aCallable(fn),void 0===that?fn:functionBindNative?bind$1(fn,that):function(){return fn.apply(that,arguments)}},iteratorClose=function(iterator,kind,value){var innerResult,innerError;anObject(iterator);try{if(!(innerResult=getMethod(iterator,"return"))){if("throw"===kind)throw value;return value}innerResult=functionCall(innerResult,iterator)}catch(error){innerError=!0,innerResult=error}if("throw"===kind)throw value;if(innerError)throw innerResult;return anObject(innerResult),value},callWithSafeIterationClosing=function(iterator,fn,value,ENTRIES){try{return ENTRIES?fn(anObject(value)[0],value[1]):fn(value)}catch(error){iteratorClose(iterator,"throw",error)}},ITERATOR$3=wellKnownSymbol("iterator"),ArrayPrototype$1=Array.prototype,isArrayIteratorMethod=function(it){return void 0!==it&&(iterators.Array===it||ArrayPrototype$1[ITERATOR$3]===it)},noop$1=function(){},empty=[],construct=getBuiltIn("Reflect","construct"),constructorRegExp=/^\s*(?:class|function)\b/,exec=functionUncurryThis(constructorRegExp.exec),INCORRECT_TO_STRING=!constructorRegExp.exec(noop$1),isConstructorModern=function(argument){if(!isCallable(argument))return!1;try{return construct(noop$1,empty,argument),!0}catch(error){return!1}},isConstructorLegacy=function(argument){if(!isCallable(argument))return!1;switch(classof(argument)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return INCORRECT_TO_STRING||!!exec(constructorRegExp,inspectSource(argument))}catch(error){return!0}};isConstructorLegacy.sham=!0;var isConstructor=!construct||fails((function(){var called;return isConstructorModern(isConstructorModern.call)||!isConstructorModern(Object)||!isConstructorModern((function(){called=!0}))||called}))?isConstructorLegacy:isConstructorModern,createProperty=function(object,key,value){var propertyKey=toPropertyKey(key);propertyKey in object?objectDefineProperty.f(object,propertyKey,createPropertyDescriptor(0,value)):object[propertyKey]=value},ITERATOR$2=wellKnownSymbol("iterator"),getIteratorMethod=function(it){if(!isNullOrUndefined(it))return getMethod(it,ITERATOR$2)||getMethod(it,"@@iterator")||iterators[classof(it)]},$TypeError$7=TypeError,getIterator=function(argument,usingIterator){var iteratorMethod=arguments.length<2?getIteratorMethod(argument):usingIterator;if(aCallable(iteratorMethod))return anObject(functionCall(iteratorMethod,argument));throw $TypeError$7(tryToString(argument)+" is not iterable")},$Array$1=Array,arrayFrom=function(arrayLike){var O=toObject(arrayLike),IS_CONSTRUCTOR=isConstructor(this),argumentsLength=arguments.length,mapfn=argumentsLength>1?arguments[1]:void 0,mapping=void 0!==mapfn;mapping&&(mapfn=functionBindContext(mapfn,argumentsLength>2?arguments[2]:void 0));var length,result,step,iterator,next,value,iteratorMethod=getIteratorMethod(O),index=0;if(!iteratorMethod||this===$Array$1&&isArrayIteratorMethod(iteratorMethod))for(length=lengthOfArrayLike(O),result=IS_CONSTRUCTOR?new this(length):$Array$1(length);length>index;index++)value=mapping?mapfn(O[index],index):O[index],createProperty(result,index,value);else for(next=(iterator=getIterator(O,iteratorMethod)).next,result=IS_CONSTRUCTOR?new this:[];!(step=functionCall(next,iterator)).done;index++)value=mapping?callWithSafeIterationClosing(iterator,mapfn,[step.value,index],!0):step.value,createProperty(result,index,value);return result.length=index,result},ITERATOR$1=wellKnownSymbol("iterator"),SAFE_CLOSING=!1;try{var called=0,iteratorWithReturn={next:function(){return{done:!!called++}},return:function(){SAFE_CLOSING=!0}};iteratorWithReturn[ITERATOR$1]=function(){return this},Array.from(iteratorWithReturn,(function(){throw 2}))}catch(error){}var checkCorrectnessOfIteration=function(exec,SKIP_CLOSING){if(!SKIP_CLOSING&&!SAFE_CLOSING)return!1;var ITERATION_SUPPORT=!1;try{var object={};object[ITERATOR$1]=function(){return{next:function(){return{done:ITERATION_SUPPORT=!0}}}},exec(object)}catch(error){}return ITERATION_SUPPORT},INCORRECT_ITERATION=!checkCorrectnessOfIteration((function(iterable){Array.from(iterable)}));_export({target:"Array",stat:!0,forced:INCORRECT_ITERATION},{from:arrayFrom});var path=global_1;path.Array.from;var defineProperty$2=objectDefineProperty.f,UNSCOPABLES=wellKnownSymbol("unscopables"),ArrayPrototype=Array.prototype;null==ArrayPrototype[UNSCOPABLES]&&defineProperty$2(ArrayPrototype,UNSCOPABLES,{configurable:!0,value:objectCreate(null)});var addToUnscopables=function(key){ArrayPrototype[UNSCOPABLES][key]=!0},$includes=arrayIncludes.includes,BROKEN_ON_SPARSE=fails((function(){return!Array(1).includes()}));_export({target:"Array",proto:!0,forced:BROKEN_ON_SPARSE},{includes:function(el){return $includes(this,el,arguments.length>1?arguments[1]:void 0)}}),addToUnscopables("includes");var entryUnbind=function(CONSTRUCTOR,METHOD){return functionUncurryThis(global_1[CONSTRUCTOR].prototype[METHOD])};entryUnbind("Array","includes");var isArray=Array.isArray||function(argument){return"Array"==classofRaw(argument)},$TypeError$6=TypeError,MAX_SAFE_INTEGER=9007199254740991,doesNotExceedSafeInteger=function(it){if(it>MAX_SAFE_INTEGER)throw $TypeError$6("Maximum allowed index exceeded");return it},flattenIntoArray=function(target,original,source,sourceLen,start,depth,mapper,thisArg){for(var element,elementLen,targetIndex=start,sourceIndex=0,mapFn=!!mapper&&functionBindContext(mapper,thisArg);sourceIndex0&&isArray(element)?(elementLen=lengthOfArrayLike(element),targetIndex=flattenIntoArray(target,original,element,elementLen,targetIndex,depth-1)-1):(doesNotExceedSafeInteger(targetIndex+1),target[targetIndex]=element),targetIndex++),sourceIndex++;return targetIndex},flattenIntoArray_1=flattenIntoArray,SPECIES$3=wellKnownSymbol("species"),$Array=Array,arraySpeciesConstructor=function(originalArray){var C;return isArray(originalArray)&&(C=originalArray.constructor,(isConstructor(C)&&(C===$Array||isArray(C.prototype))||isObject(C)&&null===(C=C[SPECIES$3]))&&(C=void 0)),void 0===C?$Array:C},arraySpeciesCreate=function(originalArray,length){return new(arraySpeciesConstructor(originalArray))(0===length?0:length)};_export({target:"Array",proto:!0},{flat:function(){var depthArg=arguments.length?arguments[0]:void 0,O=toObject(this),sourceLen=lengthOfArrayLike(O),A=arraySpeciesCreate(O,0);return A.length=flattenIntoArray_1(A,O,O,sourceLen,0,void 0===depthArg?1:toIntegerOrInfinity(depthArg)),A}}),addToUnscopables("flat"),entryUnbind("Array","flat");var push$2=functionUncurryThis([].push),createMethod$1=function(TYPE){var IS_MAP=1==TYPE,IS_FILTER=2==TYPE,IS_SOME=3==TYPE,IS_EVERY=4==TYPE,IS_FIND_INDEX=6==TYPE,IS_FILTER_REJECT=7==TYPE,NO_HOLES=5==TYPE||IS_FIND_INDEX;return function($this,callbackfn,that,specificCreate){for(var value,result,O=toObject($this),self=indexedObject(O),boundFunction=functionBindContext(callbackfn,that),length=lengthOfArrayLike(self),index=0,create=specificCreate||arraySpeciesCreate,target=IS_MAP?create($this,length):IS_FILTER||IS_FILTER_REJECT?create($this,0):void 0;length>index;index++)if((NO_HOLES||index in self)&&(result=boundFunction(value=self[index],index,O),TYPE))if(IS_MAP)target[index]=result;else if(result)switch(TYPE){case 3:return!0;case 5:return value;case 6:return index;case 2:push$2(target,value)}else switch(TYPE){case 4:return!1;case 7:push$2(target,value)}return IS_FIND_INDEX?-1:IS_SOME||IS_EVERY?IS_EVERY:target}},arrayIteration={forEach:createMethod$1(0),map:createMethod$1(1),filter:createMethod$1(2),some:createMethod$1(3),every:createMethod$1(4),find:createMethod$1(5),findIndex:createMethod$1(6),filterReject:createMethod$1(7)},$find=arrayIteration.find,FIND="find",SKIPS_HOLES=!0;FIND in[]&&Array(1)[FIND]((function(){SKIPS_HOLES=!1})),_export({target:"Array",proto:!0,forced:SKIPS_HOLES},{find:function(callbackfn){return $find(this,callbackfn,arguments.length>1?arguments[1]:void 0)}}),addToUnscopables(FIND),entryUnbind("Array","find");var $assign=Object.assign,defineProperty$1=Object.defineProperty,concat=functionUncurryThis([].concat),objectAssign=!$assign||fails((function(){if(descriptors&&1!==$assign({b:1},$assign(defineProperty$1({},"a",{enumerable:!0,get:function(){defineProperty$1(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var A={},B={},symbol=Symbol();return A[symbol]=7,"abcdefghijklmnopqrst".split("").forEach((function(chr){B[chr]=chr})),7!=$assign({},A)[symbol]||"abcdefghijklmnopqrst"!=objectKeys($assign({},B)).join("")}))?function(target,source){for(var T=toObject(target),argumentsLength=arguments.length,index=1,getOwnPropertySymbols=objectGetOwnPropertySymbols.f,propertyIsEnumerable=objectPropertyIsEnumerable.f;argumentsLength>index;)for(var key,S=indexedObject(arguments[index++]),keys=getOwnPropertySymbols?concat(objectKeys(S),getOwnPropertySymbols(S)):objectKeys(S),length=keys.length,j=0;length>j;)key=keys[j++],descriptors&&!functionCall(propertyIsEnumerable,S,key)||(T[key]=S[key]);return T}:$assign;_export({target:"Object",stat:!0,arity:2,forced:Object.assign!==objectAssign},{assign:objectAssign}),path.Object.assign;var $propertyIsEnumerable=objectPropertyIsEnumerable.f,propertyIsEnumerable=functionUncurryThis($propertyIsEnumerable),push$1=functionUncurryThis([].push),createMethod=function(TO_ENTRIES){return function(it){for(var key,O=toIndexedObject(it),keys=objectKeys(O),length=keys.length,i=0,result=[];length>i;)key=keys[i++],descriptors&&!propertyIsEnumerable(O,key)||push$1(result,TO_ENTRIES?[key,O[key]]:O[key]);return result}},objectToArray={entries:createMethod(!0),values:createMethod(!1)},$entries=objectToArray.entries;_export({target:"Object",stat:!0},{entries:function(O){return $entries(O)}}),path.Object.entries;var $values=objectToArray.values;_export({target:"Object",stat:!0},{values:function(O){return $values(O)}}),path.Object.values;var $Error$1=Error,replace=functionUncurryThis("".replace),TEST=String($Error$1("zxcasd").stack),V8_OR_CHAKRA_STACK_ENTRY=/\n\s*at [^:]*:[^\n]*/,IS_V8_OR_CHAKRA_STACK=V8_OR_CHAKRA_STACK_ENTRY.test(TEST),errorStackClear=function(stack,dropEntries){if(IS_V8_OR_CHAKRA_STACK&&"string"==typeof stack&&!$Error$1.prepareStackTrace)for(;dropEntries--;)stack=replace(stack,V8_OR_CHAKRA_STACK_ENTRY,"");return stack},installErrorCause=function(O,options){isObject(options)&&"cause"in options&&createNonEnumerableProperty(O,"cause",options.cause)},$TypeError$5=TypeError,Result=function(stopped,result){this.stopped=stopped,this.result=result},ResultPrototype=Result.prototype,iterate=function(iterable,unboundFunction,options){var iterator,iterFn,index,length,result,next,step,that=options&&options.that,AS_ENTRIES=!(!options||!options.AS_ENTRIES),IS_RECORD=!(!options||!options.IS_RECORD),IS_ITERATOR=!(!options||!options.IS_ITERATOR),INTERRUPTED=!(!options||!options.INTERRUPTED),fn=functionBindContext(unboundFunction,that),stop=function(condition){return iterator&&iteratorClose(iterator,"normal",condition),new Result(!0,condition)},callFn=function(value){return AS_ENTRIES?(anObject(value),INTERRUPTED?fn(value[0],value[1],stop):fn(value[0],value[1])):INTERRUPTED?fn(value,stop):fn(value)};if(IS_RECORD)iterator=iterable.iterator;else if(IS_ITERATOR)iterator=iterable;else{if(!(iterFn=getIteratorMethod(iterable)))throw $TypeError$5(tryToString(iterable)+" is not iterable");if(isArrayIteratorMethod(iterFn)){for(index=0,length=lengthOfArrayLike(iterable);length>index;index++)if((result=callFn(iterable[index]))&&objectIsPrototypeOf(ResultPrototype,result))return result;return new Result(!1)}iterator=getIterator(iterable,iterFn)}for(next=IS_RECORD?iterable.next:iterator.next;!(step=functionCall(next,iterator)).done;){try{result=callFn(step.value)}catch(error){iteratorClose(iterator,"throw",error)}if("object"==typeof result&&result&&objectIsPrototypeOf(ResultPrototype,result))return result}return new Result(!1)},normalizeStringArgument=function(argument,$default){return void 0===argument?arguments.length<2?"":$default:toString_1(argument)},errorStackInstallable=!fails((function(){var error=Error("a");return!("stack"in error)||(Object.defineProperty(error,"stack",createPropertyDescriptor(1,7)),7!==error.stack)})),TO_STRING_TAG$1=wellKnownSymbol("toStringTag"),$Error=Error,push=[].push,$AggregateError=function(errors,message){var that,options=arguments.length>2?arguments[2]:void 0,isInstance=objectIsPrototypeOf(AggregateErrorPrototype,this);objectSetPrototypeOf?that=objectSetPrototypeOf($Error(),isInstance?objectGetPrototypeOf(this):AggregateErrorPrototype):(that=isInstance?this:objectCreate(AggregateErrorPrototype),createNonEnumerableProperty(that,TO_STRING_TAG$1,"Error")),void 0!==message&&createNonEnumerableProperty(that,"message",normalizeStringArgument(message)),errorStackInstallable&&createNonEnumerableProperty(that,"stack",errorStackClear(that.stack,1)),installErrorCause(that,options);var errorsArray=[];return iterate(errors,push,{that:errorsArray}),createNonEnumerableProperty(that,"errors",errorsArray),that};objectSetPrototypeOf?objectSetPrototypeOf($AggregateError,$Error):copyConstructorProperties($AggregateError,$Error,{name:!0});var AggregateErrorPrototype=$AggregateError.prototype=objectCreate($Error.prototype,{constructor:createPropertyDescriptor(1,$AggregateError),message:createPropertyDescriptor(1,""),name:createPropertyDescriptor(1,"AggregateError")});_export({global:!0,constructor:!0,arity:2},{AggregateError:$AggregateError});var defineProperty=objectDefineProperty.f,ARRAY_ITERATOR="Array Iterator",setInternalState$1=internalState.set,getInternalState=internalState.getterFor(ARRAY_ITERATOR),es_array_iterator=iteratorDefine(Array,"Array",(function(iterated,kind){setInternalState$1(this,{type:ARRAY_ITERATOR,target:toIndexedObject(iterated),index:0,kind:kind})}),(function(){var state=getInternalState(this),target=state.target,kind=state.kind,index=state.index++;return!target||index>=target.length?(state.target=void 0,createIterResultObject(void 0,!0)):createIterResultObject("keys"==kind?index:"values"==kind?target[index]:[index,target[index]],!1)}),"values"),values=iterators.Arguments=iterators.Array;if(addToUnscopables("keys"),addToUnscopables("values"),addToUnscopables("entries"),descriptors&&"values"!==values.name)try{defineProperty(values,"name",{value:"values"})}catch(error){}var objectToString=toStringTagSupport?{}.toString:function(){return"[object "+classof(this)+"]"};toStringTagSupport||defineBuiltIn(Object.prototype,"toString",objectToString,{unsafe:!0});var engineIsNode="process"==classofRaw(global_1.process),SPECIES$2=wellKnownSymbol("species"),setSpecies=function(CONSTRUCTOR_NAME){var Constructor=getBuiltIn(CONSTRUCTOR_NAME),defineProperty=objectDefineProperty.f;descriptors&&Constructor&&!Constructor[SPECIES$2]&&defineProperty(Constructor,SPECIES$2,{configurable:!0,get:function(){return this}})},$TypeError$4=TypeError,anInstance=function(it,Prototype){if(objectIsPrototypeOf(Prototype,it))return it;throw $TypeError$4("Incorrect invocation")},$TypeError$3=TypeError,aConstructor=function(argument){if(isConstructor(argument))return argument;throw $TypeError$3(tryToString(argument)+" is not a constructor")},SPECIES$1=wellKnownSymbol("species"),speciesConstructor=function(O,defaultConstructor){var S,C=anObject(O).constructor;return void 0===C||isNullOrUndefined(S=anObject(C)[SPECIES$1])?defaultConstructor:aConstructor(S)},FunctionPrototype=Function.prototype,apply=FunctionPrototype.apply,call=FunctionPrototype.call,functionApply="object"==typeof Reflect&&Reflect.apply||(functionBindNative?call.bind(apply):function(){return call.apply(apply,arguments)}),arraySlice=functionUncurryThis([].slice),$TypeError$2=TypeError,validateArgumentsLength=function(passed,required){if(passed1?arguments[1]:void 0,that.length)),search=toString_1(searchString);return nativeStartsWith?nativeStartsWith(that,search,index):stringSlice(that,index,index+search.length)===search}}),entryUnbind("String","startsWith");var global$1="undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||void 0!==global$1&&global$1,support={searchParams:"URLSearchParams"in global$1,iterable:"Symbol"in global$1&&"iterator"in Symbol,blob:"FileReader"in global$1&&"Blob"in global$1&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:"FormData"in global$1,arrayBuffer:"ArrayBuffer"in global$1};function isDataView(obj){return obj&&DataView.prototype.isPrototypeOf(obj)}if(support.arrayBuffer)var viewClasses=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],isArrayBufferView=ArrayBuffer.isView||function(obj){return obj&&viewClasses.indexOf(Object.prototype.toString.call(obj))>-1};function normalizeName(name){if("string"!=typeof name&&(name=String(name)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(name)||""===name)throw new TypeError('Invalid character in header field name: "'+name+'"');return name.toLowerCase()}function normalizeValue(value){return"string"!=typeof value&&(value=String(value)),value}function iteratorFor(items){var iterator={next:function(){var value=items.shift();return{done:void 0===value,value:value}}};return support.iterable&&(iterator[Symbol.iterator]=function(){return iterator}),iterator}function Headers(headers){this.map={},headers instanceof Headers?headers.forEach((function(value,name){this.append(name,value)}),this):Array.isArray(headers)?headers.forEach((function(header){this.append(header[0],header[1])}),this):headers&&Object.getOwnPropertyNames(headers).forEach((function(name){this.append(name,headers[name])}),this)}function consumed(body){if(body.bodyUsed)return Promise.reject(new TypeError("Already read"));body.bodyUsed=!0}function fileReaderReady(reader){return new Promise((function(resolve,reject){reader.onload=function(){resolve(reader.result)},reader.onerror=function(){reject(reader.error)}}))}function readBlobAsArrayBuffer(blob){var reader=new FileReader,promise=fileReaderReady(reader);return reader.readAsArrayBuffer(blob),promise}function readBlobAsText(blob){var reader=new FileReader,promise=fileReaderReady(reader);return reader.readAsText(blob),promise}function readArrayBufferAsText(buf){for(var view=new Uint8Array(buf),chars=new Array(view.length),i=0;i-1?upcased:method}function Request(input,options){if(!(this instanceof Request))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');var body=(options=options||{}).body;if(input instanceof Request){if(input.bodyUsed)throw new TypeError("Already read");this.url=input.url,this.credentials=input.credentials,options.headers||(this.headers=new Headers(input.headers)),this.method=input.method,this.mode=input.mode,this.signal=input.signal,body||null==input._bodyInit||(body=input._bodyInit,input.bodyUsed=!0)}else this.url=String(input);if(this.credentials=options.credentials||this.credentials||"same-origin",!options.headers&&this.headers||(this.headers=new Headers(options.headers)),this.method=normalizeMethod(options.method||this.method||"GET"),this.mode=options.mode||this.mode||null,this.signal=options.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&body)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(body),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==options.cache&&"no-cache"!==options.cache)){var reParamSearch=/([?&])_=[^&]*/;if(reParamSearch.test(this.url))this.url=this.url.replace(reParamSearch,"$1_="+(new Date).getTime());else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function decode(body){var form=new FormData;return body.trim().split("&").forEach((function(bytes){if(bytes){var split=bytes.split("="),name=split.shift().replace(/\+/g," "),value=split.join("=").replace(/\+/g," ");form.append(decodeURIComponent(name),decodeURIComponent(value))}})),form}function parseHeaders(rawHeaders){var headers=new Headers;return rawHeaders.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(header){return 0===header.indexOf("\n")?header.substr(1,header.length):header})).forEach((function(line){var parts=line.split(":"),key=parts.shift().trim();if(key){var value=parts.join(":").trim();headers.append(key,value)}})),headers}function Response(bodyInit,options){if(!(this instanceof Response))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');options||(options={}),this.type="default",this.status=void 0===options.status?200:options.status,this.ok=this.status>=200&&this.status<300,this.statusText=void 0===options.statusText?"":""+options.statusText,this.headers=new Headers(options.headers),this.url=options.url||"",this._initBody(bodyInit)}Request.prototype.clone=function(){return new Request(this,{body:this._bodyInit})},Body.call(Request.prototype),Body.call(Response.prototype),Response.prototype.clone=function(){return new Response(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Headers(this.headers),url:this.url})},Response.error=function(){var response=new Response(null,{status:0,statusText:""});return response.type="error",response};var redirectStatuses=[301,302,303,307,308];Response.redirect=function(url,status){if(-1===redirectStatuses.indexOf(status))throw new RangeError("Invalid status code");return new Response(null,{status:status,headers:{location:url}})};var DOMException=global$1.DOMException;try{new DOMException}catch(err){DOMException=function(message,name){this.message=message,this.name=name;var error=Error(message);this.stack=error.stack},DOMException.prototype=Object.create(Error.prototype),DOMException.prototype.constructor=DOMException}function fetch$1(input,init){return new Promise((function(resolve,reject){var request=new Request(input,init);if(request.signal&&request.signal.aborted)return reject(new DOMException("Aborted","AbortError"));var xhr=new XMLHttpRequest;function abortXhr(){xhr.abort()}xhr.onload=function(){var options={status:xhr.status,statusText:xhr.statusText,headers:parseHeaders(xhr.getAllResponseHeaders()||"")};options.url="responseURL"in xhr?xhr.responseURL:options.headers.get("X-Request-URL");var body="response"in xhr?xhr.response:xhr.responseText;setTimeout((function(){resolve(new Response(body,options))}),0)},xhr.onerror=function(){setTimeout((function(){reject(new TypeError("Network request failed"))}),0)},xhr.ontimeout=function(){setTimeout((function(){reject(new TypeError("Network request failed"))}),0)},xhr.onabort=function(){setTimeout((function(){reject(new DOMException("Aborted","AbortError"))}),0)},xhr.open(request.method,function(url){try{return""===url&&global$1.location.href?global$1.location.href:url}catch(e){return url}}(request.url),!0),"include"===request.credentials?xhr.withCredentials=!0:"omit"===request.credentials&&(xhr.withCredentials=!1),"responseType"in xhr&&(support.blob?xhr.responseType="blob":support.arrayBuffer&&request.headers.get("Content-Type")&&-1!==request.headers.get("Content-Type").indexOf("application/octet-stream")&&(xhr.responseType="arraybuffer")),!init||"object"!=typeof init.headers||init.headers instanceof Headers?request.headers.forEach((function(value,name){xhr.setRequestHeader(name,value)})):Object.getOwnPropertyNames(init.headers).forEach((function(name){xhr.setRequestHeader(name,normalizeValue(init.headers[name]))})),request.signal&&(request.signal.addEventListener("abort",abortXhr),xhr.onreadystatechange=function(){4===xhr.readyState&&request.signal.removeEventListener("abort",abortXhr)}),xhr.send(void 0===request._bodyInit?null:request._bodyInit)}))}fetch$1.polyfill=!0,global$1.fetch||(global$1.fetch=fetch$1,global$1.Headers=Headers,global$1.Request=Request,global$1.Response=Response),null==Element.prototype.getAttributeNames&&(Element.prototype.getAttributeNames=function(){for(var attributes=this.attributes,length=attributes.length,result=new Array(length),i=0;i=0&&matches.item(i)!==this;);return i>-1}),Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector),Element.prototype.closest||(Element.prototype.closest=function(s){var el=this;do{if(el.matches(s))return el;el=el.parentElement||el.parentNode}while(null!==el&&1===el.nodeType);return null});var Connection=function(){function Connection(){_classCallCheck(this,Connection),this.headers={}}return _createClass(Connection,[{key:"onMessage",value:function(message,payload){message.component.receiveMessage(message,payload)}},{key:"onError",value:function(message,status,response){return message.component.messageSendFailed(),store$2.onErrorCallback(status,response)}},{key:"showExpiredMessage",value:function(response,message){store$2.sessionHasExpiredCallback?store$2.sessionHasExpiredCallback(response,message):confirm("This page has expired.\nWould you like to refresh the page?")&&window.location.reload()}},{key:"sendMessage",value:function(message){var _this=this,payload=message.payload(),csrfToken=getCsrfToken(),socketId=this.getSocketId(),appUrl=window.livewire_app_url;if(this.shouldUseLocalePrefix(payload)&&(appUrl="".concat(appUrl,"/").concat(payload.fingerprint.locale)),window.__testing_request_interceptor)return window.__testing_request_interceptor(payload,this);fetch("".concat(appUrl,"/livewire/message/").concat(payload.fingerprint.name),{method:"POST",body:JSON.stringify(payload),credentials:"same-origin",headers:_objectSpread2(_objectSpread2(_objectSpread2({"Content-Type":"application/json",Accept:"text/html, application/xhtml+xml","X-Livewire":!0},this.headers),{},{Referer:window.location.href},csrfToken&&{"X-CSRF-TOKEN":csrfToken}),socketId&&{"X-Socket-ID":socketId})}).then((function(response){if(response.ok)response.text().then((function(response){_this.isOutputFromDump(response)?(_this.onError(message),_this.showHtmlModal(response)):_this.onMessage(message,JSON.parse(response))}));else{if(!1===_this.onError(message,response.status,response))return;if(419===response.status){if(store$2.sessionHasExpired)return;store$2.sessionHasExpired=!0,_this.showExpiredMessage(response,message)}else response.text().then((function(response){_this.showHtmlModal(response)}))}})).catch((function(){_this.onError(message)}))}},{key:"shouldUseLocalePrefix",value:function(payload){var path=payload.fingerprint.path,locale=payload.fingerprint.locale;return path.split("/")[0]==locale}},{key:"isOutputFromDump",value:function(output){return!!output.match(/ + + + ``` + + The `zipCode` validator will be registered automatically. So we don't have to add it manually such as + + ```js + fv.registerValidator('zipCode', FormValidation.validators.zipCode); + ``` + */ + var validators = {}; + var formValidationValidators = function (form, options) { + var instance = formValidation(form, options); + Object.keys(validators).forEach(function (name) { return instance.registerValidator(name, validators[name]); }); + return instance; + }; + + exports.Plugin = Plugin; + exports.algorithms = index$1; + exports.formValidation = formValidationValidators; + exports.utils = index; + exports.validators = validators; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/core/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/core/index.min.js new file mode 100644 index 0000000..c032485 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/core/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/core + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation={})}(this,(function(e){"use strict";var t={luhn:function(e){for(var t=e.length,i=[[0,1,2,3,4,5,6,7,8,9],[0,2,4,6,8,1,3,5,7,9]],r=0,n=0;t--;)n+=i[r][parseInt(e.charAt(t),10)],r=1-r;return n%10==0&&n>0},mod11And10:function(e){for(var t=e.length,i=5,r=0;r=65&&t<=90?t-55:e})).join("").split("").map((function(e){return parseInt(e,10)}))}(e),i=0,r=t.length,n=0;n=0&&this.fns[e].splice(i,1)}},on:function(e,t){(this.fns[e]=this.fns[e]||[]).push(t)}},this.filter={filters:{},add:function(e,t){(this.filters[e]=this.filters[e]||[]).push(t)},clear:function(){this.filters={}},execute:function(e,t,i){if(!this.filters[e]||!this.filters[e].length)return t;for(var r=t,n=this.filters[e],s=n.length,o=0;o=0?o.options.item(l).value:""}if("input"===s){if("radio"===n||"checkbox"===n){var a=r.filter((function(e){return e.checked})).length;return 0===a?"":a+""}return i.value}return""}(this.form,0,t,this.elements[e]);return this.filter.execute("field-value",r,[r,e,t,i])},e.prototype.getElements=function(e){return this.elements[e]},e.prototype.getFields=function(){return this.fields},e.prototype.getFormElement=function(){return this.form},e.prototype.getLocale=function(){return this.locale},e.prototype.getPlugin=function(e){return this.plugins[e]},e.prototype.updateFieldStatus=function(e,t,i){var r=this,n=this.elements[e],s=n[0].getAttribute("type");if(("radio"===s||"checkbox"===s?[n[0]]:n).forEach((function(n){return r.updateElementStatus(e,n,t,i)})),i)"Invalid"===t&&(this.emit("core.field.invalid",e),this.results.set(e,"Invalid"));else switch(t){case"NotValidated":this.emit("core.field.notvalidated",e),this.results.delete(e);break;case"Validating":this.emit("core.field.validating",e),this.results.delete(e);break;case"Valid":this.emit("core.field.valid",e),this.results.set(e,"Valid");break;case"Invalid":this.emit("core.field.invalid",e),this.results.set(e,"Invalid")}return this},e.prototype.updateElementStatus=function(e,t,i,r){var n=this,s=this.elements[e],o=this.fields[e].validators,l=r?[r]:Object.keys(o);switch(i){case"NotValidated":l.forEach((function(i){return n.emit("core.validator.notvalidated",{element:t,elements:s,field:e,validator:i})})),this.emit("core.element.notvalidated",{element:t,elements:s,field:e});break;case"Validating":l.forEach((function(i){return n.emit("core.validator.validating",{element:t,elements:s,field:e,validator:i})})),this.emit("core.element.validating",{element:t,elements:s,field:e});break;case"Valid":l.forEach((function(i){return n.emit("core.validator.validated",{element:t,elements:s,field:e,result:{message:o[i].message,valid:!0},validator:i})})),this.emit("core.element.validated",{element:t,elements:s,field:e,valid:!0});break;case"Invalid":l.forEach((function(i){return n.emit("core.validator.validated",{element:t,elements:s,field:e,result:{message:o[i].message,valid:!1},validator:i})})),this.emit("core.element.validated",{element:t,elements:s,field:e,valid:!1})}return this},e.prototype.resetForm=function(e){var t=this;return Object.keys(this.fields).forEach((function(i){return t.resetField(i,e)})),this.emit("core.form.reset",{formValidation:this,reset:e}),this},e.prototype.resetField=function(e,t){if(t){var i=this.elements[e],r=i[0].getAttribute("type");i.forEach((function(e){"radio"===r||"checkbox"===r?(e.removeAttribute("selected"),e.removeAttribute("checked"),e.checked=!1):(e.setAttribute("value",""),(e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement)&&(e.value=""))}))}return this.updateFieldStatus(e,"NotValidated"),this.emit("core.field.reset",{field:e,reset:t}),this},e.prototype.revalidateField=function(e){return this.fields[e]?(this.updateFieldStatus(e,"NotValidated"),this.validateField(e)):Promise.resolve("Ignored")},e.prototype.disableValidator=function(e,t){if(!this.fields[e])return this;var i=this.elements[e];return this.toggleValidator(!1,e,t),this.emit("core.validator.disabled",{elements:i,field:e,formValidation:this,validator:t}),this},e.prototype.enableValidator=function(e,t){if(!this.fields[e])return this;var i=this.elements[e];return this.toggleValidator(!0,e,t),this.emit("core.validator.enabled",{elements:i,field:e,formValidation:this,validator:t}),this},e.prototype.updateValidatorOption=function(e,t,i,r){return this.fields[e]&&this.fields[e].validators&&this.fields[e].validators[t]&&(this.fields[e].validators[t][i]=r),this},e.prototype.setFieldOptions=function(e,t){return this.fields[e]=t,this},e.prototype.destroy=function(){var e=this;return Object.keys(this.plugins).forEach((function(t){return e.plugins[t].uninstall()})),this.ee.clear(),this.filter.clear(),this.results.clear(),this.plugins={},this},e.prototype.setLocale=function(e,t){return this.locale=e,this.localization=t,this},e.prototype.waterfall=function(e){return e.reduce((function(e,t){return e.then((function(e){return t().then((function(t){return e.push(t),e}))}))}),Promise.resolve([]))},e.prototype.queryElements=function(e){var t=this.fields[e].selector?"#"===this.fields[e].selector.charAt(0)?'[id="'.concat(this.fields[e].selector.substring(1),'"]'):this.fields[e].selector:'[name="'.concat(e.replace(/"/g,'\\"'),'"]');return[].slice.call(this.form.querySelectorAll(t))},e.prototype.normalizeResult=function(e,t,i){var r=this.fields[e].validators[t];return Object.assign({},i,{message:i.message||(r?r.message:"")||(this.localization&&this.localization[t]&&this.localization[t].default?this.localization[t].default:"")||"The field ".concat(e," is not valid")})},e.prototype.toggleValidator=function(e,t,i){var r=this,n=this.fields[t].validators;return i&&n&&n[i]?this.fields[t].validators[i].enabled=e:i||Object.keys(n).forEach((function(i){return r.fields[t].validators[i].enabled=e})),this.updateFieldStatus(t,"NotValidated",i)},e}();var r=function(){function e(e){this.opts=e,this.isEnabled=!0}return e.prototype.setCore=function(e){return this.core=e,this},e.prototype.enable=function(){return this.isEnabled=!0,this.onEnabled(),this},e.prototype.disable=function(){return this.isEnabled=!1,this.onDisabled(),this},e.prototype.isPluginEnabled=function(){return this.isEnabled},e.prototype.onEnabled=function(){},e.prototype.onDisabled=function(){},e.prototype.install=function(){},e.prototype.uninstall=function(){},e}();var n=function(e,t){var i=e.matches||e.webkitMatchesSelector||e.mozMatchesSelector||e.msMatchesSelector;return i?i.call(e,t):[].slice.call(e.parentElement.querySelectorAll(t)).indexOf(e)>=0},s={call:function(e,t){if("function"==typeof e)return e.apply(this,t);if("string"==typeof e){var i=e;"()"===i.substring(i.length-2)&&(i=i.substring(0,i.length-2));for(var r=i.split("."),n=r.pop(),s=window,o=0,l=r;o-1,a="GET"===s.method?"".concat(e).concat(l?"&":"?").concat(o):e;if(s.crossDomain){var d=document.createElement("script"),c="___FormValidationFetch_".concat(Array(12).fill("").map((function(e){return Math.random().toString(36).charAt(2)})).join(""),"___");window[c]=function(e){delete window[c],i(e)},d.src="".concat(a).concat(l?"&":"?","callback=").concat(c),d.async=!0,d.addEventListener("load",(function(){d.parentNode.removeChild(d)})),d.addEventListener("error",(function(){return r})),document.head.appendChild(d)}else{var u=new XMLHttpRequest;u.open(s.method,a),u.setRequestHeader("X-Requested-With","XMLHttpRequest"),"POST"===s.method&&u.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),Object.keys(s.headers).forEach((function(e){return u.setRequestHeader(e,s.headers[e])})),u.addEventListener("load",(function(){i(JSON.parse(this.responseText))})),u.addEventListener("error",(function(){return r})),u.send((n=s.params,Object.keys(n).map((function(e){return"".concat(encodeURIComponent(e),"=").concat(encodeURIComponent(n[e]))})).join("&")))}}))},format:function(e,t){var i=Array.isArray(t)?t:[t],r=e;return i.forEach((function(e){r=r.replace("%s",e)})),r},hasClass:function(e,t){return e.classList?e.classList.contains(t):new RegExp("(^| )".concat(t,"( |$)"),"gi").test(e.className)},isValidDate:function(e,t,i,r){if(isNaN(e)||isNaN(t)||isNaN(i))return!1;if(e<1e3||e>9999||t<=0||t>12)return!1;if(i<=0||i>[31,e%400==0||e%100!=0&&e%4==0?29:28,31,30,31,30,31,31,30,31,30,31][t-1])return!1;if(!0===r){var n=new Date,s=n.getFullYear(),o=n.getMonth(),l=n.getDate();return e + */ + /** + * This plugin allows to use multiple instances of the same validator by defining alias. + * ``` + * formValidation(form, { + * fields: { + * email: { + * validators: { + * required: ..., + * pattern: ..., + * regexp: ... + * } + * } + * }, + * plugins: { + * alias: new Alias({ + * required: 'notEmpty', + * pattern: 'regexp' + * }) + * } + * }) + * ``` + * Then, you can use the `required`, `pattern` as the same as `notEmpty`, `regexp` validators. + */ + var Alias = /** @class */ (function (_super) { + __extends(Alias, _super); + function Alias(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = opts || {}; + _this.validatorNameFilter = _this.getValidatorName.bind(_this); + return _this; + } + Alias.prototype.install = function () { + this.core.registerFilter('validator-name', this.validatorNameFilter); + }; + Alias.prototype.uninstall = function () { + this.core.deregisterFilter('validator-name', this.validatorNameFilter); + }; + Alias.prototype.getValidatorName = function (validatorName, _field) { + return this.isEnabled ? this.opts[validatorName] || validatorName : validatorName; + }; + return Alias; + }(core.Plugin)); + + return Alias; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-alias/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-alias/index.min.js new file mode 100644 index 0000000..ef718df --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-alias/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-alias + * @version 2.4.0 + */ + +!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Alias=o(t.FormValidation))}(this,(function(t){"use strict";var o=function(t,i){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var i in o)Object.prototype.hasOwnProperty.call(o,i)&&(t[i]=o[i])},o(t,i)};return function(t){function i(o){var i=t.call(this,o)||this;return i.opts=o||{},i.validatorNameFilter=i.getValidatorName.bind(i),i}return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function e(){this.constructor=t}o(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)}(i,t),i.prototype.install=function(){this.core.registerFilter("validator-name",this.validatorNameFilter)},i.prototype.uninstall=function(){this.core.deregisterFilter("validator-name",this.validatorNameFilter)},i.prototype.getValidatorName=function(t,o){return this.isEnabled&&this.opts[t]||t},i}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.js new file mode 100644 index 0000000..283e6dc --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.js @@ -0,0 +1,113 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Aria = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * This plugin adds ARIA attributes based on the field validity. + * The list include: + * - `aria-invalid`, `aria-describedby` for field element + * - `aria-hidden`, `role` for associated message element + * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Techniques + */ + var Aria = /** @class */ (function (_super) { + __extends(Aria, _super); + function Aria() { + var _this = _super.call(this, {}) || this; + _this.elementValidatedHandler = _this.onElementValidated.bind(_this); + _this.fieldValidHandler = _this.onFieldValid.bind(_this); + _this.fieldInvalidHandler = _this.onFieldInvalid.bind(_this); + _this.messageDisplayedHandler = _this.onMessageDisplayed.bind(_this); + return _this; + } + Aria.prototype.install = function () { + this.core + .on('core.field.valid', this.fieldValidHandler) + .on('core.field.invalid', this.fieldInvalidHandler) + .on('core.element.validated', this.elementValidatedHandler) + .on('plugins.message.displayed', this.messageDisplayedHandler); + }; + Aria.prototype.uninstall = function () { + this.core + .off('core.field.valid', this.fieldValidHandler) + .off('core.field.invalid', this.fieldInvalidHandler) + .off('core.element.validated', this.elementValidatedHandler) + .off('plugins.message.displayed', this.messageDisplayedHandler); + }; + Aria.prototype.onElementValidated = function (e) { + if (e.valid) { + e.element.setAttribute('aria-invalid', 'false'); + e.element.removeAttribute('aria-describedby'); + } + }; + Aria.prototype.onFieldValid = function (field) { + var elements = this.core.getElements(field); + if (elements) { + elements.forEach(function (ele) { + ele.setAttribute('aria-invalid', 'false'); + ele.removeAttribute('aria-describedby'); + }); + } + }; + Aria.prototype.onFieldInvalid = function (field) { + var elements = this.core.getElements(field); + if (elements) { + elements.forEach(function (ele) { return ele.setAttribute('aria-invalid', 'true'); }); + } + }; + Aria.prototype.onMessageDisplayed = function (e) { + e.messageElement.setAttribute('role', 'alert'); + e.messageElement.setAttribute('aria-hidden', 'false'); + var elements = this.core.getElements(e.field); + var index = elements.indexOf(e.element); + var id = "js-fv-".concat(e.field, "-").concat(index, "-").concat(Date.now(), "-message"); + e.messageElement.setAttribute('id', id); + e.element.setAttribute('aria-describedby', id); + var type = e.element.getAttribute('type'); + if ('radio' === type || 'checkbox' === type) { + elements.forEach(function (ele) { return ele.setAttribute('aria-describedby', id); }); + } + }; + return Aria; + }(core.Plugin)); + + return Aria; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.min.js new file mode 100644 index 0000000..302e986 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-aria/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-aria + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Aria=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},t(e,i)};return function(e){function i(){var t=e.call(this,{})||this;return t.elementValidatedHandler=t.onElementValidated.bind(t),t.fieldValidHandler=t.onFieldValid.bind(t),t.fieldInvalidHandler=t.onFieldInvalid.bind(t),t.messageDisplayedHandler=t.onMessageDisplayed.bind(t),t}return function(e,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function n(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}(i,e),i.prototype.install=function(){this.core.on("core.field.valid",this.fieldValidHandler).on("core.field.invalid",this.fieldInvalidHandler).on("core.element.validated",this.elementValidatedHandler).on("plugins.message.displayed",this.messageDisplayedHandler)},i.prototype.uninstall=function(){this.core.off("core.field.valid",this.fieldValidHandler).off("core.field.invalid",this.fieldInvalidHandler).off("core.element.validated",this.elementValidatedHandler).off("plugins.message.displayed",this.messageDisplayedHandler)},i.prototype.onElementValidated=function(e){e.valid&&(e.element.setAttribute("aria-invalid","false"),e.element.removeAttribute("aria-describedby"))},i.prototype.onFieldValid=function(e){var t=this.core.getElements(e);t&&t.forEach((function(e){e.setAttribute("aria-invalid","false"),e.removeAttribute("aria-describedby")}))},i.prototype.onFieldInvalid=function(e){var t=this.core.getElements(e);t&&t.forEach((function(e){return e.setAttribute("aria-invalid","true")}))},i.prototype.onMessageDisplayed=function(e){e.messageElement.setAttribute("role","alert"),e.messageElement.setAttribute("aria-hidden","false");var t=this.core.getElements(e.field),i=t.indexOf(e.element),n="js-fv-".concat(e.field,"-").concat(i,"-").concat(Date.now(),"-message");e.messageElement.setAttribute("id",n),e.element.setAttribute("aria-describedby",n);var a=e.element.getAttribute("type");"radio"!==a&&"checkbox"!==a||t.forEach((function(e){return e.setAttribute("aria-describedby",n)}))},i}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.js new file mode 100644 index 0000000..c79cd99 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.js @@ -0,0 +1,96 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-field-status')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-field-status'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.AutoFocus = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFieldStatus) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var AutoFocus = /** @class */ (function (_super) { + __extends(AutoFocus, _super); + function AutoFocus(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { + onPrefocus: function () { }, + }, opts); + _this.invalidFormHandler = _this.onFormInvalid.bind(_this); + return _this; + } + AutoFocus.prototype.install = function () { + this.core + .on('core.form.invalid', this.invalidFormHandler) + .registerPlugin(AutoFocus.FIELD_STATUS_PLUGIN, new pluginFieldStatus.FieldStatus()); + }; + AutoFocus.prototype.uninstall = function () { + this.core.off('core.form.invalid', this.invalidFormHandler).deregisterPlugin(AutoFocus.FIELD_STATUS_PLUGIN); + }; + AutoFocus.prototype.onEnabled = function () { + this.core.enablePlugin(AutoFocus.FIELD_STATUS_PLUGIN); + }; + AutoFocus.prototype.onDisabled = function () { + this.core.disablePlugin(AutoFocus.FIELD_STATUS_PLUGIN); + }; + AutoFocus.prototype.onFormInvalid = function () { + if (!this.isEnabled) { + return; + } + var plugin = this.core.getPlugin(AutoFocus.FIELD_STATUS_PLUGIN); + var statuses = plugin.getStatuses(); + var invalidFields = Object.keys(this.core.getFields()).filter(function (key) { return statuses.get(key) === 'Invalid'; }); + if (invalidFields.length > 0) { + var firstInvalidField = invalidFields[0]; + var elements = this.core.getElements(firstInvalidField); + if (elements.length > 0) { + var firstElement = elements[0]; + var e = { + firstElement: firstElement, + field: firstInvalidField, + }; + this.core.emit('plugins.autofocus.prefocus', e); + this.opts.onPrefocus(e); + // Focus on the first invalid element + firstElement.focus(); + } + } + }; + AutoFocus.FIELD_STATUS_PLUGIN = '___autoFocusFieldStatus'; + return AutoFocus; + }(core.Plugin)); + + return AutoFocus; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.min.js new file mode 100644 index 0000000..9fbd8f2 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-auto-focus/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-auto-focus + * @version 2.4.0 + */ + +!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core"),require("@form-validation/plugin-field-status")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-field-status"],o):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.AutoFocus=o(t.FormValidation,t.FormValidation.plugins))}(this,(function(t,o){"use strict";var i=function(t,o){return i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var i in o)Object.prototype.hasOwnProperty.call(o,i)&&(t[i]=o[i])},i(t,o)};return function(t){function n(o){var i=t.call(this,o)||this;return i.opts=Object.assign({},{onPrefocus:function(){}},o),i.invalidFormHandler=i.onFormInvalid.bind(i),i}return function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function n(){this.constructor=t}i(t,o),t.prototype=null===o?Object.create(o):(n.prototype=o.prototype,new n)}(n,t),n.prototype.install=function(){this.core.on("core.form.invalid",this.invalidFormHandler).registerPlugin(n.FIELD_STATUS_PLUGIN,new o.FieldStatus)},n.prototype.uninstall=function(){this.core.off("core.form.invalid",this.invalidFormHandler).deregisterPlugin(n.FIELD_STATUS_PLUGIN)},n.prototype.onEnabled=function(){this.core.enablePlugin(n.FIELD_STATUS_PLUGIN)},n.prototype.onDisabled=function(){this.core.disablePlugin(n.FIELD_STATUS_PLUGIN)},n.prototype.onFormInvalid=function(){if(this.isEnabled){var t=this.core.getPlugin(n.FIELD_STATUS_PLUGIN).getStatuses(),o=Object.keys(this.core.getFields()).filter((function(o){return"Invalid"===t.get(o)}));if(o.length>0){var i=o[0],e=this.core.getElements(i);if(e.length>0){var r=e[0],l={firstElement:r,field:i};this.core.emit("plugins.autofocus.prefocus",l),this.opts.onPrefocus(l),r.focus()}}}},n.FIELD_STATUS_PLUGIN="___autoFocusFieldStatus",n}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.js new file mode 100644 index 0000000..92f1fa4 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.js @@ -0,0 +1,88 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Bootstrap = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet, hasClass = core.utils.hasClass; + var Bootstrap = /** @class */ (function (_super) { + __extends(Bootstrap, _super); + // See https://getbootstrap.com/docs/4.1/components/forms/#custom-styles + function Bootstrap(opts) { + return _super.call(this, Object.assign({}, { + eleInvalidClass: 'is-invalid', + eleValidClass: 'is-valid', + formClass: 'fv-plugins-bootstrap', + messageClass: 'fv-help-block', + rowInvalidClass: 'has-danger', + rowPattern: /^(.*)(col|offset)(-(sm|md|lg|xl))*-[0-9]+(.*)$/, + rowSelector: '.form-group', + rowValidClass: 'has-success', + }, opts)) || this; + } + Bootstrap.prototype.onIconPlaced = function (e) { + // Adjust icon place if the field belongs to a `input-group` + var parent = e.element.parentElement; + if (hasClass(parent, 'input-group')) { + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var grandParent = parent.parentElement; + // Place it after the container of checkbox/radio + if (hasClass(parent, 'form-check')) { + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + else if (hasClass(parent.parentElement, 'form-check')) { + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + grandParent.parentElement.insertBefore(e.iconElement, grandParent.nextSibling); + } + } + }; + return Bootstrap; + }(pluginFramework.Framework)); + + return Bootstrap; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.min.js new file mode 100644 index 0000000..90d2b77 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-bootstrap + * @version 2.4.0 + */ + +!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],n):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Bootstrap=n(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,n){"use strict";var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,n){e.__proto__=n}||function(e,n){for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=n[t])},t(e,n)};var o=e.utils.classSet,i=e.utils.hasClass;return function(e){function n(n){return e.call(this,Object.assign({},{eleInvalidClass:"is-invalid",eleValidClass:"is-valid",formClass:"fv-plugins-bootstrap",messageClass:"fv-help-block",rowInvalidClass:"has-danger",rowPattern:/^(.*)(col|offset)(-(sm|md|lg|xl))*-[0-9]+(.*)$/,rowSelector:".form-group",rowValidClass:"has-success"},n))||this}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function o(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}(n,e),n.prototype.onIconPlaced=function(e){var n=e.element.parentElement;i(n,"input-group")&&n.parentElement.insertBefore(e.iconElement,n.nextSibling);var t=e.element.getAttribute("type");if("checkbox"===t||"radio"===t){var r=n.parentElement;i(n,"form-check")?(o(e.iconElement,{"fv-plugins-icon-check":!0}),n.parentElement.insertBefore(e.iconElement,n.nextSibling)):i(n.parentElement,"form-check")&&(o(e.iconElement,{"fv-plugins-icon-check":!0}),r.parentElement.insertBefore(e.iconElement,r.nextSibling))}},n}(n.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.js new file mode 100644 index 0000000..f0c2afe --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.js @@ -0,0 +1,83 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Bootstrap3 = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet, hasClass = core.utils.hasClass; + var Bootstrap3 = /** @class */ (function (_super) { + __extends(Bootstrap3, _super); + function Bootstrap3(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-bootstrap3', + messageClass: 'help-block', + rowClasses: 'has-feedback', + rowInvalidClass: 'has-error', + rowPattern: /^(.*)(col|offset)-(xs|sm|md|lg)-[0-9]+(.*)$/, + rowSelector: '.form-group', + rowValidClass: 'has-success', + }, opts)) || this; + } + Bootstrap3.prototype.onIconPlaced = function (e) { + classSet(e.iconElement, { + 'form-control-feedback': true, + }); + // Adjust icon place if the field belongs to a `input-group` + var parent = e.element.parentElement; + if (hasClass(parent, 'input-group')) { + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var grandParent = parent.parentElement; + // Place it after the container of checkbox/radio + if (hasClass(parent, type)) { + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + else if (hasClass(parent.parentElement, type)) { + grandParent.parentElement.insertBefore(e.iconElement, grandParent.nextSibling); + } + } + }; + return Bootstrap3; + }(pluginFramework.Framework)); + + return Bootstrap3; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.min.js new file mode 100644 index 0000000..904b33d --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap3/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-bootstrap3 + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Bootstrap3=t(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,t){"use strict";var o=function(e,t){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])},o(e,t)};var n=e.utils.classSet,r=e.utils.hasClass;return function(e){function t(t){return e.call(this,Object.assign({},{formClass:"fv-plugins-bootstrap3",messageClass:"help-block",rowClasses:"has-feedback",rowInvalidClass:"has-error",rowPattern:/^(.*)(col|offset)-(xs|sm|md|lg)-[0-9]+(.*)$/,rowSelector:".form-group",rowValidClass:"has-success"},t))||this}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,e),t.prototype.onIconPlaced=function(e){n(e.iconElement,{"form-control-feedback":!0});var t=e.element.parentElement;r(t,"input-group")&&t.parentElement.insertBefore(e.iconElement,t.nextSibling);var o=e.element.getAttribute("type");if("checkbox"===o||"radio"===o){var i=t.parentElement;r(t,o)?t.parentElement.insertBefore(e.iconElement,t.nextSibling):r(t.parentElement,o)&&i.parentElement.insertBefore(e.iconElement,i.nextSibling)}},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.js new file mode 100644 index 0000000..f7d8844 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.js @@ -0,0 +1,156 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Bootstrap5 = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet, hasClass = core.utils.hasClass; + var Bootstrap5 = /** @class */ (function (_super) { + __extends(Bootstrap5, _super); + function Bootstrap5(opts) { + var _this = _super.call(this, Object.assign({}, { + eleInvalidClass: 'is-invalid', + eleValidClass: 'is-valid', + formClass: 'fv-plugins-bootstrap5', + rowInvalidClass: 'fv-plugins-bootstrap5-row-invalid', + rowPattern: /^(.*)(col|offset)(-(sm|md|lg|xl))*-[0-9]+(.*)$/, + rowSelector: '.row', + rowValidClass: 'fv-plugins-bootstrap5-row-valid', + }, opts)) || this; + _this.eleValidatedHandler = _this.handleElementValidated.bind(_this); + return _this; + } + Bootstrap5.prototype.install = function () { + _super.prototype.install.call(this); + this.core.on('core.element.validated', this.eleValidatedHandler); + }; + Bootstrap5.prototype.uninstall = function () { + _super.prototype.uninstall.call(this); + this.core.off('core.element.validated', this.eleValidatedHandler); + }; + Bootstrap5.prototype.handleElementValidated = function (e) { + var type = e.element.getAttribute('type'); + // If we use more than 1 inline checkbox/radio, we need to add `is-invalid` for the `form-check` container + // so the error messages are displayed properly. + // The markup looks like as following: + //
+ // + // + //
+ // + // + //
...
+ if (('checkbox' === type || 'radio' === type) && + e.elements.length > 1 && + hasClass(e.element, 'form-check-input')) { + var inputParent = e.element.parentElement; + if (hasClass(inputParent, 'form-check') && hasClass(inputParent, 'form-check-inline')) { + classSet(inputParent, { + 'is-invalid': !e.valid, + 'is-valid': e.valid, + }); + } + } + }; + Bootstrap5.prototype.onIconPlaced = function (e) { + // Disable the default icon of Bootstrap 5 + classSet(e.element, { + 'fv-plugins-icon-input': true, + }); + // Adjust icon place if the field belongs to a `input-group` + var parent = e.element.parentElement; + if (hasClass(parent, 'input-group')) { + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + if (e.element.nextElementSibling && hasClass(e.element.nextElementSibling, 'input-group-text')) { + classSet(e.iconElement, { + 'fv-plugins-icon-input-group': true, + }); + } + } + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var grandParent = parent.parentElement; + // Place it after the container of checkbox/radio + if (hasClass(parent, 'form-check')) { + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + else if (hasClass(parent.parentElement, 'form-check')) { + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + grandParent.parentElement.insertBefore(e.iconElement, grandParent.nextSibling); + } + } + }; + Bootstrap5.prototype.onMessagePlaced = function (e) { + e.messageElement.classList.add('invalid-feedback'); + // Check if the input is placed inside an `input-group` element + var inputParent = e.element.parentElement; + if (hasClass(inputParent, 'input-group')) { + // The markup looks like + //
+ // ... + // + // + //
+ inputParent.appendChild(e.messageElement); + // Keep the border radius of the right corners + classSet(inputParent, { + 'has-validation': true, + }); + return; + } + var type = e.element.getAttribute('type'); + if (('checkbox' === type || 'radio' === type) && + hasClass(e.element, 'form-check-input') && + !hasClass(inputParent, 'form-check') && + !hasClass(inputParent, 'form-check-inline')) { + // Place the message inside the `form-check` container of the last checkbox/radio + e.elements[e.elements.length - 1].parentElement.appendChild(e.messageElement); + } + }; + return Bootstrap5; + }(pluginFramework.Framework)); + + return Bootstrap5; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.min.js new file mode 100644 index 0000000..1289050 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-bootstrap5 + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Bootstrap5=t(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,t){"use strict";var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},n(e,t)};var i=e.utils.classSet,o=e.utils.hasClass;return function(e){function t(t){var n=e.call(this,Object.assign({},{eleInvalidClass:"is-invalid",eleValidClass:"is-valid",formClass:"fv-plugins-bootstrap5",rowInvalidClass:"fv-plugins-bootstrap5-row-invalid",rowPattern:/^(.*)(col|offset)(-(sm|md|lg|xl))*-[0-9]+(.*)$/,rowSelector:".row",rowValidClass:"fv-plugins-bootstrap5-row-valid"},t))||this;return n.eleValidatedHandler=n.handleElementValidated.bind(n),n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}(t,e),t.prototype.install=function(){e.prototype.install.call(this),this.core.on("core.element.validated",this.eleValidatedHandler)},t.prototype.uninstall=function(){e.prototype.uninstall.call(this),this.core.off("core.element.validated",this.eleValidatedHandler)},t.prototype.handleElementValidated=function(e){var t=e.element.getAttribute("type");if(("checkbox"===t||"radio"===t)&&e.elements.length>1&&o(e.element,"form-check-input")){var n=e.element.parentElement;o(n,"form-check")&&o(n,"form-check-inline")&&i(n,{"is-invalid":!e.valid,"is-valid":e.valid})}},t.prototype.onIconPlaced=function(e){i(e.element,{"fv-plugins-icon-input":!0});var t=e.element.parentElement;o(t,"input-group")&&(t.parentElement.insertBefore(e.iconElement,t.nextSibling),e.element.nextElementSibling&&o(e.element.nextElementSibling,"input-group-text")&&i(e.iconElement,{"fv-plugins-icon-input-group":!0}));var n=e.element.getAttribute("type");if("checkbox"===n||"radio"===n){var l=t.parentElement;o(t,"form-check")?(i(e.iconElement,{"fv-plugins-icon-check":!0}),t.parentElement.insertBefore(e.iconElement,t.nextSibling)):o(t.parentElement,"form-check")&&(i(e.iconElement,{"fv-plugins-icon-check":!0}),l.parentElement.insertBefore(e.iconElement,l.nextSibling))}},t.prototype.onMessagePlaced=function(e){e.messageElement.classList.add("invalid-feedback");var t=e.element.parentElement;if(o(t,"input-group"))return t.appendChild(e.messageElement),void i(t,{"has-validation":!0});var n=e.element.getAttribute("type");"checkbox"!==n&&"radio"!==n||!o(e.element,"form-check-input")||o(t,"form-check")||o(t,"form-check-inline")||e.elements[e.elements.length-1].parentElement.appendChild(e.messageElement)},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.js new file mode 100644 index 0000000..27305e4 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.js @@ -0,0 +1,88 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Bulma = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var Bulma = /** @class */ (function (_super) { + __extends(Bulma, _super); + function Bulma(opts) { + // See http://bulma.io/documentation/elements/form/ + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-bulma', + messageClass: 'help is-danger', + rowInvalidClass: 'fv-has-error', + rowPattern: /^.*field.*$/, + rowSelector: '.field', + rowValidClass: 'fv-has-success', + }, opts)) || this; + } + Bulma.prototype.onIconPlaced = function (e) { + classSet(e.iconElement, { + 'fv-plugins-icon': false, + }); + // Wrap the icon inside a + var span = document.createElement('span'); + span.setAttribute('class', 'icon is-small is-right'); + e.iconElement.parentNode.insertBefore(span, e.iconElement); + span.appendChild(e.iconElement); + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + classSet(parent.parentElement, { + 'has-icons-right': true, + }); + classSet(span, { + 'fv-plugins-icon-check': true, + }); + parent.parentElement.insertBefore(span, parent.nextSibling); + } + else { + classSet(parent, { + 'has-icons-right': true, + }); + } + }; + return Bulma; + }(pluginFramework.Framework)); + + return Bulma; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.min.js new file mode 100644 index 0000000..6b65500 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bulma/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-bulma + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Bulma=t(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,t){"use strict";var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},n(e,t)};var o=e.utils.classSet;return function(e){function t(t){return e.call(this,Object.assign({},{formClass:"fv-plugins-bulma",messageClass:"help is-danger",rowInvalidClass:"fv-has-error",rowPattern:/^.*field.*$/,rowSelector:".field",rowValidClass:"fv-has-success"},t))||this}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function o(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}(t,e),t.prototype.onIconPlaced=function(e){o(e.iconElement,{"fv-plugins-icon":!1});var t=document.createElement("span");t.setAttribute("class","icon is-small is-right"),e.iconElement.parentNode.insertBefore(t,e.iconElement),t.appendChild(e.iconElement);var n=e.element.getAttribute("type"),i=e.element.parentElement;"checkbox"===n||"radio"===n?(o(i.parentElement,{"has-icons-right":!0}),o(t,{"fv-plugins-icon-check":!0}),i.parentElement.insertBefore(t,i.nextSibling)):o(i,{"has-icons-right":!0})},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.js new file mode 100644 index 0000000..f2271c8 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.js @@ -0,0 +1,290 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Declarative = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * This plugin provides the ability of declaring validator options via HTML attributes. + * All attributes are declared in lowercase + * ``` + * + * ``` + */ + var Declarative = /** @class */ (function (_super) { + __extends(Declarative, _super); + function Declarative(opts) { + var _this = _super.call(this, opts) || this; + _this.addedFields = new Map(); + _this.opts = Object.assign({}, { + html5Input: false, + pluginPrefix: 'data-fvp-', + prefix: 'data-fv-', + }, opts); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + _this.fieldRemovedHandler = _this.onFieldRemoved.bind(_this); + return _this; + } + Declarative.prototype.install = function () { + var _this = this; + // Parse the plugin options + this.parsePlugins(); + var opts = this.parseOptions(); + Object.keys(opts).forEach(function (field) { + if (!_this.addedFields.has(field)) { + _this.addedFields.set(field, true); + } + _this.core.addField(field, opts[field]); + }); + this.core.on('core.field.added', this.fieldAddedHandler).on('core.field.removed', this.fieldRemovedHandler); + }; + Declarative.prototype.uninstall = function () { + this.addedFields.clear(); + this.core.off('core.field.added', this.fieldAddedHandler).off('core.field.removed', this.fieldRemovedHandler); + }; + Declarative.prototype.onFieldAdded = function (e) { + var _this = this; + var elements = e.elements; + // Don't add the element which is already available in the field lists + // Otherwise, it can cause an infinite loop + if (!elements || elements.length === 0 || this.addedFields.has(e.field)) { + return; + } + this.addedFields.set(e.field, true); + elements.forEach(function (ele) { + var declarativeOptions = _this.parseElement(ele); + if (!_this.isEmptyOption(declarativeOptions)) { + // Update validator options + var mergeOptions = { + selector: e.options.selector, + validators: Object.assign({}, e.options.validators || {}, declarativeOptions.validators), + }; + _this.core.setFieldOptions(e.field, mergeOptions); + } + }); + }; + Declarative.prototype.onFieldRemoved = function (e) { + if (e.field && this.addedFields.has(e.field)) { + this.addedFields.delete(e.field); + } + }; + Declarative.prototype.parseOptions = function () { + var _this = this; + // Find all fields which have either `name` or `data-fv-field` attribute + var prefix = this.opts.prefix; + var opts = {}; + var fields = this.core.getFields(); + var form = this.core.getFormElement(); + var elements = [].slice.call(form.querySelectorAll("[name], [".concat(prefix, "field]"))); + elements.forEach(function (ele) { + var validators = _this.parseElement(ele); + // Do not try to merge the options if it's empty + // For instance, there are multiple elements having the same name, + // we only set the HTML attribute to one of them + if (!_this.isEmptyOption(validators)) { + var field = ele.getAttribute('name') || ele.getAttribute("".concat(prefix, "field")); + opts[field] = Object.assign({}, opts[field], validators); + } + }); + Object.keys(opts).forEach(function (field) { + Object.keys(opts[field].validators).forEach(function (v) { + // Set the `enabled` key to `false` if it isn't set + // (the data-fv-{validator} attribute is missing, for example) + opts[field].validators[v].enabled = opts[field].validators[v].enabled || false; + // Mix the options in declarative and programmatic modes + if (fields[field] && fields[field].validators && fields[field].validators[v]) { + Object.assign(opts[field].validators[v], fields[field].validators[v]); + } + }); + }); + return Object.assign({}, fields, opts); + }; + Declarative.prototype.createPluginInstance = function (clazz, opts) { + var arr = clazz.split('.'); + // TODO: Find a safer way to create a plugin instance from the class + // Currently, I have to use `any` here instead of a construtable interface + var fn = window || this; // eslint-disable-line @typescript-eslint/no-explicit-any + for (var i = 0, len = arr.length; i < len; i++) { + fn = fn[arr[i]]; + } + if (typeof fn !== 'function') { + throw new Error("the plugin ".concat(clazz, " doesn't exist")); + } + return new fn(opts); + }; + Declarative.prototype.parsePlugins = function () { + var _a; + var _this = this; + var form = this.core.getFormElement(); + var reg = new RegExp("^".concat(this.opts.pluginPrefix, "([a-z0-9-]+)(___)*([a-z0-9-]+)*$")); + var numAttributes = form.attributes.length; + var plugins = {}; + for (var i = 0; i < numAttributes; i++) { + var name_1 = form.attributes[i].name; + var value = form.attributes[i].value; + var items = reg.exec(name_1); + if (items && items.length === 4) { + var pluginName = this.toCamelCase(items[1]); + plugins[pluginName] = Object.assign({}, items[3] ? (_a = {}, _a[this.toCamelCase(items[3])] = value, _a) : { enabled: '' === value || 'true' === value }, plugins[pluginName]); + } + } + Object.keys(plugins).forEach(function (pluginName) { + var opts = plugins[pluginName]; + var enabled = opts['enabled']; + var clazz = opts['class']; + if (enabled && clazz) { + delete opts['enabled']; + delete opts['clazz']; + var p = _this.createPluginInstance(clazz, opts); + _this.core.registerPlugin(pluginName, p); + } + }); + }; + Declarative.prototype.isEmptyOption = function (opts) { + var validators = opts.validators; + return Object.keys(validators).length === 0 && validators.constructor === Object; + }; + Declarative.prototype.parseElement = function (ele) { + var reg = new RegExp("^".concat(this.opts.prefix, "([a-z0-9-]+)(___)*([a-z0-9-]+)*$")); + var numAttributes = ele.attributes.length; + var opts = {}; + var type = ele.getAttribute('type'); + for (var i = 0; i < numAttributes; i++) { + var name_2 = ele.attributes[i].name; + var value = ele.attributes[i].value; + if (this.opts.html5Input) { + switch (true) { + case 'minlength' === name_2: + opts['stringLength'] = Object.assign({}, { + enabled: true, + min: parseInt(value, 10), + }, opts['stringLength']); + break; + case 'maxlength' === name_2: + opts['stringLength'] = Object.assign({}, { + enabled: true, + max: parseInt(value, 10), + }, opts['stringLength']); + break; + case 'pattern' === name_2: + opts['regexp'] = Object.assign({}, { + enabled: true, + regexp: value, + }, opts['regexp']); + break; + case 'required' === name_2: + opts['notEmpty'] = Object.assign({}, { + enabled: true, + }, opts['notEmpty']); + break; + case 'type' === name_2 && 'color' === value: + // Only accept 6 hex character values due to the HTML 5 spec + // See http://www.w3.org/TR/html-markup/input.color.html#input.color.attrs.value + opts['color'] = Object.assign({}, { + enabled: true, + type: 'hex', + }, opts['color']); + break; + case 'type' === name_2 && 'email' === value: + opts['emailAddress'] = Object.assign({}, { + enabled: true, + }, opts['emailAddress']); + break; + case 'type' === name_2 && 'url' === value: + opts['uri'] = Object.assign({}, { + enabled: true, + }, opts['uri']); + break; + case 'type' === name_2 && 'range' === value: + opts['between'] = Object.assign({}, { + enabled: true, + max: parseFloat(ele.getAttribute('max')), + min: parseFloat(ele.getAttribute('min')), + }, opts['between']); + break; + case 'min' === name_2 && type !== 'date' && type !== 'range': + opts['greaterThan'] = Object.assign({}, { + enabled: true, + min: parseFloat(value), + }, opts['greaterThan']); + break; + case 'max' === name_2 && type !== 'date' && type !== 'range': + opts['lessThan'] = Object.assign({}, { + enabled: true, + max: parseFloat(value), + }, opts['lessThan']); + break; + } + } + var items = reg.exec(name_2); + if (items && items.length === 4) { + var v = this.toCamelCase(items[1]); + if (!opts[v]) { + opts[v] = {}; + } + if (items[3]) { + opts[v][this.toCamelCase(items[3])] = this.normalizeValue(value); + } + else if (opts[v]['enabled'] !== true || opts[v]['enabled'] !== false) { + opts[v]['enabled'] = '' === value || 'true' === value; + } + } + } + return { validators: opts }; + }; + // Many validators accept `boolean` options, for example + // `data-fv-between___inclusive="false"` should be identical to `inclusive: false`, not `inclusive: 'false'` + Declarative.prototype.normalizeValue = function (value) { + return value === 'true' || value === '' ? true : value === 'false' ? false : value; + }; + Declarative.prototype.toUpperCase = function (input) { + return input.charAt(1).toUpperCase(); + }; + Declarative.prototype.toCamelCase = function (input) { + return input.replace(/-./g, this.toUpperCase); + }; + return Declarative; + }(core.Plugin)); + + return Declarative; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.min.js new file mode 100644 index 0000000..17ef499 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-declarative/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-declarative + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Declarative=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,a){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a])},t(e,a)};return function(e){function a(t){var a=e.call(this,t)||this;return a.addedFields=new Map,a.opts=Object.assign({},{html5Input:!1,pluginPrefix:"data-fvp-",prefix:"data-fv-"},t),a.fieldAddedHandler=a.onFieldAdded.bind(a),a.fieldRemovedHandler=a.onFieldRemoved.bind(a),a}return function(e,a){if("function"!=typeof a&&null!==a)throw new TypeError("Class extends value "+String(a)+" is not a constructor or null");function n(){this.constructor=e}t(e,a),e.prototype=null===a?Object.create(a):(n.prototype=a.prototype,new n)}(a,e),a.prototype.install=function(){var e=this;this.parsePlugins();var t=this.parseOptions();Object.keys(t).forEach((function(a){e.addedFields.has(a)||e.addedFields.set(a,!0),e.core.addField(a,t[a])})),this.core.on("core.field.added",this.fieldAddedHandler).on("core.field.removed",this.fieldRemovedHandler)},a.prototype.uninstall=function(){this.addedFields.clear(),this.core.off("core.field.added",this.fieldAddedHandler).off("core.field.removed",this.fieldRemovedHandler)},a.prototype.onFieldAdded=function(e){var t=this,a=e.elements;a&&0!==a.length&&!this.addedFields.has(e.field)&&(this.addedFields.set(e.field,!0),a.forEach((function(a){var n=t.parseElement(a);if(!t.isEmptyOption(n)){var i={selector:e.options.selector,validators:Object.assign({},e.options.validators||{},n.validators)};t.core.setFieldOptions(e.field,i)}})))},a.prototype.onFieldRemoved=function(e){e.field&&this.addedFields.has(e.field)&&this.addedFields.delete(e.field)},a.prototype.parseOptions=function(){var e=this,t=this.opts.prefix,a={},n=this.core.getFields(),i=this.core.getFormElement();return[].slice.call(i.querySelectorAll("[name], [".concat(t,"field]"))).forEach((function(n){var i=e.parseElement(n);if(!e.isEmptyOption(i)){var r=n.getAttribute("name")||n.getAttribute("".concat(t,"field"));a[r]=Object.assign({},a[r],i)}})),Object.keys(a).forEach((function(e){Object.keys(a[e].validators).forEach((function(t){a[e].validators[t].enabled=a[e].validators[t].enabled||!1,n[e]&&n[e].validators&&n[e].validators[t]&&Object.assign(a[e].validators[t],n[e].validators[t])}))})),Object.assign({},n,a)},a.prototype.createPluginInstance=function(e,t){for(var a=e.split("."),n=window||this,i=0,r=a.length;i + */ + /** + * This plugin will submit the form if all fields are valid after validating + */ + var DefaultSubmit = /** @class */ (function (_super) { + __extends(DefaultSubmit, _super); + function DefaultSubmit() { + var _this = _super.call(this, {}) || this; + _this.onValidHandler = _this.onFormValid.bind(_this); + return _this; + } + DefaultSubmit.prototype.install = function () { + var form = this.core.getFormElement(); + if (form.querySelectorAll('[type="submit"][name="submit"]').length) { + throw new Error('Do not use `submit` for the name attribute of submit button'); + } + this.core.on('core.form.valid', this.onValidHandler); + }; + DefaultSubmit.prototype.uninstall = function () { + this.core.off('core.form.valid', this.onValidHandler); + }; + DefaultSubmit.prototype.onFormValid = function () { + var form = this.core.getFormElement(); + if (this.isEnabled && form instanceof HTMLFormElement) { + form.submit(); + } + }; + return DefaultSubmit; + }(core.Plugin)); + + return DefaultSubmit; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-default-submit/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-default-submit/index.min.js new file mode 100644 index 0000000..7b18f62 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-default-submit/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-default-submit + * @version 2.4.0 + */ + +!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.DefaultSubmit=o(t.FormValidation))}(this,(function(t){"use strict";var o=function(t,n){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(t[n]=o[n])},o(t,n)};return function(t){function n(){var o=t.call(this,{})||this;return o.onValidHandler=o.onFormValid.bind(o),o}return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function e(){this.constructor=t}o(t,n),t.prototype=null===n?Object.create(n):(e.prototype=n.prototype,new e)}(n,t),n.prototype.install=function(){if(this.core.getFormElement().querySelectorAll('[type="submit"][name="submit"]').length)throw new Error("Do not use `submit` for the name attribute of submit button");this.core.on("core.form.valid",this.onValidHandler)},n.prototype.uninstall=function(){this.core.off("core.form.valid",this.onValidHandler)},n.prototype.onFormValid=function(){var t=this.core.getFormElement();this.isEnabled&&t instanceof HTMLFormElement&&t.submit()},n}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.js new file mode 100644 index 0000000..4ac0c37 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.js @@ -0,0 +1,75 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Dependency = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var Dependency = /** @class */ (function (_super) { + __extends(Dependency, _super); + function Dependency(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = opts || {}; + _this.triggerExecutedHandler = _this.onTriggerExecuted.bind(_this); + return _this; + } + Dependency.prototype.install = function () { + this.core.on('plugins.trigger.executed', this.triggerExecutedHandler); + }; + Dependency.prototype.uninstall = function () { + this.core.off('plugins.trigger.executed', this.triggerExecutedHandler); + }; + Dependency.prototype.onTriggerExecuted = function (e) { + if (this.isEnabled && this.opts[e.field]) { + var dependencies = this.opts[e.field].split(' '); + for (var _i = 0, dependencies_1 = dependencies; _i < dependencies_1.length; _i++) { + var d = dependencies_1[_i]; + var dependentField = d.trim(); + if (this.opts[dependentField]) { + // Revalidate the dependent field + this.core.revalidateField(dependentField); + } + } + } + }; + return Dependency; + }(core.Plugin)); + + return Dependency; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.min.js new file mode 100644 index 0000000..5e0ca0e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-dependency/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-dependency + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Dependency=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,o){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])},e(t,o)};return function(t){function o(e){var o=t.call(this,e)||this;return o.opts=e||{},o.triggerExecutedHandler=o.onTriggerExecuted.bind(o),o}return function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function i(){this.constructor=t}e(t,o),t.prototype=null===o?Object.create(o):(i.prototype=o.prototype,new i)}(o,t),o.prototype.install=function(){this.core.on("plugins.trigger.executed",this.triggerExecutedHandler)},o.prototype.uninstall=function(){this.core.off("plugins.trigger.executed",this.triggerExecutedHandler)},o.prototype.onTriggerExecuted=function(t){if(this.isEnabled&&this.opts[t.field])for(var e=0,o=this.opts[t.field].split(" ");e + */ + var removeUndefined = core.utils.removeUndefined; + var Excluded = /** @class */ (function (_super) { + __extends(Excluded, _super); + function Excluded(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { excluded: Excluded.defaultIgnore }, removeUndefined(opts)); + _this.ignoreValidationFilter = _this.ignoreValidation.bind(_this); + return _this; + } + Excluded.defaultIgnore = function (_field, element, _elements) { + var isVisible = !!(element.offsetWidth || element.offsetHeight || element.getClientRects().length); + var disabled = element.getAttribute('disabled'); + return disabled === '' || disabled === 'disabled' || element.getAttribute('type') === 'hidden' || !isVisible; + }; + Excluded.prototype.install = function () { + this.core.registerFilter('element-ignored', this.ignoreValidationFilter); + }; + Excluded.prototype.uninstall = function () { + this.core.deregisterFilter('element-ignored', this.ignoreValidationFilter); + }; + Excluded.prototype.ignoreValidation = function (field, element, elements) { + if (!this.isEnabled) { + return false; + } + return this.opts.excluded.apply(this, [field, element, elements]); + }; + return Excluded; + }(core.Plugin)); + + return Excluded; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-excluded/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-excluded/index.min.js new file mode 100644 index 0000000..2087b71 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-excluded/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-excluded + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Excluded=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},e(t,i)};var i=t.utils.removeUndefined;return function(t){function o(e){var n=t.call(this,e)||this;return n.opts=Object.assign({},{excluded:o.defaultIgnore},i(e)),n.ignoreValidationFilter=n.ignoreValidation.bind(n),n}return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function o(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}(o,t),o.defaultIgnore=function(t,e,i){var o=!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length),n=e.getAttribute("disabled");return""===n||"disabled"===n||"hidden"===e.getAttribute("type")||!o},o.prototype.install=function(){this.core.registerFilter("element-ignored",this.ignoreValidationFilter)},o.prototype.uninstall=function(){this.core.deregisterFilter("element-ignored",this.ignoreValidationFilter)},o.prototype.ignoreValidation=function(t,e,i){return!!this.isEnabled&&this.opts.excluded.apply(this,[t,e,i])},o}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.js new file mode 100644 index 0000000..4f711a2 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.js @@ -0,0 +1,126 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.FieldStatus = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var FieldStatus = /** @class */ (function (_super) { + __extends(FieldStatus, _super); + function FieldStatus(opts) { + var _this = _super.call(this, opts) || this; + _this.statuses = new Map(); + _this.opts = Object.assign({}, { + onStatusChanged: function () { }, + }, opts); + _this.elementValidatingHandler = _this.onElementValidating.bind(_this); + _this.elementValidatedHandler = _this.onElementValidated.bind(_this); + _this.elementNotValidatedHandler = _this.onElementNotValidated.bind(_this); + _this.elementIgnoredHandler = _this.onElementIgnored.bind(_this); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + _this.fieldRemovedHandler = _this.onFieldRemoved.bind(_this); + return _this; + } + FieldStatus.prototype.install = function () { + this.core + .on('core.element.validating', this.elementValidatingHandler) + .on('core.element.validated', this.elementValidatedHandler) + .on('core.element.notvalidated', this.elementNotValidatedHandler) + .on('core.element.ignored', this.elementIgnoredHandler) + .on('core.field.added', this.fieldAddedHandler) + .on('core.field.removed', this.fieldRemovedHandler); + }; + FieldStatus.prototype.uninstall = function () { + this.statuses.clear(); + this.core + .off('core.element.validating', this.elementValidatingHandler) + .off('core.element.validated', this.elementValidatedHandler) + .off('core.element.notvalidated', this.elementNotValidatedHandler) + .off('core.element.ignored', this.elementIgnoredHandler) + .off('core.field.added', this.fieldAddedHandler) + .off('core.field.removed', this.fieldRemovedHandler); + }; + FieldStatus.prototype.areFieldsValid = function () { + return Array.from(this.statuses.values()).every(function (value) { + return value === 'Valid' || value === 'NotValidated' || value === 'Ignored'; + }); + }; + FieldStatus.prototype.getStatuses = function () { + return this.isEnabled ? this.statuses : new Map(); + }; + FieldStatus.prototype.onFieldAdded = function (e) { + this.statuses.set(e.field, 'NotValidated'); + }; + FieldStatus.prototype.onFieldRemoved = function (e) { + if (this.statuses.has(e.field)) { + this.statuses.delete(e.field); + } + this.handleStatusChanged(this.areFieldsValid()); + }; + FieldStatus.prototype.onElementValidating = function (e) { + this.statuses.set(e.field, 'Validating'); + this.handleStatusChanged(false); + }; + FieldStatus.prototype.onElementValidated = function (e) { + this.statuses.set(e.field, e.valid ? 'Valid' : 'Invalid'); + if (e.valid) { + this.handleStatusChanged(this.areFieldsValid()); + } + else { + this.handleStatusChanged(false); + } + }; + FieldStatus.prototype.onElementNotValidated = function (e) { + this.statuses.set(e.field, 'NotValidated'); + this.handleStatusChanged(false); + }; + FieldStatus.prototype.onElementIgnored = function (e) { + this.statuses.set(e.field, 'Ignored'); + this.handleStatusChanged(this.areFieldsValid()); + }; + FieldStatus.prototype.handleStatusChanged = function (areFieldsValid) { + if (this.isEnabled) { + this.opts.onStatusChanged(areFieldsValid); + } + }; + return FieldStatus; + }(core.Plugin)); + + return FieldStatus; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.min.js new file mode 100644 index 0000000..0e56ec0 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-field-status/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-field-status + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.FieldStatus=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},t(e,n)};return function(e){function n(t){var n=e.call(this,t)||this;return n.statuses=new Map,n.opts=Object.assign({},{onStatusChanged:function(){}},t),n.elementValidatingHandler=n.onElementValidating.bind(n),n.elementValidatedHandler=n.onElementValidated.bind(n),n.elementNotValidatedHandler=n.onElementNotValidated.bind(n),n.elementIgnoredHandler=n.onElementIgnored.bind(n),n.fieldAddedHandler=n.onFieldAdded.bind(n),n.fieldRemovedHandler=n.onFieldRemoved.bind(n),n}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function i(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}(n,e),n.prototype.install=function(){this.core.on("core.element.validating",this.elementValidatingHandler).on("core.element.validated",this.elementValidatedHandler).on("core.element.notvalidated",this.elementNotValidatedHandler).on("core.element.ignored",this.elementIgnoredHandler).on("core.field.added",this.fieldAddedHandler).on("core.field.removed",this.fieldRemovedHandler)},n.prototype.uninstall=function(){this.statuses.clear(),this.core.off("core.element.validating",this.elementValidatingHandler).off("core.element.validated",this.elementValidatedHandler).off("core.element.notvalidated",this.elementNotValidatedHandler).off("core.element.ignored",this.elementIgnoredHandler).off("core.field.added",this.fieldAddedHandler).off("core.field.removed",this.fieldRemovedHandler)},n.prototype.areFieldsValid=function(){return Array.from(this.statuses.values()).every((function(e){return"Valid"===e||"NotValidated"===e||"Ignored"===e}))},n.prototype.getStatuses=function(){return this.isEnabled?this.statuses:new Map},n.prototype.onFieldAdded=function(e){this.statuses.set(e.field,"NotValidated")},n.prototype.onFieldRemoved=function(e){this.statuses.has(e.field)&&this.statuses.delete(e.field),this.handleStatusChanged(this.areFieldsValid())},n.prototype.onElementValidating=function(e){this.statuses.set(e.field,"Validating"),this.handleStatusChanged(!1)},n.prototype.onElementValidated=function(e){this.statuses.set(e.field,e.valid?"Valid":"Invalid"),e.valid?this.handleStatusChanged(this.areFieldsValid()):this.handleStatusChanged(!1)},n.prototype.onElementNotValidated=function(e){this.statuses.set(e.field,"NotValidated"),this.handleStatusChanged(!1)},n.prototype.onElementIgnored=function(e){this.statuses.set(e.field,"Ignored"),this.handleStatusChanged(this.areFieldsValid())},n.prototype.handleStatusChanged=function(e){this.isEnabled&&this.opts.onStatusChanged(e)},n}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.js new file mode 100644 index 0000000..169ca33 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.js @@ -0,0 +1,79 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Foundation = factory(global.FormValidation.plugins))); +})(this, (function (pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var Foundation = /** @class */ (function (_super) { + __extends(Foundation, _super); + function Foundation(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-foundation', + // See http://foundation.zurb.com/sites/docs/abide.html#form-errors + messageClass: 'form-error', + rowInvalidClass: 'fv-row__error', + rowPattern: /^.*((small|medium|large)-[0-9]+)\s.*(cell).*$/, + rowSelector: '.grid-x', + rowValidClass: 'fv-row__success', + }, opts)) || this; + } + Foundation.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var nextEle = e.iconElement.nextSibling; + if ('LABEL' === nextEle.nodeName) { + nextEle.parentNode.insertBefore(e.iconElement, nextEle.nextSibling); + } + else if ('#text' === nextEle.nodeName) { + // There's space between the input and label tags as + // + // + var next = nextEle.nextSibling; + if (next && 'LABEL' === next.nodeName) { + next.parentNode.insertBefore(e.iconElement, next.nextSibling); + } + } + } + }; + return Foundation; + }(pluginFramework.Framework)); + + return Foundation; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.min.js new file mode 100644 index 0000000..d33a9ae --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-foundation/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-foundation + * @version 2.4.0 + */ + +!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/plugin-framework"],o):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Foundation=o(e.FormValidation.plugins))}(this,(function(e){"use strict";var o=function(e,n){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,o){e.__proto__=o}||function(e,o){for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(e[n]=o[n])},o(e,n)};return function(e){function n(o){return e.call(this,Object.assign({},{formClass:"fv-plugins-foundation",messageClass:"form-error",rowInvalidClass:"fv-row__error",rowPattern:/^.*((small|medium|large)-[0-9]+)\s.*(cell).*$/,rowSelector:".grid-x",rowValidClass:"fv-row__success"},o))||this}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function t(){this.constructor=e}o(e,n),e.prototype=null===n?Object.create(n):(t.prototype=n.prototype,new t)}(n,e),n.prototype.onIconPlaced=function(e){var o=e.element.getAttribute("type");if("checkbox"===o||"radio"===o){var n=e.iconElement.nextSibling;if("LABEL"===n.nodeName)n.parentNode.insertBefore(e.iconElement,n.nextSibling);else if("#text"===n.nodeName){var t=n.nextSibling;t&&"LABEL"===t.nodeName&&t.parentNode.insertBefore(e.iconElement,t.nextSibling)}}},n}(e.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.js new file mode 100644 index 0000000..f52b718 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.js @@ -0,0 +1,275 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-message')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-message'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Framework = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginMessage) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet, closest = core.utils.closest; + var Framework = /** @class */ (function (_super) { + __extends(Framework, _super); + function Framework(opts) { + var _this = _super.call(this, opts) || this; + _this.results = new Map(); + _this.containers = new Map(); + _this.opts = Object.assign({}, { + defaultMessageContainer: true, + eleInvalidClass: '', + eleValidClass: '', + rowClasses: '', + rowValidatingClass: '', + }, opts); + _this.elementIgnoredHandler = _this.onElementIgnored.bind(_this); + _this.elementValidatingHandler = _this.onElementValidating.bind(_this); + _this.elementValidatedHandler = _this.onElementValidated.bind(_this); + _this.elementNotValidatedHandler = _this.onElementNotValidated.bind(_this); + _this.iconPlacedHandler = _this.onIconPlaced.bind(_this); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + _this.fieldRemovedHandler = _this.onFieldRemoved.bind(_this); + _this.messagePlacedHandler = _this.onMessagePlaced.bind(_this); + return _this; + } + Framework.prototype.install = function () { + var _a; + var _this = this; + classSet(this.core.getFormElement(), (_a = {}, + _a[this.opts.formClass] = true, + _a['fv-plugins-framework'] = true, + _a)); + this.core + .on('core.element.ignored', this.elementIgnoredHandler) + .on('core.element.validating', this.elementValidatingHandler) + .on('core.element.validated', this.elementValidatedHandler) + .on('core.element.notvalidated', this.elementNotValidatedHandler) + .on('plugins.icon.placed', this.iconPlacedHandler) + .on('core.field.added', this.fieldAddedHandler) + .on('core.field.removed', this.fieldRemovedHandler); + if (this.opts.defaultMessageContainer) { + this.core.registerPlugin(Framework.MESSAGE_PLUGIN, new pluginMessage.Message({ + clazz: this.opts.messageClass, + container: function (field, element) { + var selector = 'string' === typeof _this.opts.rowSelector + ? _this.opts.rowSelector + : _this.opts.rowSelector(field, element); + var groupEle = closest(element, selector); + return pluginMessage.Message.getClosestContainer(element, groupEle, _this.opts.rowPattern); + }, + })); + this.core.on('plugins.message.placed', this.messagePlacedHandler); + } + }; + Framework.prototype.uninstall = function () { + var _a; + this.results.clear(); + this.containers.clear(); + classSet(this.core.getFormElement(), (_a = {}, + _a[this.opts.formClass] = false, + _a['fv-plugins-framework'] = false, + _a)); + this.core + .off('core.element.ignored', this.elementIgnoredHandler) + .off('core.element.validating', this.elementValidatingHandler) + .off('core.element.validated', this.elementValidatedHandler) + .off('core.element.notvalidated', this.elementNotValidatedHandler) + .off('plugins.icon.placed', this.iconPlacedHandler) + .off('core.field.added', this.fieldAddedHandler) + .off('core.field.removed', this.fieldRemovedHandler); + if (this.opts.defaultMessageContainer) { + this.core.deregisterPlugin(Framework.MESSAGE_PLUGIN); + this.core.off('plugins.message.placed', this.messagePlacedHandler); + } + }; + Framework.prototype.onEnabled = function () { + var _a; + classSet(this.core.getFormElement(), (_a = {}, + _a[this.opts.formClass] = true, + _a)); + if (this.opts.defaultMessageContainer) { + this.core.enablePlugin(Framework.MESSAGE_PLUGIN); + } + }; + Framework.prototype.onDisabled = function () { + var _a; + classSet(this.core.getFormElement(), (_a = {}, + _a[this.opts.formClass] = false, + _a)); + if (this.opts.defaultMessageContainer) { + this.core.disablePlugin(Framework.MESSAGE_PLUGIN); + } + }; + Framework.prototype.onIconPlaced = function (_e) { }; // eslint-disable-line @typescript-eslint/no-empty-function + Framework.prototype.onMessagePlaced = function (_e) { }; // eslint-disable-line @typescript-eslint/no-empty-function + Framework.prototype.onFieldAdded = function (e) { + var _this = this; + var elements = e.elements; + if (elements) { + elements.forEach(function (ele) { + var _a; + var groupEle = _this.containers.get(ele); + if (groupEle) { + classSet(groupEle, (_a = {}, + _a[_this.opts.rowInvalidClass] = false, + _a[_this.opts.rowValidatingClass] = false, + _a[_this.opts.rowValidClass] = false, + _a['fv-plugins-icon-container'] = false, + _a)); + _this.containers.delete(ele); + } + }); + this.prepareFieldContainer(e.field, elements); + } + }; + Framework.prototype.onFieldRemoved = function (e) { + var _this = this; + e.elements.forEach(function (ele) { + var _a; + var groupEle = _this.containers.get(ele); + if (groupEle) { + classSet(groupEle, (_a = {}, + _a[_this.opts.rowInvalidClass] = false, + _a[_this.opts.rowValidatingClass] = false, + _a[_this.opts.rowValidClass] = false, + _a)); + } + }); + }; + Framework.prototype.prepareFieldContainer = function (field, elements) { + var _this = this; + if (elements.length) { + var type = elements[0].getAttribute('type'); + if ('radio' === type || 'checkbox' === type) { + this.prepareElementContainer(field, elements[0]); + } + else { + elements.forEach(function (ele) { return _this.prepareElementContainer(field, ele); }); + } + } + }; + Framework.prototype.prepareElementContainer = function (field, element) { + var _a; + var selector = 'string' === typeof this.opts.rowSelector ? this.opts.rowSelector : this.opts.rowSelector(field, element); + var groupEle = closest(element, selector); + if (groupEle !== element) { + classSet(groupEle, (_a = {}, + _a[this.opts.rowClasses] = true, + _a['fv-plugins-icon-container'] = true, + _a)); + this.containers.set(element, groupEle); + } + }; + Framework.prototype.onElementValidating = function (e) { + this.removeClasses(e.element, e.elements); + }; + Framework.prototype.onElementNotValidated = function (e) { + this.removeClasses(e.element, e.elements); + }; + Framework.prototype.onElementIgnored = function (e) { + this.removeClasses(e.element, e.elements); + }; + Framework.prototype.removeClasses = function (element, elements) { + var _a; + var _this = this; + var type = element.getAttribute('type'); + var ele = 'radio' === type || 'checkbox' === type ? elements[0] : element; + elements.forEach(function (ele) { + var _a; + classSet(ele, (_a = {}, + _a[_this.opts.eleValidClass] = false, + _a[_this.opts.eleInvalidClass] = false, + _a)); + }); + var groupEle = this.containers.get(ele); + if (groupEle) { + classSet(groupEle, (_a = {}, + _a[this.opts.rowInvalidClass] = false, + _a[this.opts.rowValidatingClass] = false, + _a[this.opts.rowValidClass] = false, + _a)); + } + }; + Framework.prototype.onElementValidated = function (e) { + var _a, _b; + var _this = this; + var elements = e.elements; + var type = e.element.getAttribute('type'); + var element = 'radio' === type || 'checkbox' === type ? elements[0] : e.element; + // Set the valid or invalid class for all elements + elements.forEach(function (ele) { + var _a; + classSet(ele, (_a = {}, + _a[_this.opts.eleValidClass] = e.valid, + _a[_this.opts.eleInvalidClass] = !e.valid, + _a)); + }); + var groupEle = this.containers.get(element); + if (groupEle) { + if (!e.valid) { + this.results.set(element, false); + classSet(groupEle, (_a = {}, + _a[this.opts.rowInvalidClass] = true, + _a[this.opts.rowValidatingClass] = false, + _a[this.opts.rowValidClass] = false, + _a)); + } + else { + this.results.delete(element); + // Maybe there're multiple fields belong to the same row + var isValid_1 = true; + this.containers.forEach(function (value, key) { + if (value === groupEle && _this.results.get(key) === false) { + isValid_1 = false; + } + }); + // If all field(s) belonging to the row are valid + if (isValid_1) { + classSet(groupEle, (_b = {}, + _b[this.opts.rowInvalidClass] = false, + _b[this.opts.rowValidatingClass] = false, + _b[this.opts.rowValidClass] = true, + _b)); + } + } + } + }; + Framework.MESSAGE_PLUGIN = '___frameworkMessage'; + return Framework; + }(core.Plugin)); + + return Framework; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.min.js new file mode 100644 index 0000000..ee3db82 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-framework/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-framework + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-message")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-message"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Framework=t(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,t){"use strict";var o=function(e,t){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])},o(e,t)};var n=e.utils.classSet,i=e.utils.closest;return function(e){function s(t){var o=e.call(this,t)||this;return o.results=new Map,o.containers=new Map,o.opts=Object.assign({},{defaultMessageContainer:!0,eleInvalidClass:"",eleValidClass:"",rowClasses:"",rowValidatingClass:""},t),o.elementIgnoredHandler=o.onElementIgnored.bind(o),o.elementValidatingHandler=o.onElementValidating.bind(o),o.elementValidatedHandler=o.onElementValidated.bind(o),o.elementNotValidatedHandler=o.onElementNotValidated.bind(o),o.iconPlacedHandler=o.onIconPlaced.bind(o),o.fieldAddedHandler=o.onFieldAdded.bind(o),o.fieldRemovedHandler=o.onFieldRemoved.bind(o),o.messagePlacedHandler=o.onMessagePlaced.bind(o),o}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(s,e),s.prototype.install=function(){var e,o=this;n(this.core.getFormElement(),((e={})[this.opts.formClass]=!0,e["fv-plugins-framework"]=!0,e)),this.core.on("core.element.ignored",this.elementIgnoredHandler).on("core.element.validating",this.elementValidatingHandler).on("core.element.validated",this.elementValidatedHandler).on("core.element.notvalidated",this.elementNotValidatedHandler).on("plugins.icon.placed",this.iconPlacedHandler).on("core.field.added",this.fieldAddedHandler).on("core.field.removed",this.fieldRemovedHandler),this.opts.defaultMessageContainer&&(this.core.registerPlugin(s.MESSAGE_PLUGIN,new t.Message({clazz:this.opts.messageClass,container:function(e,n){var s="string"==typeof o.opts.rowSelector?o.opts.rowSelector:o.opts.rowSelector(e,n),a=i(n,s);return t.Message.getClosestContainer(n,a,o.opts.rowPattern)}})),this.core.on("plugins.message.placed",this.messagePlacedHandler))},s.prototype.uninstall=function(){var e;this.results.clear(),this.containers.clear(),n(this.core.getFormElement(),((e={})[this.opts.formClass]=!1,e["fv-plugins-framework"]=!1,e)),this.core.off("core.element.ignored",this.elementIgnoredHandler).off("core.element.validating",this.elementValidatingHandler).off("core.element.validated",this.elementValidatedHandler).off("core.element.notvalidated",this.elementNotValidatedHandler).off("plugins.icon.placed",this.iconPlacedHandler).off("core.field.added",this.fieldAddedHandler).off("core.field.removed",this.fieldRemovedHandler),this.opts.defaultMessageContainer&&(this.core.deregisterPlugin(s.MESSAGE_PLUGIN),this.core.off("plugins.message.placed",this.messagePlacedHandler))},s.prototype.onEnabled=function(){var e;n(this.core.getFormElement(),((e={})[this.opts.formClass]=!0,e)),this.opts.defaultMessageContainer&&this.core.enablePlugin(s.MESSAGE_PLUGIN)},s.prototype.onDisabled=function(){var e;n(this.core.getFormElement(),((e={})[this.opts.formClass]=!1,e)),this.opts.defaultMessageContainer&&this.core.disablePlugin(s.MESSAGE_PLUGIN)},s.prototype.onIconPlaced=function(e){},s.prototype.onMessagePlaced=function(e){},s.prototype.onFieldAdded=function(e){var t=this,o=e.elements;o&&(o.forEach((function(e){var o,i=t.containers.get(e);i&&(n(i,((o={})[t.opts.rowInvalidClass]=!1,o[t.opts.rowValidatingClass]=!1,o[t.opts.rowValidClass]=!1,o["fv-plugins-icon-container"]=!1,o)),t.containers.delete(e))})),this.prepareFieldContainer(e.field,o))},s.prototype.onFieldRemoved=function(e){var t=this;e.elements.forEach((function(e){var o,i=t.containers.get(e);i&&n(i,((o={})[t.opts.rowInvalidClass]=!1,o[t.opts.rowValidatingClass]=!1,o[t.opts.rowValidClass]=!1,o))}))},s.prototype.prepareFieldContainer=function(e,t){var o=this;if(t.length){var n=t[0].getAttribute("type");"radio"===n||"checkbox"===n?this.prepareElementContainer(e,t[0]):t.forEach((function(t){return o.prepareElementContainer(e,t)}))}},s.prototype.prepareElementContainer=function(e,t){var o,s="string"==typeof this.opts.rowSelector?this.opts.rowSelector:this.opts.rowSelector(e,t),a=i(t,s);a!==t&&(n(a,((o={})[this.opts.rowClasses]=!0,o["fv-plugins-icon-container"]=!0,o)),this.containers.set(t,a))},s.prototype.onElementValidating=function(e){this.removeClasses(e.element,e.elements)},s.prototype.onElementNotValidated=function(e){this.removeClasses(e.element,e.elements)},s.prototype.onElementIgnored=function(e){this.removeClasses(e.element,e.elements)},s.prototype.removeClasses=function(e,t){var o,i=this,s=e.getAttribute("type"),a="radio"===s||"checkbox"===s?t[0]:e;t.forEach((function(e){var t;n(e,((t={})[i.opts.eleValidClass]=!1,t[i.opts.eleInvalidClass]=!1,t))}));var l=this.containers.get(a);l&&n(l,((o={})[this.opts.rowInvalidClass]=!1,o[this.opts.rowValidatingClass]=!1,o[this.opts.rowValidClass]=!1,o))},s.prototype.onElementValidated=function(e){var t,o,i=this,s=e.elements,a=e.element.getAttribute("type"),l="radio"===a||"checkbox"===a?s[0]:e.element;s.forEach((function(t){var o;n(t,((o={})[i.opts.eleValidClass]=e.valid,o[i.opts.eleInvalidClass]=!e.valid,o))}));var r=this.containers.get(l);if(r)if(e.valid){this.results.delete(l);var d=!0;this.containers.forEach((function(e,t){e===r&&!1===i.results.get(t)&&(d=!1)})),d&&n(r,((o={})[this.opts.rowInvalidClass]=!1,o[this.opts.rowValidatingClass]=!1,o[this.opts.rowValidClass]=!0,o))}else this.results.set(l,!1),n(r,((t={})[this.opts.rowInvalidClass]=!0,t[this.opts.rowValidatingClass]=!1,t[this.opts.rowValidClass]=!1,t))},s.MESSAGE_PLUGIN="___frameworkMessage",s}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.js new file mode 100644 index 0000000..ec9429e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.js @@ -0,0 +1,229 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Icon = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var Icon = /** @class */ (function (_super) { + __extends(Icon, _super); + function Icon(opts) { + var _this = _super.call(this, opts) || this; + // Map the field element with icon + _this.icons = new Map(); + _this.opts = Object.assign({}, { + invalid: 'fv-plugins-icon--invalid', + onPlaced: function () { }, + onSet: function () { }, + valid: 'fv-plugins-icon--valid', + validating: 'fv-plugins-icon--validating', + }, opts); + _this.elementValidatingHandler = _this.onElementValidating.bind(_this); + _this.elementValidatedHandler = _this.onElementValidated.bind(_this); + _this.elementNotValidatedHandler = _this.onElementNotValidated.bind(_this); + _this.elementIgnoredHandler = _this.onElementIgnored.bind(_this); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + return _this; + } + Icon.prototype.install = function () { + this.core + .on('core.element.validating', this.elementValidatingHandler) + .on('core.element.validated', this.elementValidatedHandler) + .on('core.element.notvalidated', this.elementNotValidatedHandler) + .on('core.element.ignored', this.elementIgnoredHandler) + .on('core.field.added', this.fieldAddedHandler); + }; + Icon.prototype.uninstall = function () { + this.icons.forEach(function (icon) { return icon.parentNode.removeChild(icon); }); + this.icons.clear(); + this.core + .off('core.element.validating', this.elementValidatingHandler) + .off('core.element.validated', this.elementValidatedHandler) + .off('core.element.notvalidated', this.elementNotValidatedHandler) + .off('core.element.ignored', this.elementIgnoredHandler) + .off('core.field.added', this.fieldAddedHandler); + }; + Icon.prototype.onEnabled = function () { + this.icons.forEach(function (_element, i, _map) { + classSet(i, { + 'fv-plugins-icon--enabled': true, + 'fv-plugins-icon--disabled': false, + }); + }); + }; + Icon.prototype.onDisabled = function () { + this.icons.forEach(function (_element, i, _map) { + classSet(i, { + 'fv-plugins-icon--enabled': false, + 'fv-plugins-icon--disabled': true, + }); + }); + }; + Icon.prototype.onFieldAdded = function (e) { + var _this = this; + var elements = e.elements; + if (elements) { + elements.forEach(function (ele) { + var icon = _this.icons.get(ele); + if (icon) { + icon.parentNode.removeChild(icon); + _this.icons.delete(ele); + } + }); + this.prepareFieldIcon(e.field, elements); + } + }; + Icon.prototype.prepareFieldIcon = function (field, elements) { + var _this = this; + if (elements.length) { + var type = elements[0].getAttribute('type'); + if ('radio' === type || 'checkbox' === type) { + this.prepareElementIcon(field, elements[0]); + } + else { + elements.forEach(function (ele) { return _this.prepareElementIcon(field, ele); }); + } + } + }; + Icon.prototype.prepareElementIcon = function (field, ele) { + var i = document.createElement('i'); + i.setAttribute('data-field', field); + // Append the icon right after the field element + ele.parentNode.insertBefore(i, ele.nextSibling); + classSet(i, { + 'fv-plugins-icon': true, + 'fv-plugins-icon--enabled': this.isEnabled, + 'fv-plugins-icon--disabled': !this.isEnabled, + }); + var e = { + classes: { + invalid: this.opts.invalid, + valid: this.opts.valid, + validating: this.opts.validating, + }, + element: ele, + field: field, + iconElement: i, + }; + this.core.emit('plugins.icon.placed', e); + this.opts.onPlaced(e); + this.icons.set(ele, i); + }; + Icon.prototype.onElementValidating = function (e) { + var _a; + var icon = this.setClasses(e.field, e.element, e.elements, (_a = {}, + _a[this.opts.invalid] = false, + _a[this.opts.valid] = false, + _a[this.opts.validating] = true, + _a)); + var evt = { + element: e.element, + field: e.field, + iconElement: icon, + status: 'Validating', + }; + this.core.emit('plugins.icon.set', evt); + this.opts.onSet(evt); + }; + Icon.prototype.onElementValidated = function (e) { + var _a; + var icon = this.setClasses(e.field, e.element, e.elements, (_a = {}, + _a[this.opts.invalid] = !e.valid, + _a[this.opts.valid] = e.valid, + _a[this.opts.validating] = false, + _a)); + var evt = { + element: e.element, + field: e.field, + iconElement: icon, + status: e.valid ? 'Valid' : 'Invalid', + }; + this.core.emit('plugins.icon.set', evt); + this.opts.onSet(evt); + }; + Icon.prototype.onElementNotValidated = function (e) { + var _a; + var icon = this.setClasses(e.field, e.element, e.elements, (_a = {}, + _a[this.opts.invalid] = false, + _a[this.opts.valid] = false, + _a[this.opts.validating] = false, + _a)); + var evt = { + element: e.element, + field: e.field, + iconElement: icon, + status: 'NotValidated', + }; + this.core.emit('plugins.icon.set', evt); + this.opts.onSet(evt); + }; + Icon.prototype.onElementIgnored = function (e) { + var _a; + var icon = this.setClasses(e.field, e.element, e.elements, (_a = {}, + _a[this.opts.invalid] = false, + _a[this.opts.valid] = false, + _a[this.opts.validating] = false, + _a)); + var evt = { + element: e.element, + field: e.field, + iconElement: icon, + status: 'Ignored', + }; + this.core.emit('plugins.icon.set', evt); + this.opts.onSet(evt); + }; + Icon.prototype.setClasses = function (_field, element, elements, classes) { + var type = element.getAttribute('type'); + var ele = 'radio' === type || 'checkbox' === type ? elements[0] : element; + if (this.icons.has(ele)) { + var icon = this.icons.get(ele); + classSet(icon, classes); + return icon; + } + else { + return null; + } + }; + return Icon; + }(core.Plugin)); + + return Icon; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.min.js new file mode 100644 index 0000000..72856b6 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-icon/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-icon + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Icon=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},t(e,n)};var n=e.utils.classSet;return function(e){function i(t){var n=e.call(this,t)||this;return n.icons=new Map,n.opts=Object.assign({},{invalid:"fv-plugins-icon--invalid",onPlaced:function(){},onSet:function(){},valid:"fv-plugins-icon--valid",validating:"fv-plugins-icon--validating"},t),n.elementValidatingHandler=n.onElementValidating.bind(n),n.elementValidatedHandler=n.onElementValidated.bind(n),n.elementNotValidatedHandler=n.onElementNotValidated.bind(n),n.elementIgnoredHandler=n.onElementIgnored.bind(n),n.fieldAddedHandler=n.onFieldAdded.bind(n),n}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function i(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}(i,e),i.prototype.install=function(){this.core.on("core.element.validating",this.elementValidatingHandler).on("core.element.validated",this.elementValidatedHandler).on("core.element.notvalidated",this.elementNotValidatedHandler).on("core.element.ignored",this.elementIgnoredHandler).on("core.field.added",this.fieldAddedHandler)},i.prototype.uninstall=function(){this.icons.forEach((function(e){return e.parentNode.removeChild(e)})),this.icons.clear(),this.core.off("core.element.validating",this.elementValidatingHandler).off("core.element.validated",this.elementValidatedHandler).off("core.element.notvalidated",this.elementNotValidatedHandler).off("core.element.ignored",this.elementIgnoredHandler).off("core.field.added",this.fieldAddedHandler)},i.prototype.onEnabled=function(){this.icons.forEach((function(e,t,i){n(t,{"fv-plugins-icon--enabled":!0,"fv-plugins-icon--disabled":!1})}))},i.prototype.onDisabled=function(){this.icons.forEach((function(e,t,i){n(t,{"fv-plugins-icon--enabled":!1,"fv-plugins-icon--disabled":!0})}))},i.prototype.onFieldAdded=function(e){var t=this,n=e.elements;n&&(n.forEach((function(e){var n=t.icons.get(e);n&&(n.parentNode.removeChild(n),t.icons.delete(e))})),this.prepareFieldIcon(e.field,n))},i.prototype.prepareFieldIcon=function(e,t){var n=this;if(t.length){var i=t[0].getAttribute("type");"radio"===i||"checkbox"===i?this.prepareElementIcon(e,t[0]):t.forEach((function(t){return n.prepareElementIcon(e,t)}))}},i.prototype.prepareElementIcon=function(e,t){var i=document.createElement("i");i.setAttribute("data-field",e),t.parentNode.insertBefore(i,t.nextSibling),n(i,{"fv-plugins-icon":!0,"fv-plugins-icon--enabled":this.isEnabled,"fv-plugins-icon--disabled":!this.isEnabled});var o={classes:{invalid:this.opts.invalid,valid:this.opts.valid,validating:this.opts.validating},element:t,field:e,iconElement:i};this.core.emit("plugins.icon.placed",o),this.opts.onPlaced(o),this.icons.set(t,i)},i.prototype.onElementValidating=function(e){var t,n=this.setClasses(e.field,e.element,e.elements,((t={})[this.opts.invalid]=!1,t[this.opts.valid]=!1,t[this.opts.validating]=!0,t)),i={element:e.element,field:e.field,iconElement:n,status:"Validating"};this.core.emit("plugins.icon.set",i),this.opts.onSet(i)},i.prototype.onElementValidated=function(e){var t,n=this.setClasses(e.field,e.element,e.elements,((t={})[this.opts.invalid]=!e.valid,t[this.opts.valid]=e.valid,t[this.opts.validating]=!1,t)),i={element:e.element,field:e.field,iconElement:n,status:e.valid?"Valid":"Invalid"};this.core.emit("plugins.icon.set",i),this.opts.onSet(i)},i.prototype.onElementNotValidated=function(e){var t,n=this.setClasses(e.field,e.element,e.elements,((t={})[this.opts.invalid]=!1,t[this.opts.valid]=!1,t[this.opts.validating]=!1,t)),i={element:e.element,field:e.field,iconElement:n,status:"NotValidated"};this.core.emit("plugins.icon.set",i),this.opts.onSet(i)},i.prototype.onElementIgnored=function(e){var t,n=this.setClasses(e.field,e.element,e.elements,((t={})[this.opts.invalid]=!1,t[this.opts.valid]=!1,t[this.opts.validating]=!1,t)),i={element:e.element,field:e.field,iconElement:n,status:"Ignored"};this.core.emit("plugins.icon.set",i),this.opts.onSet(i)},i.prototype.setClasses=function(e,t,i,o){var l=t.getAttribute("type"),a="radio"===l||"checkbox"===l?i[0]:t;if(this.icons.has(a)){var d=this.icons.get(a);return n(d,o),d}return null},i}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.js new file mode 100644 index 0000000..e04f76c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.js @@ -0,0 +1,187 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.InternationalTelephoneInput = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var InternationalTelephoneInput = /** @class */ (function (_super) { + __extends(InternationalTelephoneInput, _super); + function InternationalTelephoneInput(opts) { + var _this = _super.call(this, opts) || this; + _this.intlTelInstances = new Map(); + _this.countryChangeHandler = new Map(); + _this.fieldElements = new Map(); + _this.hiddenFieldElements = new Map(); + _this.opts = Object.assign({}, { + autoPlaceholder: 'polite', + utilsScript: '', + }, opts); + _this.validatePhoneNumber = _this.checkPhoneNumber.bind(_this); + _this.fields = typeof _this.opts.field === 'string' ? _this.opts.field.split(',') : _this.opts.field; + _this.hiddenFieldInputs = _this.opts.hiddenPhoneInput + ? typeof _this.opts.hiddenPhoneInput === 'string' + ? _this.opts.hiddenPhoneInput.split(',') + : _this.opts.hiddenPhoneInput + : []; + _this.onValidatorValidatedHandler = _this.onValidatorValidated.bind(_this); + return _this; + } + InternationalTelephoneInput.prototype.install = function () { + var _this = this; + this.core.registerValidator(InternationalTelephoneInput.INT_TEL_VALIDATOR, this.validatePhoneNumber); + var numHiddenFieldInputs = this.hiddenFieldInputs.length; + this.fields.forEach(function (field, index) { + var _a; + _this.core.addField(field, { + validators: (_a = {}, + _a[InternationalTelephoneInput.INT_TEL_VALIDATOR] = { + message: _this.opts.message, + }, + _a), + }); + var ele = _this.core.getElements(field)[0]; + var handler = function () { return _this.core.revalidateField(field); }; + ele.addEventListener('countrychange', handler); + _this.countryChangeHandler.set(field, handler); + _this.fieldElements.set(field, ele); + _this.intlTelInstances.set(field, intlTelInput(ele, _this.opts)); + if (index < numHiddenFieldInputs && _this.hiddenFieldInputs[index]) { + var hiddenInputEle = document.createElement('input'); + hiddenInputEle.setAttribute('type', 'hidden'); + hiddenInputEle.setAttribute('name', _this.hiddenFieldInputs[index]); + _this.core.getFormElement().appendChild(hiddenInputEle); + _this.hiddenFieldElements.set(field, hiddenInputEle); + } + }); + if (numHiddenFieldInputs > 0) { + this.core.on('core.validator.validated', this.onValidatorValidatedHandler); + } + }; + InternationalTelephoneInput.prototype.uninstall = function () { + var _this = this; + var numHiddenFieldInputs = this.hiddenFieldInputs.length; + this.fields.forEach(function (field, index) { + // Remove event handler + var handler = _this.countryChangeHandler.get(field); + var ele = _this.fieldElements.get(field); + var intlTel = _this.getIntTelInstance(field); + if (handler && ele && intlTel) { + ele.removeEventListener('countrychange', handler); + _this.core.disableValidator(field, InternationalTelephoneInput.INT_TEL_VALIDATOR); + intlTel.destroy(); + } + if (index < numHiddenFieldInputs && _this.hiddenFieldInputs[index]) { + var hiddenInputEle = _this.hiddenFieldElements.get(field); + if (hiddenInputEle) { + _this.core.getFormElement().removeChild(hiddenInputEle); + } + } + }); + if (numHiddenFieldInputs > 0) { + this.core.off('core.validator.validated', this.onValidatorValidatedHandler); + } + this.fieldElements.clear(); + this.hiddenFieldElements.clear(); + }; + InternationalTelephoneInput.prototype.getIntTelInstance = function (field) { + return this.intlTelInstances.get(field); + }; + InternationalTelephoneInput.prototype.onEnabled = function () { + var _this = this; + this.fields.forEach(function (field) { + _this.core.enableValidator(field, InternationalTelephoneInput.INT_TEL_VALIDATOR); + }); + }; + InternationalTelephoneInput.prototype.onDisabled = function () { + var _this = this; + this.fields.forEach(function (field) { + _this.core.disableValidator(field, InternationalTelephoneInput.INT_TEL_VALIDATOR); + // Reset the full phone number input + var hiddenInputEle = _this.hiddenFieldElements.get(field); + if (hiddenInputEle) { + hiddenInputEle.value = ''; + } + }); + }; + InternationalTelephoneInput.prototype.checkPhoneNumber = function () { + var _this = this; + return { + validate: function (input) { + var value = input.value; + var intlTel = _this.getIntTelInstance(input.field); + if (value === '' || !intlTel) { + return { + valid: true, + }; + } + return { + valid: intlTel.isValidNumber(), + }; + }, + }; + }; + InternationalTelephoneInput.prototype.onValidatorValidated = function (e) { + if (this.hiddenFieldInputs.length === 0 || e.validator !== InternationalTelephoneInput.INT_TEL_VALIDATOR) { + return; + } + var field = e.field; + var hiddenInputEle = this.hiddenFieldElements.get(field); + if (!hiddenInputEle) { + return; + } + if (this.isEnabled && e.result.valid) { + // Get the intl-tel-input instance + var intlTelInstance = this.getIntTelInstance(field); + // Get the phone number including the country code + // See https://github.com/jackocnr/intl-tel-input#public-methods + var phoneNumber = intlTelInstance.getNumber(); + // Set the value for the hidden field + hiddenInputEle.value = phoneNumber; + } + else { + hiddenInputEle.value = ''; + } + }; + InternationalTelephoneInput.INT_TEL_VALIDATOR = '___InternationalTelephoneInputValidator'; + return InternationalTelephoneInput; + }(core.Plugin)); + + return InternationalTelephoneInput; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.min.js new file mode 100644 index 0000000..e8759c5 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-international-telephone-input/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-international-telephone-input + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.InternationalTelephoneInput=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},t(e,n)};return function(e){function n(t){var n=e.call(this,t)||this;return n.intlTelInstances=new Map,n.countryChangeHandler=new Map,n.fieldElements=new Map,n.hiddenFieldElements=new Map,n.opts=Object.assign({},{autoPlaceholder:"polite",utilsScript:""},t),n.validatePhoneNumber=n.checkPhoneNumber.bind(n),n.fields="string"==typeof n.opts.field?n.opts.field.split(","):n.opts.field,n.hiddenFieldInputs=n.opts.hiddenPhoneInput?"string"==typeof n.opts.hiddenPhoneInput?n.opts.hiddenPhoneInput.split(","):n.opts.hiddenPhoneInput:[],n.onValidatorValidatedHandler=n.onValidatorValidated.bind(n),n}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function i(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}(n,e),n.prototype.install=function(){var e=this;this.core.registerValidator(n.INT_TEL_VALIDATOR,this.validatePhoneNumber);var t=this.hiddenFieldInputs.length;this.fields.forEach((function(i,o){var a;e.core.addField(i,{validators:(a={},a[n.INT_TEL_VALIDATOR]={message:e.opts.message},a)});var l=e.core.getElements(i)[0],r=function(){return e.core.revalidateField(i)};if(l.addEventListener("countrychange",r),e.countryChangeHandler.set(i,r),e.fieldElements.set(i,l),e.intlTelInstances.set(i,intlTelInput(l,e.opts)),o0&&this.core.on("core.validator.validated",this.onValidatorValidatedHandler)},n.prototype.uninstall=function(){var e=this,t=this.hiddenFieldInputs.length;this.fields.forEach((function(i,o){var a=e.countryChangeHandler.get(i),l=e.fieldElements.get(i),r=e.getIntTelInstance(i);if(a&&l&&r&&(l.removeEventListener("countrychange",a),e.core.disableValidator(i,n.INT_TEL_VALIDATOR),r.destroy()),o0&&this.core.off("core.validator.validated",this.onValidatorValidatedHandler),this.fieldElements.clear(),this.hiddenFieldElements.clear()},n.prototype.getIntTelInstance=function(e){return this.intlTelInstances.get(e)},n.prototype.onEnabled=function(){var e=this;this.fields.forEach((function(t){e.core.enableValidator(t,n.INT_TEL_VALIDATOR)}))},n.prototype.onDisabled=function(){var e=this;this.fields.forEach((function(t){e.core.disableValidator(t,n.INT_TEL_VALIDATOR);var i=e.hiddenFieldElements.get(t);i&&(i.value="")}))},n.prototype.checkPhoneNumber=function(){var e=this;return{validate:function(t){var n=t.value,i=e.getIntTelInstance(t.field);return""!==n&&i?{valid:i.isValidNumber()}:{valid:!0}}}},n.prototype.onValidatorValidated=function(e){if(0!==this.hiddenFieldInputs.length&&e.validator===n.INT_TEL_VALIDATOR){var t=e.field,i=this.hiddenFieldElements.get(t);if(i)if(this.isEnabled&&e.result.valid){var o=this.getIntTelInstance(t).getNumber();i.value=o}else i.value=""}},n.INT_TEL_VALIDATOR="___InternationalTelephoneInputValidator",n}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.js new file mode 100644 index 0000000..5f10c11 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.js @@ -0,0 +1,27 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('jquery'), require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['jquery', '@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.$, global.FormValidation)); +})(this, (function ($, core) { 'use strict'; + + const version = $.fn.jquery.split(' ')[0].split('.'); + if ((+version[0] < 2 && +version[1] < 9) || (+version[0] === 1 && +version[1] === 9 && +version[2] < 1)) { + throw new Error('The J plugin requires jQuery version 1.9.1 or higher'); + } + $.fn['formValidation'] = function (options) { + const params = arguments; + return this.each(function () { + const $this = $(this); + let data = $this.data('formValidation'); + const opts = 'object' === typeof options && options; + if (!data) { + data = core.formValidation(this, opts); + $this.data('formValidation', data).data('FormValidation', data); + } + if ('string' === typeof options) { + data[options].apply(data, Array.prototype.slice.call(params, 1)); + } + }); + }; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.min.js new file mode 100644 index 0000000..e37c327 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-j/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-j + * @version 2.4.0 + */ + +!function(o,i){"object"==typeof exports&&"undefined"!=typeof module?i(require("jquery"),require("@form-validation/core")):"function"==typeof define&&define.amd?define(["jquery","@form-validation/core"],i):i((o="undefined"!=typeof globalThis?globalThis:o||self).$,o.FormValidation)}(this,(function(o,i){"use strict";const e=o.fn.jquery.split(" ")[0].split(".");if(+e[0]<2&&+e[1]<9||1==+e[0]&&9==+e[1]&&+e[2]<1)throw new Error("The J plugin requires jQuery version 1.9.1 or higher");o.fn.formValidation=function(e){const t=arguments;return this.each((function(){const n=o(this);let r=n.data("formValidation");const a="object"==typeof e&&e;r||(r=i.formValidation(this,a),n.data("formValidation",r).data("FormValidation",r)),"string"==typeof e&&r[e].apply(r,Array.prototype.slice.call(t,1))}))}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.js new file mode 100644 index 0000000..9526d953 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.js @@ -0,0 +1,80 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.L10n = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var L10n = /** @class */ (function (_super) { + __extends(L10n, _super); + function L10n(opts) { + var _this = _super.call(this, opts) || this; + _this.messageFilter = _this.getMessage.bind(_this); + return _this; + } + L10n.prototype.install = function () { + this.core.registerFilter('validator-message', this.messageFilter); + }; + L10n.prototype.uninstall = function () { + this.core.deregisterFilter('validator-message', this.messageFilter); + }; + L10n.prototype.getMessage = function (locale, field, validator) { + if (!this.isEnabled) { + return ''; + } + if (this.opts[field] && this.opts[field][validator]) { + var message = this.opts[field][validator]; + var messageType = typeof message; + if ('object' === messageType && message[locale]) { + // message is a literal object + return message[locale]; + } + else if ('function' === messageType) { + // message is defined by a function + var result = message.apply(this, [field, validator]); + return result && result[locale] ? result[locale] : ''; + } + } + return ''; + }; + return L10n; + }(core.Plugin)); + + return L10n; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.min.js new file mode 100644 index 0000000..a500426 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-l10n/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-l10n + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.L10n=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,o){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])},e(t,o)};return function(t){function o(e){var o=t.call(this,e)||this;return o.messageFilter=o.getMessage.bind(o),o}return function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function i(){this.constructor=t}e(t,o),t.prototype=null===o?Object.create(o):(i.prototype=o.prototype,new i)}(o,t),o.prototype.install=function(){this.core.registerFilter("validator-message",this.messageFilter)},o.prototype.uninstall=function(){this.core.deregisterFilter("validator-message",this.messageFilter)},o.prototype.getMessage=function(t,e,o){if(!this.isEnabled)return"";if(this.opts[e]&&this.opts[e][o]){var i=this.opts[e][o],n=typeof i;if("object"===n&&i[t])return i[t];if("function"===n){var r=i.apply(this,[e,o]);return r&&r[t]?r[t]:""}}return""},o}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.js new file mode 100644 index 0000000..ba0b093 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.js @@ -0,0 +1,108 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-alias')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-alias'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Mailgun = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginAlias) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + /** + * This plugin is used to validate an email address by using Mailgun API + */ + var Mailgun = /** @class */ (function (_super) { + __extends(Mailgun, _super); + function Mailgun(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { suggestion: false }, removeUndefined(opts)); + _this.messageDisplayedHandler = _this.onMessageDisplayed.bind(_this); + return _this; + } + Mailgun.prototype.install = function () { + if (this.opts.suggestion) { + this.core.on('plugins.message.displayed', this.messageDisplayedHandler); + } + var aliasOpts = { + mailgun: 'remote', + }; + this.core.registerPlugin(Mailgun.ALIAS_PLUGIN, new pluginAlias.Alias(aliasOpts)).addField(this.opts.field, { + validators: { + mailgun: { + crossDomain: true, + data: { + api_key: this.opts.apiKey, + }, + headers: { + 'Content-Type': 'application/json', + }, + message: this.opts.message, + name: 'address', + url: 'https://api.mailgun.net/v3/address/validate', + validKey: 'is_valid', + }, + }, + }); + }; + Mailgun.prototype.uninstall = function () { + if (this.opts.suggestion) { + this.core.off('plugins.message.displayed', this.messageDisplayedHandler); + } + this.core.deregisterPlugin(Mailgun.ALIAS_PLUGIN); + this.core.removeField(this.opts.field); + }; + Mailgun.prototype.onEnabled = function () { + this.core.enableValidator(this.opts.field, 'mailgun').enablePlugin(Mailgun.ALIAS_PLUGIN); + }; + Mailgun.prototype.onDisabled = function () { + this.core.disableValidator(this.opts.field, 'mailgun').disablePlugin(Mailgun.ALIAS_PLUGIN); + }; + Mailgun.prototype.onMessageDisplayed = function (e) { + if (this.isEnabled && + e.field === this.opts.field && + 'mailgun' === e.validator && + e.meta && + e.meta['did_you_mean']) { + e.messageElement.innerHTML = "Did you mean ".concat(e.meta['did_you_mean'], "?"); + } + }; + Mailgun.ALIAS_PLUGIN = '___mailgunAlias'; + return Mailgun; + }(core.Plugin)); + + return Mailgun; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.min.js new file mode 100644 index 0000000..40366ab --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mailgun/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-mailgun + * @version 2.4.0 + */ + +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i(require("@form-validation/core"),require("@form-validation/plugin-alias")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-alias"],i):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Mailgun=i(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,i){"use strict";var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,i){e.__proto__=i}||function(e,i){for(var t in i)Object.prototype.hasOwnProperty.call(i,t)&&(e[t]=i[t])},t(e,i)};var o=e.utils.removeUndefined;return function(e){function n(i){var t=e.call(this,i)||this;return t.opts=Object.assign({},{suggestion:!1},o(i)),t.messageDisplayedHandler=t.onMessageDisplayed.bind(t),t}return function(e,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}(n,e),n.prototype.install=function(){this.opts.suggestion&&this.core.on("plugins.message.displayed",this.messageDisplayedHandler);this.core.registerPlugin(n.ALIAS_PLUGIN,new i.Alias({mailgun:"remote"})).addField(this.opts.field,{validators:{mailgun:{crossDomain:!0,data:{api_key:this.opts.apiKey},headers:{"Content-Type":"application/json"},message:this.opts.message,name:"address",url:"https://api.mailgun.net/v3/address/validate",validKey:"is_valid"}}})},n.prototype.uninstall=function(){this.opts.suggestion&&this.core.off("plugins.message.displayed",this.messageDisplayedHandler),this.core.deregisterPlugin(n.ALIAS_PLUGIN),this.core.removeField(this.opts.field)},n.prototype.onEnabled=function(){this.core.enableValidator(this.opts.field,"mailgun").enablePlugin(n.ALIAS_PLUGIN)},n.prototype.onDisabled=function(){this.core.disableValidator(this.opts.field,"mailgun").disablePlugin(n.ALIAS_PLUGIN)},n.prototype.onMessageDisplayed=function(e){this.isEnabled&&e.field===this.opts.field&&"mailgun"===e.validator&&e.meta&&e.meta.did_you_mean&&(e.messageElement.innerHTML="Did you mean ".concat(e.meta.did_you_mean,"?"))},n.ALIAS_PLUGIN="___mailgunAlias",n}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.js new file mode 100644 index 0000000..d9a9614 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.js @@ -0,0 +1,179 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.MandatoryIcon = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var MandatoryIcon = /** @class */ (function (_super) { + __extends(MandatoryIcon, _super); + function MandatoryIcon(opts) { + var _this = _super.call(this, opts) || this; + _this.removedIcons = { + Invalid: '', + NotValidated: '', + Valid: '', + Validating: '', + }; + // Map the field element with icon + _this.icons = new Map(); + _this.elementValidatingHandler = _this.onElementValidating.bind(_this); + _this.elementValidatedHandler = _this.onElementValidated.bind(_this); + _this.elementNotValidatedHandler = _this.onElementNotValidated.bind(_this); + _this.iconPlacedHandler = _this.onIconPlaced.bind(_this); + _this.iconSetHandler = _this.onIconSet.bind(_this); + return _this; + } + MandatoryIcon.prototype.install = function () { + this.core + .on('core.element.validating', this.elementValidatingHandler) + .on('core.element.validated', this.elementValidatedHandler) + .on('core.element.notvalidated', this.elementNotValidatedHandler) + .on('plugins.icon.placed', this.iconPlacedHandler) + .on('plugins.icon.set', this.iconSetHandler); + }; + MandatoryIcon.prototype.uninstall = function () { + this.icons.clear(); + this.core + .off('core.element.validating', this.elementValidatingHandler) + .off('core.element.validated', this.elementValidatedHandler) + .off('core.element.notvalidated', this.elementNotValidatedHandler) + .off('plugins.icon.placed', this.iconPlacedHandler) + .off('plugins.icon.set', this.iconSetHandler); + }; + MandatoryIcon.prototype.onEnabled = function () { + var _this = this; + this.icons.forEach(function (_element, iconElement, _map) { + var _a; + classSet(iconElement, (_a = {}, + _a[_this.opts.icon] = true, + _a)); + }); + }; + MandatoryIcon.prototype.onDisabled = function () { + var _this = this; + this.icons.forEach(function (_element, iconElement, _map) { + var _a; + classSet(iconElement, (_a = {}, + _a[_this.opts.icon] = false, + _a)); + }); + }; + MandatoryIcon.prototype.onIconPlaced = function (e) { + var _a; + var _this = this; + var validators = this.core.getFields()[e.field].validators; + var elements = this.core.getElements(e.field); + if (validators && validators['notEmpty'] && validators['notEmpty'].enabled !== false && elements.length) { + this.icons.set(e.element, e.iconElement); + var eleType = elements[0].getAttribute('type'); + var type = !eleType ? '' : eleType.toLowerCase(); + var elementArray = 'checkbox' === type || 'radio' === type ? [elements[0]] : elements; + for (var _i = 0, elementArray_1 = elementArray; _i < elementArray_1.length; _i++) { + var ele = elementArray_1[_i]; + if (this.core.getElementValue(e.field, ele) === '') { + // Add required icon + classSet(e.iconElement, (_a = {}, + _a[this.opts.icon] = this.isEnabled, + _a)); + } + } + } + // Maybe the required icon consists of one which is in the list of valid/invalid/validating feedback icons + // (for example, fa, glyphicon) + this.iconClasses = e.classes; + var icons = this.opts.icon.split(' '); + var feedbackIcons = { + Invalid: this.iconClasses.invalid ? this.iconClasses.invalid.split(' ') : [], + Valid: this.iconClasses.valid ? this.iconClasses.valid.split(' ') : [], + Validating: this.iconClasses.validating ? this.iconClasses.validating.split(' ') : [], + }; + Object.keys(feedbackIcons).forEach(function (status) { + var classes = []; + for (var _i = 0, icons_1 = icons; _i < icons_1.length; _i++) { + var clazz = icons_1[_i]; + if (feedbackIcons[status].indexOf(clazz) === -1) { + classes.push(clazz); + } + } + _this.removedIcons[status] = classes.join(' '); + }); + }; + MandatoryIcon.prototype.onElementValidating = function (e) { + this.updateIconClasses(e.element, 'Validating'); + }; + MandatoryIcon.prototype.onElementValidated = function (e) { + this.updateIconClasses(e.element, e.valid ? 'Valid' : 'Invalid'); + }; + MandatoryIcon.prototype.onElementNotValidated = function (e) { + this.updateIconClasses(e.element, 'NotValidated'); + }; + // Remove the required icon when the field updates its status + MandatoryIcon.prototype.updateIconClasses = function (ele, status) { + var _a; + var icon = this.icons.get(ele); + if (icon && + this.iconClasses && + (this.iconClasses.valid || this.iconClasses.invalid || this.iconClasses.validating)) { + classSet(icon, (_a = {}, + _a[this.removedIcons[status]] = false, + _a[this.opts.icon] = false, + _a)); + } + }; + MandatoryIcon.prototype.onIconSet = function (e) { + var _a; + // Show the icon when the field is empty after resetting + var icon = this.icons.get(e.element); + if (!icon) { + return; + } + if ((e.status === 'NotValidated' && this.core.getElementValue(e.field, e.element) === '') || + e.status === 'Ignored') { + classSet(icon, (_a = {}, + _a[this.opts.icon] = this.isEnabled, + _a)); + } + }; + return MandatoryIcon; + }(core.Plugin)); + + return MandatoryIcon; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.min.js new file mode 100644 index 0000000..3c85a6a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mandatory-icon/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-mandatory-icon + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.MandatoryIcon=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},e(t,n)};var n=t.utils.classSet;return function(t){function i(e){var n=t.call(this,e)||this;return n.removedIcons={Invalid:"",NotValidated:"",Valid:"",Validating:""},n.icons=new Map,n.elementValidatingHandler=n.onElementValidating.bind(n),n.elementValidatedHandler=n.onElementValidated.bind(n),n.elementNotValidatedHandler=n.onElementNotValidated.bind(n),n.iconPlacedHandler=n.onIconPlaced.bind(n),n.iconSetHandler=n.onIconSet.bind(n),n}return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}(i,t),i.prototype.install=function(){this.core.on("core.element.validating",this.elementValidatingHandler).on("core.element.validated",this.elementValidatedHandler).on("core.element.notvalidated",this.elementNotValidatedHandler).on("plugins.icon.placed",this.iconPlacedHandler).on("plugins.icon.set",this.iconSetHandler)},i.prototype.uninstall=function(){this.icons.clear(),this.core.off("core.element.validating",this.elementValidatingHandler).off("core.element.validated",this.elementValidatedHandler).off("core.element.notvalidated",this.elementNotValidatedHandler).off("plugins.icon.placed",this.iconPlacedHandler).off("plugins.icon.set",this.iconSetHandler)},i.prototype.onEnabled=function(){var t=this;this.icons.forEach((function(e,i,o){var a;n(i,((a={})[t.opts.icon]=!0,a))}))},i.prototype.onDisabled=function(){var t=this;this.icons.forEach((function(e,i,o){var a;n(i,((a={})[t.opts.icon]=!1,a))}))},i.prototype.onIconPlaced=function(t){var e,i=this,o=this.core.getFields()[t.field].validators,a=this.core.getElements(t.field);if(o&&o.notEmpty&&!1!==o.notEmpty.enabled&&a.length){this.icons.set(t.element,t.iconElement);for(var l=a[0].getAttribute("type"),s=l?l.toLowerCase():"",d=0,c="checkbox"===s||"radio"===s?[a[0]]:a;d + */ + var classSet = core.utils.classSet; + // Support materialize CSS framework (https://materializecss.com/) + var Materialize = /** @class */ (function (_super) { + __extends(Materialize, _super); + function Materialize(opts) { + return _super.call(this, Object.assign({}, { + eleInvalidClass: 'validate invalid', + eleValidClass: 'validate valid', + formClass: 'fv-plugins-materialize', + messageClass: 'helper-text', + rowInvalidClass: 'fv-invalid-row', + rowPattern: /^(.*)col(\s+)s[0-9]+(.*)$/, + rowSelector: '.row', + rowValidClass: 'fv-valid-row', + }, opts)) || this; + } + Materialize.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + } + }; + return Materialize; + }(pluginFramework.Framework)); + + return Materialize; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-materialize/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-materialize/index.min.js new file mode 100644 index 0000000..385a06e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-materialize/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-materialize + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Materialize=t(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,t){"use strict";var o=function(e,t){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])},o(e,t)};var n=e.utils.classSet;return function(e){function t(t){return e.call(this,Object.assign({},{eleInvalidClass:"validate invalid",eleValidClass:"validate valid",formClass:"fv-plugins-materialize",messageClass:"helper-text",rowInvalidClass:"fv-invalid-row",rowPattern:/^(.*)col(\s+)s[0-9]+(.*)$/,rowSelector:".row",rowValidClass:"fv-valid-row"},t))||this}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,e),t.prototype.onIconPlaced=function(e){var t=e.element.getAttribute("type"),o=e.element.parentElement;"checkbox"!==t&&"radio"!==t||(o.parentElement.insertBefore(e.iconElement,o.nextSibling),n(e.iconElement,{"fv-plugins-icon-check":!0}))},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.js new file mode 100644 index 0000000..9dcec39 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.js @@ -0,0 +1,288 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Message = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var Message = /** @class */ (function (_super) { + __extends(Message, _super); + function Message(opts) { + var _this = _super.call(this, opts) || this; + _this.useDefaultContainer = false; + // Map the field element to message container + _this.messages = new Map(); + // By default, we will display error messages at the bottom of form + _this.defaultContainer = document.createElement('div'); + _this.useDefaultContainer = !opts || !opts.container; + _this.opts = Object.assign({}, { + container: function (_field, _element) { return _this.defaultContainer; }, + }, opts); + _this.elementIgnoredHandler = _this.onElementIgnored.bind(_this); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + _this.fieldRemovedHandler = _this.onFieldRemoved.bind(_this); + _this.validatorValidatedHandler = _this.onValidatorValidated.bind(_this); + _this.validatorNotValidatedHandler = _this.onValidatorNotValidated.bind(_this); + return _this; + } + /** + * Determine the closest element that its class matches with given pattern. + * In popular cases, all the fields might follow the same markup, so that closest element + * can be used as message container. + * + * For example, if we use the Bootstrap framework then the field often be placed inside a + * `col-{size}-{numberOfColumns}` class, we can register the plugin as following: + * ``` + * formValidation(form, { + * plugins: { + * message: new Message({ + * container: function(field, element) { + * return Message.getClosestContainer(element, form, /^(.*)(col|offset)-(xs|sm|md|lg)-[0-9]+(.*)$/) + * } + * }) + * } + * }) + * ``` + * + * @param element The field element + * @param upper The upper element, so we don't have to look for the entire page + * @param pattern The pattern + * @return {HTMLElement} + */ + Message.getClosestContainer = function (element, upper, pattern) { + var ele = element; + while (ele) { + if (ele === upper) { + break; + } + ele = ele.parentElement; + if (pattern.test(ele.className)) { + break; + } + } + return ele; + }; + Message.prototype.install = function () { + if (this.useDefaultContainer) { + this.core.getFormElement().appendChild(this.defaultContainer); + } + this.core + .on('core.element.ignored', this.elementIgnoredHandler) + .on('core.field.added', this.fieldAddedHandler) + .on('core.field.removed', this.fieldRemovedHandler) + .on('core.validator.validated', this.validatorValidatedHandler) + .on('core.validator.notvalidated', this.validatorNotValidatedHandler); + }; + Message.prototype.uninstall = function () { + if (this.useDefaultContainer) { + this.core.getFormElement().removeChild(this.defaultContainer); + } + this.messages.forEach(function (message) { return message.parentNode.removeChild(message); }); + this.messages.clear(); + this.core + .off('core.element.ignored', this.elementIgnoredHandler) + .off('core.field.added', this.fieldAddedHandler) + .off('core.field.removed', this.fieldRemovedHandler) + .off('core.validator.validated', this.validatorValidatedHandler) + .off('core.validator.notvalidated', this.validatorNotValidatedHandler); + }; + Message.prototype.onEnabled = function () { + this.messages.forEach(function (_element, message, _map) { + classSet(message, { + 'fv-plugins-message-container--enabled': true, + 'fv-plugins-message-container--disabled': false, + }); + }); + }; + Message.prototype.onDisabled = function () { + this.messages.forEach(function (_element, message, _map) { + classSet(message, { + 'fv-plugins-message-container--enabled': false, + 'fv-plugins-message-container--disabled': true, + }); + }); + }; + // Prepare message container for new added field + Message.prototype.onFieldAdded = function (e) { + var _this = this; + var elements = e.elements; + if (elements) { + elements.forEach(function (ele) { + var msg = _this.messages.get(ele); + if (msg) { + msg.parentNode.removeChild(msg); + _this.messages.delete(ele); + } + }); + this.prepareFieldContainer(e.field, elements); + } + }; + // When a field is removed, we remove all error messages that associates with the field + Message.prototype.onFieldRemoved = function (e) { + var _this = this; + if (!e.elements.length || !e.field) { + return; + } + var type = e.elements[0].getAttribute('type'); + var elements = 'radio' === type || 'checkbox' === type ? [e.elements[0]] : e.elements; + elements.forEach(function (ele) { + if (_this.messages.has(ele)) { + var container = _this.messages.get(ele); + container.parentNode.removeChild(container); + _this.messages.delete(ele); + } + }); + }; + Message.prototype.prepareFieldContainer = function (field, elements) { + var _this = this; + if (elements.length) { + var type = elements[0].getAttribute('type'); + if ('radio' === type || 'checkbox' === type) { + this.prepareElementContainer(field, elements[0], elements); + } + else { + elements.forEach(function (ele) { return _this.prepareElementContainer(field, ele, elements); }); + } + } + }; + Message.prototype.prepareElementContainer = function (field, element, elements) { + var container; + if ('string' === typeof this.opts.container) { + var selector = '#' === this.opts.container.charAt(0) + ? "[id=\"".concat(this.opts.container.substring(1), "\"]") + : this.opts.container; + container = this.core.getFormElement().querySelector(selector); + } + else { + container = this.opts.container(field, element); + } + var message = document.createElement('div'); + container.appendChild(message); + classSet(message, { + 'fv-plugins-message-container': true, + 'fv-plugins-message-container--enabled': this.isEnabled, + 'fv-plugins-message-container--disabled': !this.isEnabled, + }); + this.core.emit('plugins.message.placed', { + element: element, + elements: elements, + field: field, + messageElement: message, + }); + this.messages.set(element, message); + }; + Message.prototype.getMessage = function (result) { + return typeof result.message === 'string' ? result.message : result.message[this.core.getLocale()]; + }; + Message.prototype.onValidatorValidated = function (e) { + var _a; + var elements = e.elements; + var type = e.element.getAttribute('type'); + var element = ('radio' === type || 'checkbox' === type) && elements.length > 0 ? elements[0] : e.element; + if (this.messages.has(element)) { + var container = this.messages.get(element); + var messageEle = container.querySelector("[data-field=\"".concat(e.field.replace(/"/g, '\\"'), "\"][data-validator=\"").concat(e.validator.replace(/"/g, '\\"'), "\"]")); + if (!messageEle && !e.result.valid) { + var ele = document.createElement('div'); + ele.innerHTML = this.getMessage(e.result); + ele.setAttribute('data-field', e.field); + ele.setAttribute('data-validator', e.validator); + if (this.opts.clazz) { + classSet(ele, (_a = {}, + _a[this.opts.clazz] = true, + _a)); + } + container.appendChild(ele); + this.core.emit('plugins.message.displayed', { + element: e.element, + field: e.field, + message: e.result.message, + messageElement: ele, + meta: e.result.meta, + validator: e.validator, + }); + } + else if (messageEle && !e.result.valid) { + // The validator returns new message + messageEle.innerHTML = this.getMessage(e.result); + this.core.emit('plugins.message.displayed', { + element: e.element, + field: e.field, + message: e.result.message, + messageElement: messageEle, + meta: e.result.meta, + validator: e.validator, + }); + } + else if (messageEle && e.result.valid) { + // Field is valid + container.removeChild(messageEle); + } + } + }; + Message.prototype.onValidatorNotValidated = function (e) { + var elements = e.elements; + var type = e.element.getAttribute('type'); + var element = 'radio' === type || 'checkbox' === type ? elements[0] : e.element; + if (this.messages.has(element)) { + var container = this.messages.get(element); + var messageEle = container.querySelector("[data-field=\"".concat(e.field.replace(/"/g, '\\"'), "\"][data-validator=\"").concat(e.validator.replace(/"/g, '\\"'), "\"]")); + if (messageEle) { + container.removeChild(messageEle); + } + } + }; + Message.prototype.onElementIgnored = function (e) { + var elements = e.elements; + var type = e.element.getAttribute('type'); + var element = 'radio' === type || 'checkbox' === type ? elements[0] : e.element; + if (this.messages.has(element)) { + var container_1 = this.messages.get(element); + var messageElements = [].slice.call(container_1.querySelectorAll("[data-field=\"".concat(e.field.replace(/"/g, '\\"'), "\"]"))); + messageElements.forEach(function (messageEle) { + container_1.removeChild(messageEle); + }); + } + }; + return Message; + }(core.Plugin)); + + return Message; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.min.js new file mode 100644 index 0000000..6249e62 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-message/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-message + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Message=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,a){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a])},t(e,a)};var a=e.utils.classSet;return function(e){function n(t){var a=e.call(this,t)||this;return a.useDefaultContainer=!1,a.messages=new Map,a.defaultContainer=document.createElement("div"),a.useDefaultContainer=!t||!t.container,a.opts=Object.assign({},{container:function(e,t){return a.defaultContainer}},t),a.elementIgnoredHandler=a.onElementIgnored.bind(a),a.fieldAddedHandler=a.onFieldAdded.bind(a),a.fieldRemovedHandler=a.onFieldRemoved.bind(a),a.validatorValidatedHandler=a.onValidatorValidated.bind(a),a.validatorNotValidatedHandler=a.onValidatorNotValidated.bind(a),a}return function(e,a){if("function"!=typeof a&&null!==a)throw new TypeError("Class extends value "+String(a)+" is not a constructor or null");function n(){this.constructor=e}t(e,a),e.prototype=null===a?Object.create(a):(n.prototype=a.prototype,new n)}(n,e),n.getClosestContainer=function(e,t,a){for(var n=e;n&&n!==t&&(n=n.parentElement,!a.test(n.className)););return n},n.prototype.install=function(){this.useDefaultContainer&&this.core.getFormElement().appendChild(this.defaultContainer),this.core.on("core.element.ignored",this.elementIgnoredHandler).on("core.field.added",this.fieldAddedHandler).on("core.field.removed",this.fieldRemovedHandler).on("core.validator.validated",this.validatorValidatedHandler).on("core.validator.notvalidated",this.validatorNotValidatedHandler)},n.prototype.uninstall=function(){this.useDefaultContainer&&this.core.getFormElement().removeChild(this.defaultContainer),this.messages.forEach((function(e){return e.parentNode.removeChild(e)})),this.messages.clear(),this.core.off("core.element.ignored",this.elementIgnoredHandler).off("core.field.added",this.fieldAddedHandler).off("core.field.removed",this.fieldRemovedHandler).off("core.validator.validated",this.validatorValidatedHandler).off("core.validator.notvalidated",this.validatorNotValidatedHandler)},n.prototype.onEnabled=function(){this.messages.forEach((function(e,t,n){a(t,{"fv-plugins-message-container--enabled":!0,"fv-plugins-message-container--disabled":!1})}))},n.prototype.onDisabled=function(){this.messages.forEach((function(e,t,n){a(t,{"fv-plugins-message-container--enabled":!1,"fv-plugins-message-container--disabled":!0})}))},n.prototype.onFieldAdded=function(e){var t=this,a=e.elements;a&&(a.forEach((function(e){var a=t.messages.get(e);a&&(a.parentNode.removeChild(a),t.messages.delete(e))})),this.prepareFieldContainer(e.field,a))},n.prototype.onFieldRemoved=function(e){var t=this;if(e.elements.length&&e.field){var a=e.elements[0].getAttribute("type");("radio"===a||"checkbox"===a?[e.elements[0]]:e.elements).forEach((function(e){if(t.messages.has(e)){var a=t.messages.get(e);a.parentNode.removeChild(a),t.messages.delete(e)}}))}},n.prototype.prepareFieldContainer=function(e,t){var a=this;if(t.length){var n=t[0].getAttribute("type");"radio"===n||"checkbox"===n?this.prepareElementContainer(e,t[0],t):t.forEach((function(n){return a.prepareElementContainer(e,n,t)}))}},n.prototype.prepareElementContainer=function(e,t,n){var i;if("string"==typeof this.opts.container){var o="#"===this.opts.container.charAt(0)?'[id="'.concat(this.opts.container.substring(1),'"]'):this.opts.container;i=this.core.getFormElement().querySelector(o)}else i=this.opts.container(e,t);var r=document.createElement("div");i.appendChild(r),a(r,{"fv-plugins-message-container":!0,"fv-plugins-message-container--enabled":this.isEnabled,"fv-plugins-message-container--disabled":!this.isEnabled}),this.core.emit("plugins.message.placed",{element:t,elements:n,field:e,messageElement:r}),this.messages.set(t,r)},n.prototype.getMessage=function(e){return"string"==typeof e.message?e.message:e.message[this.core.getLocale()]},n.prototype.onValidatorValidated=function(e){var t,n=e.elements,i=e.element.getAttribute("type"),o=("radio"===i||"checkbox"===i)&&n.length>0?n[0]:e.element;if(this.messages.has(o)){var r=this.messages.get(o),s=r.querySelector('[data-field="'.concat(e.field.replace(/"/g,'\\"'),'"][data-validator="').concat(e.validator.replace(/"/g,'\\"'),'"]'));if(s||e.result.valid)s&&!e.result.valid?(s.innerHTML=this.getMessage(e.result),this.core.emit("plugins.message.displayed",{element:e.element,field:e.field,message:e.result.message,messageElement:s,meta:e.result.meta,validator:e.validator})):s&&e.result.valid&&r.removeChild(s);else{var l=document.createElement("div");l.innerHTML=this.getMessage(e.result),l.setAttribute("data-field",e.field),l.setAttribute("data-validator",e.validator),this.opts.clazz&&a(l,((t={})[this.opts.clazz]=!0,t)),r.appendChild(l),this.core.emit("plugins.message.displayed",{element:e.element,field:e.field,message:e.result.message,messageElement:l,meta:e.result.meta,validator:e.validator})}}},n.prototype.onValidatorNotValidated=function(e){var t=e.elements,a=e.element.getAttribute("type"),n="radio"===a||"checkbox"===a?t[0]:e.element;if(this.messages.has(n)){var i=this.messages.get(n),o=i.querySelector('[data-field="'.concat(e.field.replace(/"/g,'\\"'),'"][data-validator="').concat(e.validator.replace(/"/g,'\\"'),'"]'));o&&i.removeChild(o)}},n.prototype.onElementIgnored=function(e){var t=e.elements,a=e.element.getAttribute("type"),n="radio"===a||"checkbox"===a?t[0]:e.element;if(this.messages.has(n)){var i=this.messages.get(n);[].slice.call(i.querySelectorAll('[data-field="'.concat(e.field.replace(/"/g,'\\"'),'"]'))).forEach((function(e){i.removeChild(e)}))}},n}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.js new file mode 100644 index 0000000..b884cbe --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.js @@ -0,0 +1,73 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Milligram = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + // Support Milligram framework (https://milligram.io/) + var Milligram = /** @class */ (function (_super) { + __extends(Milligram, _super); + function Milligram(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-milligram', + messageClass: 'fv-help-block', + rowInvalidClass: 'fv-invalid-row', + rowPattern: /^(.*)column(-offset)*-[0-9]+(.*)$/, + rowSelector: '.row', + rowValidClass: 'fv-valid-row', + }, opts)) || this; + } + Milligram.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + } + }; + return Milligram; + }(pluginFramework.Framework)); + + return Milligram; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.min.js new file mode 100644 index 0000000..f4a699a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-milligram/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-milligram + * @version 2.4.0 + */ + +!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Milligram=t(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,t){"use strict";var e=function(o,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,t){o.__proto__=t}||function(o,t){for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(o[e]=t[e])},e(o,t)};var n=o.utils.classSet;return function(o){function t(t){return o.call(this,Object.assign({},{formClass:"fv-plugins-milligram",messageClass:"fv-help-block",rowInvalidClass:"fv-invalid-row",rowPattern:/^(.*)column(-offset)*-[0-9]+(.*)$/,rowSelector:".row",rowValidClass:"fv-valid-row"},t))||this}return function(o,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=o}e(o,t),o.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,o),t.prototype.onIconPlaced=function(o){var t=o.element.getAttribute("type"),e=o.element.parentElement;"checkbox"!==t&&"radio"!==t||(e.parentElement.insertBefore(o.iconElement,e.nextSibling),n(o.iconElement,{"fv-plugins-icon-check":!0}))},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.js new file mode 100644 index 0000000..9ec3d74 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.js @@ -0,0 +1,73 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Mini = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + // Support mini.css framework (https://minicss.org) + var Mini = /** @class */ (function (_super) { + __extends(Mini, _super); + function Mini(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-mini', + messageClass: 'fv-help-block', + rowInvalidClass: 'fv-invalid-row', + rowPattern: /^(.*)col-(sm|md|lg|xl)(-offset)*-[0-9]+(.*)$/, + rowSelector: '.row', + rowValidClass: 'fv-valid-row', + }, opts)) || this; + } + Mini.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + } + }; + return Mini; + }(pluginFramework.Framework)); + + return Mini; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.min.js new file mode 100644 index 0000000..95a17f6 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mini/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-mini + * @version 2.4.0 + */ + +!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Mini=t(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,t){"use strict";var e=function(o,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,t){o.__proto__=t}||function(o,t){for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(o[e]=t[e])},e(o,t)};var n=o.utils.classSet;return function(o){function t(t){return o.call(this,Object.assign({},{formClass:"fv-plugins-mini",messageClass:"fv-help-block",rowInvalidClass:"fv-invalid-row",rowPattern:/^(.*)col-(sm|md|lg|xl)(-offset)*-[0-9]+(.*)$/,rowSelector:".row",rowValidClass:"fv-valid-row"},t))||this}return function(o,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=o}e(o,t),o.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,o),t.prototype.onIconPlaced=function(o){var t=o.element.getAttribute("type"),e=o.element.parentElement;"checkbox"!==t&&"radio"!==t||(e.parentElement.insertBefore(o.iconElement,e.nextSibling),n(o.iconElement,{"fv-plugins-icon-check":!0}))},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.js new file mode 100644 index 0000000..8a6049a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.js @@ -0,0 +1,73 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Mui = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + // Support Mui CSS framework (https://muicss.com/) + var Mui = /** @class */ (function (_super) { + __extends(Mui, _super); + function Mui(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-mui', + messageClass: 'fv-help-block', + rowInvalidClass: 'fv-invalid-row', + rowPattern: /^(.*)mui-col-(xs|md|lg|xl)(-offset)*-[0-9]+(.*)$/, + rowSelector: '.mui-row', + rowValidClass: 'fv-valid-row', + }, opts)) || this; + } + Mui.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + } + }; + return Mui; + }(pluginFramework.Framework)); + + return Mui; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.min.js new file mode 100644 index 0000000..93db2fa --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-mui/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-mui + * @version 2.4.0 + */ + +!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Mui=t(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,t){"use strict";var e=function(o,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,t){o.__proto__=t}||function(o,t){for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(o[e]=t[e])},e(o,t)};var n=o.utils.classSet;return function(o){function t(t){return o.call(this,Object.assign({},{formClass:"fv-plugins-mui",messageClass:"fv-help-block",rowInvalidClass:"fv-invalid-row",rowPattern:/^(.*)mui-col-(xs|md|lg|xl)(-offset)*-[0-9]+(.*)$/,rowSelector:".mui-row",rowValidClass:"fv-valid-row"},t))||this}return function(o,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=o}e(o,t),o.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,o),t.prototype.onIconPlaced=function(o){var t=o.element.getAttribute("type"),e=o.element.parentElement;"checkbox"!==t&&"radio"!==t||(e.parentElement.insertBefore(o.iconElement,e.nextSibling),n(o.iconElement,{"fv-plugins-icon-check":!0}))},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.js new file mode 100644 index 0000000..a3d079f --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.js @@ -0,0 +1,130 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.PasswordStrength = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var PasswordStrength = /** @class */ (function (_super) { + __extends(PasswordStrength, _super); + function PasswordStrength(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { + minimalScore: 3, + onValidated: function () { }, + }, opts); + _this.validatePassword = _this.checkPasswordStrength.bind(_this); + _this.validatorValidatedHandler = _this.onValidatorValidated.bind(_this); + return _this; + } + PasswordStrength.prototype.install = function () { + var _a; + this.core.registerValidator(PasswordStrength.PASSWORD_STRENGTH_VALIDATOR, this.validatePassword); + this.core.on('core.validator.validated', this.validatorValidatedHandler); + this.core.addField(this.opts.field, { + validators: (_a = {}, + _a[PasswordStrength.PASSWORD_STRENGTH_VALIDATOR] = { + message: this.opts.message, + minimalScore: this.opts.minimalScore, + }, + _a), + }); + }; + PasswordStrength.prototype.uninstall = function () { + this.core.off('core.validator.validated', this.validatorValidatedHandler); + // It's better if we can remove validator + this.core.disableValidator(this.opts.field, PasswordStrength.PASSWORD_STRENGTH_VALIDATOR); + }; + PasswordStrength.prototype.onEnabled = function () { + this.core.enableValidator(this.opts.field, PasswordStrength.PASSWORD_STRENGTH_VALIDATOR); + }; + PasswordStrength.prototype.onDisabled = function () { + this.core.disableValidator(this.opts.field, PasswordStrength.PASSWORD_STRENGTH_VALIDATOR); + }; + PasswordStrength.prototype.checkPasswordStrength = function () { + var _this = this; + return { + validate: function (input) { + var value = input.value; + if (value === '') { + return { + valid: true, + }; + } + var result = zxcvbn(value); + var score = result.score; + var message = result.feedback.warning || 'The password is weak'; + if (score < _this.opts.minimalScore) { + return { + message: message, + meta: { + message: message, + score: score, + }, + valid: false, + }; + } + else { + return { + meta: { + message: message, + score: score, + }, + valid: true, + }; + } + }, + }; + }; + PasswordStrength.prototype.onValidatorValidated = function (e) { + if (this.isEnabled && + e.field === this.opts.field && + e.validator === PasswordStrength.PASSWORD_STRENGTH_VALIDATOR && + e.result.meta) { + var message = e.result.meta['message']; + var score = e.result.meta['score']; + this.opts.onValidated(e.result.valid, message, score); + } + }; + PasswordStrength.PASSWORD_STRENGTH_VALIDATOR = '___PasswordStrengthValidator'; + return PasswordStrength; + }(core.Plugin)); + + return PasswordStrength; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.min.js new file mode 100644 index 0000000..d5a39d8 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-password-strength/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-password-strength + * @version 2.4.0 + */ + +!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.PasswordStrength=o(t.FormValidation))}(this,(function(t){"use strict";var o=function(t,e){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var e in o)Object.prototype.hasOwnProperty.call(o,e)&&(t[e]=o[e])},o(t,e)};return function(t){function e(o){var e=t.call(this,o)||this;return e.opts=Object.assign({},{minimalScore:3,onValidated:function(){}},o),e.validatePassword=e.checkPasswordStrength.bind(e),e.validatorValidatedHandler=e.onValidatorValidated.bind(e),e}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function i(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}(e,t),e.prototype.install=function(){var t;this.core.registerValidator(e.PASSWORD_STRENGTH_VALIDATOR,this.validatePassword),this.core.on("core.validator.validated",this.validatorValidatedHandler),this.core.addField(this.opts.field,{validators:(t={},t[e.PASSWORD_STRENGTH_VALIDATOR]={message:this.opts.message,minimalScore:this.opts.minimalScore},t)})},e.prototype.uninstall=function(){this.core.off("core.validator.validated",this.validatorValidatedHandler),this.core.disableValidator(this.opts.field,e.PASSWORD_STRENGTH_VALIDATOR)},e.prototype.onEnabled=function(){this.core.enableValidator(this.opts.field,e.PASSWORD_STRENGTH_VALIDATOR)},e.prototype.onDisabled=function(){this.core.disableValidator(this.opts.field,e.PASSWORD_STRENGTH_VALIDATOR)},e.prototype.checkPasswordStrength=function(){var t=this;return{validate:function(o){var e=o.value;if(""===e)return{valid:!0};var i=zxcvbn(e),a=i.score,r=i.feedback.warning||"The password is weak";return a + */ + var classSet = core.utils.classSet; + var Pure = /** @class */ (function (_super) { + __extends(Pure, _super); + function Pure(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-pure', + messageClass: 'fv-help-block', + rowInvalidClass: 'fv-has-error', + rowPattern: /^.*pure-control-group.*$/, + rowSelector: '.pure-control-group', + rowValidClass: 'fv-has-success', + }, opts)) || this; + } + Pure.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var parent_1 = e.element.parentElement; + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + if ('LABEL' === parent_1.tagName) { + parent_1.parentElement.insertBefore(e.iconElement, parent_1.nextSibling); + } + } + }; + return Pure; + }(pluginFramework.Framework)); + + return Pure; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-pure/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-pure/index.min.js new file mode 100644 index 0000000..10cb8f3 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-pure/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-pure + * @version 2.4.0 + */ + +!function(o,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],e):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Pure=e(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,e){"use strict";var t=function(o,e){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,e){o.__proto__=e}||function(o,e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(o[t]=e[t])},t(o,e)};var n=o.utils.classSet;return function(o){function e(e){return o.call(this,Object.assign({},{formClass:"fv-plugins-pure",messageClass:"fv-help-block",rowInvalidClass:"fv-has-error",rowPattern:/^.*pure-control-group.*$/,rowSelector:".pure-control-group",rowValidClass:"fv-has-success"},e))||this}return function(o,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=o}t(o,e),o.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}(e,o),e.prototype.onIconPlaced=function(o){var e=o.element.getAttribute("type");if("checkbox"===e||"radio"===e){var t=o.element.parentElement;n(o.iconElement,{"fv-plugins-icon-check":!0}),"LABEL"===t.tagName&&t.parentElement.insertBefore(o.iconElement,t.nextSibling)}},e}(e.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.js new file mode 100644 index 0000000..b4a4b60 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.js @@ -0,0 +1,262 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Recaptcha = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var fetch = core.utils.fetch, removeUndefined = core.utils.removeUndefined; + /** + * This plugin shows and validates a Google reCAPTCHA v2 + * Usage: + * - Register a ReCaptcha API key + * - Prepare a container to show the captcha + * ``` + *
+ *
+ *
+ * ``` + * - Use the plugin + * ``` + * formValidation(document.getElementById('testForm'), { + * plugins: { + * recaptcha: new Recaptcha({ + * element: 'captchaContainer', + * theme: 'light', + * siteKey: '...', // The key provided by Google + * language: 'en', + * message: 'The captcha is not valid' + * }) + * } + * }) + * ``` + */ + var Recaptcha = /** @class */ (function (_super) { + __extends(Recaptcha, _super); + function Recaptcha(opts) { + var _this = _super.call(this, opts) || this; + _this.widgetIds = new Map(); + _this.captchaStatus = 'NotValidated'; + _this.opts = Object.assign({}, Recaptcha.DEFAULT_OPTIONS, removeUndefined(opts)); + _this.fieldResetHandler = _this.onResetField.bind(_this); + _this.preValidateFilter = _this.preValidate.bind(_this); + _this.iconPlacedHandler = _this.onIconPlaced.bind(_this); + return _this; + } + Recaptcha.prototype.install = function () { + var _this = this; + this.core + .on('core.field.reset', this.fieldResetHandler) + .on('plugins.icon.placed', this.iconPlacedHandler) + .registerFilter('validate-pre', this.preValidateFilter); + var loadPrevCaptcha = typeof window[Recaptcha.LOADED_CALLBACK] === 'undefined' ? function () { } : window[Recaptcha.LOADED_CALLBACK]; + window[Recaptcha.LOADED_CALLBACK] = function () { + // Call the previous loaded function + // to support multiple recaptchas on the same page + loadPrevCaptcha(); + var captchaOptions = { + badge: _this.opts.badge, + callback: function () { + if (_this.opts.backendVerificationUrl === '') { + _this.captchaStatus = 'Valid'; + // Mark the captcha as valid, so the library will remove the error message + _this.core.updateFieldStatus(Recaptcha.CAPTCHA_FIELD, 'Valid'); + } + }, + 'error-callback': function () { + _this.captchaStatus = 'Invalid'; + _this.core.updateFieldStatus(Recaptcha.CAPTCHA_FIELD, 'Invalid'); + }, + 'expired-callback': function () { + // Update the captcha status when session expires + _this.captchaStatus = 'NotValidated'; + _this.core.updateFieldStatus(Recaptcha.CAPTCHA_FIELD, 'NotValidated'); + }, + sitekey: _this.opts.siteKey, + size: _this.opts.size, + }; + var widgetId = window['grecaptcha'].render(_this.opts.element, captchaOptions); + _this.widgetIds.set(_this.opts.element, widgetId); + _this.core.addField(Recaptcha.CAPTCHA_FIELD, { + validators: { + promise: { + message: _this.opts.message, + promise: function (input) { + var _a; + var value = _this.widgetIds.has(_this.opts.element) + ? window['grecaptcha'].getResponse(_this.widgetIds.get(_this.opts.element)) + : input.value; + if (value === '') { + _this.captchaStatus = 'Invalid'; + return Promise.resolve({ + valid: false, + }); + } + else if (_this.opts.backendVerificationUrl === '') { + _this.captchaStatus = 'Valid'; + return Promise.resolve({ + valid: true, + }); + } + else if (_this.captchaStatus === 'Valid') { + // Do not need to send the back-end verification request if the captcha is already valid + return Promise.resolve({ + valid: true, + }); + } + else { + return fetch(_this.opts.backendVerificationUrl, { + method: 'POST', + params: (_a = {}, + _a[Recaptcha.CAPTCHA_FIELD] = value, + _a), + }) + .then(function (response) { + var isValid = "".concat(response['success']) === 'true'; + _this.captchaStatus = isValid ? 'Valid' : 'Invalid'; + return Promise.resolve({ + meta: response, + valid: isValid, + }); + }) + .catch(function (_reason) { + _this.captchaStatus = 'NotValidated'; + return Promise.reject({ + valid: false, + }); + }); + } + }, + }, + }, + }); + }; + var src = this.getScript(); + if (!document.body.querySelector("script[src=\"".concat(src, "\"]"))) { + var script = document.createElement('script'); + script.type = 'text/javascript'; + script.async = true; + script.defer = true; + script.src = src; + document.body.appendChild(script); + } + }; + Recaptcha.prototype.uninstall = function () { + delete window[Recaptcha.LOADED_CALLBACK]; + if (this.timer) { + clearTimeout(this.timer); + } + this.core + .off('core.field.reset', this.fieldResetHandler) + .off('plugins.icon.placed', this.iconPlacedHandler) + .deregisterFilter('validate-pre', this.preValidateFilter); + this.widgetIds.clear(); + // Remove script + var src = this.getScript(); + var scripts = [].slice.call(document.body.querySelectorAll("script[src=\"".concat(src, "\"]"))); + scripts.forEach(function (s) { return s.parentNode.removeChild(s); }); + this.core.removeField(Recaptcha.CAPTCHA_FIELD); + }; + Recaptcha.prototype.onEnabled = function () { + this.core.enableValidator(Recaptcha.CAPTCHA_FIELD, 'promise'); + }; + Recaptcha.prototype.onDisabled = function () { + this.core.disableValidator(Recaptcha.CAPTCHA_FIELD, 'promise'); + }; + Recaptcha.prototype.getScript = function () { + var lang = this.opts.language ? "&hl=".concat(this.opts.language) : ''; + return "https://www.google.com/recaptcha/api.js?onload=".concat(Recaptcha.LOADED_CALLBACK, "&render=explicit").concat(lang); + }; + Recaptcha.prototype.preValidate = function () { + var _this = this; + // grecaptcha.execute() is only available for invisible reCAPTCHA + if (this.isEnabled && this.opts.size === 'invisible' && this.widgetIds.has(this.opts.element)) { + var widgetId_1 = this.widgetIds.get(this.opts.element); + return this.captchaStatus === 'Valid' + ? Promise.resolve() + : new Promise(function (resolve, _reject) { + window['grecaptcha'].execute(widgetId_1).then(function () { + if (_this.timer) { + clearTimeout(_this.timer); + } + _this.timer = window.setTimeout(resolve, 1 * 1000); + }); + }); + } + else { + return Promise.resolve(); + } + }; + Recaptcha.prototype.onResetField = function (e) { + if (e.field === Recaptcha.CAPTCHA_FIELD && this.widgetIds.has(this.opts.element)) { + var widgetId = this.widgetIds.get(this.opts.element); + window['grecaptcha'].reset(widgetId); + } + }; + Recaptcha.prototype.onIconPlaced = function (e) { + if (e.field === Recaptcha.CAPTCHA_FIELD) { + // Hide the icon for captcha element, since it will look weird when the captcha is valid + if (this.opts.size === 'invisible') { + e.iconElement.style.display = 'none'; + } + else { + var captchaContainer = document.getElementById(this.opts.element); + // We need to move the icon element to after the captcha container + // Otherwise, the icon will be removed when the captcha is re-rendered (after it's expired) + if (captchaContainer) { + captchaContainer.parentNode.insertBefore(e.iconElement, captchaContainer.nextSibling); + } + } + } + }; + // The captcha field name, generated by Google reCAPTCHA + Recaptcha.CAPTCHA_FIELD = 'g-recaptcha-response'; + Recaptcha.DEFAULT_OPTIONS = { + backendVerificationUrl: '', + badge: 'bottomright', + size: 'normal', + theme: 'light', + }; + // The name of callback that will be executed after reCaptcha script is loaded + Recaptcha.LOADED_CALLBACK = '___reCaptchaLoaded___'; + return Recaptcha; + }(core.Plugin)); + + return Recaptcha; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.min.js new file mode 100644 index 0000000..b7ca126 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-recaptcha + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Recaptcha=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},t(e,i)};var i=e.utils.fetch,o=e.utils.removeUndefined;return function(e){function a(t){var i=e.call(this,t)||this;return i.widgetIds=new Map,i.captchaStatus="NotValidated",i.opts=Object.assign({},a.DEFAULT_OPTIONS,o(t)),i.fieldResetHandler=i.onResetField.bind(i),i.preValidateFilter=i.preValidate.bind(i),i.iconPlacedHandler=i.onIconPlaced.bind(i),i}return function(e,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}(a,e),a.prototype.install=function(){var e=this;this.core.on("core.field.reset",this.fieldResetHandler).on("plugins.icon.placed",this.iconPlacedHandler).registerFilter("validate-pre",this.preValidateFilter);var t=void 0===window[a.LOADED_CALLBACK]?function(){}:window[a.LOADED_CALLBACK];window[a.LOADED_CALLBACK]=function(){t();var o={badge:e.opts.badge,callback:function(){""===e.opts.backendVerificationUrl&&(e.captchaStatus="Valid",e.core.updateFieldStatus(a.CAPTCHA_FIELD,"Valid"))},"error-callback":function(){e.captchaStatus="Invalid",e.core.updateFieldStatus(a.CAPTCHA_FIELD,"Invalid")},"expired-callback":function(){e.captchaStatus="NotValidated",e.core.updateFieldStatus(a.CAPTCHA_FIELD,"NotValidated")},sitekey:e.opts.siteKey,size:e.opts.size},n=window.grecaptcha.render(e.opts.element,o);e.widgetIds.set(e.opts.element,n),e.core.addField(a.CAPTCHA_FIELD,{validators:{promise:{message:e.opts.message,promise:function(t){var o,n=e.widgetIds.has(e.opts.element)?window.grecaptcha.getResponse(e.widgetIds.get(e.opts.element)):t.value;return""===n?(e.captchaStatus="Invalid",Promise.resolve({valid:!1})):""===e.opts.backendVerificationUrl?(e.captchaStatus="Valid",Promise.resolve({valid:!0})):"Valid"===e.captchaStatus?Promise.resolve({valid:!0}):i(e.opts.backendVerificationUrl,{method:"POST",params:(o={},o[a.CAPTCHA_FIELD]=n,o)}).then((function(t){var i="true"==="".concat(t.success);return e.captchaStatus=i?"Valid":"Invalid",Promise.resolve({meta:t,valid:i})})).catch((function(t){return e.captchaStatus="NotValidated",Promise.reject({valid:!1})}))}}}})};var o=this.getScript();if(!document.body.querySelector('script[src="'.concat(o,'"]'))){var n=document.createElement("script");n.type="text/javascript",n.async=!0,n.defer=!0,n.src=o,document.body.appendChild(n)}},a.prototype.uninstall=function(){delete window[a.LOADED_CALLBACK],this.timer&&clearTimeout(this.timer),this.core.off("core.field.reset",this.fieldResetHandler).off("plugins.icon.placed",this.iconPlacedHandler).deregisterFilter("validate-pre",this.preValidateFilter),this.widgetIds.clear();var e=this.getScript();[].slice.call(document.body.querySelectorAll('script[src="'.concat(e,'"]'))).forEach((function(e){return e.parentNode.removeChild(e)})),this.core.removeField(a.CAPTCHA_FIELD)},a.prototype.onEnabled=function(){this.core.enableValidator(a.CAPTCHA_FIELD,"promise")},a.prototype.onDisabled=function(){this.core.disableValidator(a.CAPTCHA_FIELD,"promise")},a.prototype.getScript=function(){var e=this.opts.language?"&hl=".concat(this.opts.language):"";return"https://www.google.com/recaptcha/api.js?onload=".concat(a.LOADED_CALLBACK,"&render=explicit").concat(e)},a.prototype.preValidate=function(){var e=this;if(this.isEnabled&&"invisible"===this.opts.size&&this.widgetIds.has(this.opts.element)){var t=this.widgetIds.get(this.opts.element);return"Valid"===this.captchaStatus?Promise.resolve():new Promise((function(i,o){window.grecaptcha.execute(t).then((function(){e.timer&&clearTimeout(e.timer),e.timer=window.setTimeout(i,1e3)}))}))}return Promise.resolve()},a.prototype.onResetField=function(e){if(e.field===a.CAPTCHA_FIELD&&this.widgetIds.has(this.opts.element)){var t=this.widgetIds.get(this.opts.element);window.grecaptcha.reset(t)}},a.prototype.onIconPlaced=function(e){if(e.field===a.CAPTCHA_FIELD)if("invisible"===this.opts.size)e.iconElement.style.display="none";else{var t=document.getElementById(this.opts.element);t&&t.parentNode.insertBefore(e.iconElement,t.nextSibling)}},a.CAPTCHA_FIELD="g-recaptcha-response",a.DEFAULT_OPTIONS={backendVerificationUrl:"",badge:"bottomright",size:"normal",theme:"light"},a.LOADED_CALLBACK="___reCaptchaLoaded___",a}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.js new file mode 100644 index 0000000..cda5c22 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.js @@ -0,0 +1,116 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Recaptcha3Token = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var Recaptcha3Token = /** @class */ (function (_super) { + __extends(Recaptcha3Token, _super); + function Recaptcha3Token(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { + action: 'submit', + hiddenTokenName: '___hidden-token___', + }, opts); + _this.onValidHandler = _this.onFormValid.bind(_this); + return _this; + } + Recaptcha3Token.prototype.install = function () { + this.core.on('core.form.valid', this.onValidHandler); + // Add a hidden field to the form + this.hiddenTokenEle = document.createElement('input'); + this.hiddenTokenEle.setAttribute('type', 'hidden'); + this.core.getFormElement().appendChild(this.hiddenTokenEle); + var loadPrevCaptcha = typeof window[Recaptcha3Token.LOADED_CALLBACK] === 'undefined' + ? function () { } + : window[Recaptcha3Token.LOADED_CALLBACK]; + window[Recaptcha3Token.LOADED_CALLBACK] = function () { + // Call the previous loaded function + // to support multiple recaptchas on the same page + loadPrevCaptcha(); + }; + var src = this.getScript(); + if (!document.body.querySelector("script[src=\"".concat(src, "\"]"))) { + var script = document.createElement('script'); + script.type = 'text/javascript'; + script.async = true; + script.defer = true; + script.src = src; + document.body.appendChild(script); + } + }; + Recaptcha3Token.prototype.uninstall = function () { + delete window[Recaptcha3Token.LOADED_CALLBACK]; + this.core.off('core.form.valid', this.onValidHandler); + // Remove script + var src = this.getScript(); + var scripts = [].slice.call(document.body.querySelectorAll("script[src=\"".concat(src, "\"]"))); + scripts.forEach(function (s) { return s.parentNode.removeChild(s); }); + // Remove hidden field from the form element + this.core.getFormElement().removeChild(this.hiddenTokenEle); + }; + Recaptcha3Token.prototype.onFormValid = function () { + var _this = this; + if (!this.isEnabled) { + return; + } + // Send recaptcha request + window['grecaptcha'].execute(this.opts.siteKey, { action: this.opts.action }).then(function (token) { + _this.hiddenTokenEle.setAttribute('name', _this.opts.hiddenTokenName); + _this.hiddenTokenEle.value = token; + // Submit the form + var form = _this.core.getFormElement(); + if (form instanceof HTMLFormElement) { + form.submit(); + } + }); + }; + Recaptcha3Token.prototype.getScript = function () { + var lang = this.opts.language ? "&hl=".concat(this.opts.language) : ''; + return ('https://www.google.com/recaptcha/api.js?' + + "onload=".concat(Recaptcha3Token.LOADED_CALLBACK, "&render=").concat(this.opts.siteKey).concat(lang)); + }; + // The name of callback that will be executed after reCaptcha script is loaded + Recaptcha3Token.LOADED_CALLBACK = '___reCaptcha3TokenLoaded___'; + return Recaptcha3Token; + }(core.Plugin)); + + return Recaptcha3Token; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.min.js new file mode 100644 index 0000000..307a0eb --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3-token/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-recaptcha3-token + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Recaptcha3Token=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,o){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])},e(t,o)};return function(t){function o(e){var o=t.call(this,e)||this;return o.opts=Object.assign({},{action:"submit",hiddenTokenName:"___hidden-token___"},e),o.onValidHandler=o.onFormValid.bind(o),o}return function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function n(){this.constructor=t}e(t,o),t.prototype=null===o?Object.create(o):(n.prototype=o.prototype,new n)}(o,t),o.prototype.install=function(){this.core.on("core.form.valid",this.onValidHandler),this.hiddenTokenEle=document.createElement("input"),this.hiddenTokenEle.setAttribute("type","hidden"),this.core.getFormElement().appendChild(this.hiddenTokenEle);var t=void 0===window[o.LOADED_CALLBACK]?function(){}:window[o.LOADED_CALLBACK];window[o.LOADED_CALLBACK]=function(){t()};var e=this.getScript();if(!document.body.querySelector('script[src="'.concat(e,'"]'))){var n=document.createElement("script");n.type="text/javascript",n.async=!0,n.defer=!0,n.src=e,document.body.appendChild(n)}},o.prototype.uninstall=function(){delete window[o.LOADED_CALLBACK],this.core.off("core.form.valid",this.onValidHandler);var t=this.getScript();[].slice.call(document.body.querySelectorAll('script[src="'.concat(t,'"]'))).forEach((function(t){return t.parentNode.removeChild(t)})),this.core.getFormElement().removeChild(this.hiddenTokenEle)},o.prototype.onFormValid=function(){var t=this;this.isEnabled&&window.grecaptcha.execute(this.opts.siteKey,{action:this.opts.action}).then((function(e){t.hiddenTokenEle.setAttribute("name",t.opts.hiddenTokenName),t.hiddenTokenEle.value=e;var o=t.core.getFormElement();o instanceof HTMLFormElement&&o.submit()}))},o.prototype.getScript=function(){var t=this.opts.language?"&hl=".concat(this.opts.language):"";return"https://www.google.com/recaptcha/api.js?"+"onload=".concat(o.LOADED_CALLBACK,"&render=").concat(this.opts.siteKey).concat(t)},o.LOADED_CALLBACK="___reCaptcha3TokenLoaded___",o}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.js new file mode 100644 index 0000000..d067d15 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.js @@ -0,0 +1,150 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Recaptcha3 = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var fetch = core.utils.fetch, removeUndefined = core.utils.removeUndefined; + var Recaptcha3 = /** @class */ (function (_super) { + __extends(Recaptcha3, _super); + function Recaptcha3(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { minimumScore: 0 }, removeUndefined(opts)); + _this.iconPlacedHandler = _this.onIconPlaced.bind(_this); + return _this; + } + Recaptcha3.prototype.install = function () { + var _this = this; + this.core.on('plugins.icon.placed', this.iconPlacedHandler); + var loadPrevCaptcha = typeof window[Recaptcha3.LOADED_CALLBACK] === 'undefined' ? function () { } : window[Recaptcha3.LOADED_CALLBACK]; + window[Recaptcha3.LOADED_CALLBACK] = function () { + // Call the previous loaded function + // to support multiple recaptchas on the same page + loadPrevCaptcha(); + // Add a hidden field to the form + var tokenField = document.createElement('input'); + tokenField.setAttribute('type', 'hidden'); + tokenField.setAttribute('name', Recaptcha3.CAPTCHA_FIELD); + document.getElementById(_this.opts.element).appendChild(tokenField); + _this.core.addField(Recaptcha3.CAPTCHA_FIELD, { + validators: { + promise: { + message: _this.opts.message, + promise: function (_input) { + return new Promise(function (resolve, reject) { + window['grecaptcha'] + .execute(_this.opts.siteKey, { + action: _this.opts.action, + }) + .then(function (token) { + var _a; + // Verify it + fetch(_this.opts.backendVerificationUrl, { + method: 'POST', + params: (_a = {}, + _a[Recaptcha3.CAPTCHA_FIELD] = token, + _a), + }) + .then(function (response) { + var isValid = "".concat(response.success) === 'true' && + response.score >= _this.opts.minimumScore; + resolve({ + message: response.message || _this.opts.message, + meta: response, + valid: isValid, + }); + }) + .catch(function (_) { + reject({ + valid: false, + }); + }); + }); + }); + }, + }, + }, + }); + }; + var src = this.getScript(); + if (!document.body.querySelector("script[src=\"".concat(src, "\"]"))) { + var script = document.createElement('script'); + script.type = 'text/javascript'; + script.async = true; + script.defer = true; + script.src = src; + document.body.appendChild(script); + } + }; + Recaptcha3.prototype.uninstall = function () { + delete window[Recaptcha3.LOADED_CALLBACK]; + this.core.off('plugins.icon.placed', this.iconPlacedHandler); + // Remove script + var src = this.getScript(); + var scripts = [].slice.call(document.body.querySelectorAll("script[src=\"".concat(src, "\"]"))); + scripts.forEach(function (s) { return s.parentNode.removeChild(s); }); + this.core.removeField(Recaptcha3.CAPTCHA_FIELD); + }; + Recaptcha3.prototype.onEnabled = function () { + this.core.enableValidator(Recaptcha3.CAPTCHA_FIELD, 'promise'); + }; + Recaptcha3.prototype.onDisabled = function () { + this.core.disableValidator(Recaptcha3.CAPTCHA_FIELD, 'promise'); + }; + Recaptcha3.prototype.getScript = function () { + var lang = this.opts.language ? "&hl=".concat(this.opts.language) : ''; + return ('https://www.google.com/recaptcha/api.js?' + + "onload=".concat(Recaptcha3.LOADED_CALLBACK, "&render=").concat(this.opts.siteKey).concat(lang)); + }; + Recaptcha3.prototype.onIconPlaced = function (e) { + if (e.field === Recaptcha3.CAPTCHA_FIELD) { + // Hide the icon for captcha element, since it will look weird when the captcha is valid + e.iconElement.style.display = 'none'; + } + }; + // The captcha field name + Recaptcha3.CAPTCHA_FIELD = '___g-recaptcha-token___'; + // The name of callback that will be executed after reCaptcha script is loaded + Recaptcha3.LOADED_CALLBACK = '___reCaptcha3Loaded___'; + return Recaptcha3; + }(core.Plugin)); + + return Recaptcha3; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.min.js new file mode 100644 index 0000000..1f87daa --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-recaptcha3/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-recaptcha3 + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Recaptcha3=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,o){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])},e(t,o)};var o=t.utils.fetch,n=t.utils.removeUndefined;return function(t){function i(e){var o=t.call(this,e)||this;return o.opts=Object.assign({},{minimumScore:0},n(e)),o.iconPlacedHandler=o.onIconPlaced.bind(o),o}return function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function n(){this.constructor=t}e(t,o),t.prototype=null===o?Object.create(o):(n.prototype=o.prototype,new n)}(i,t),i.prototype.install=function(){var t=this;this.core.on("plugins.icon.placed",this.iconPlacedHandler);var e=void 0===window[i.LOADED_CALLBACK]?function(){}:window[i.LOADED_CALLBACK];window[i.LOADED_CALLBACK]=function(){e();var n=document.createElement("input");n.setAttribute("type","hidden"),n.setAttribute("name",i.CAPTCHA_FIELD),document.getElementById(t.opts.element).appendChild(n),t.core.addField(i.CAPTCHA_FIELD,{validators:{promise:{message:t.opts.message,promise:function(e){return new Promise((function(e,n){window.grecaptcha.execute(t.opts.siteKey,{action:t.opts.action}).then((function(r){var c;o(t.opts.backendVerificationUrl,{method:"POST",params:(c={},c[i.CAPTCHA_FIELD]=r,c)}).then((function(o){var n="true"==="".concat(o.success)&&o.score>=t.opts.minimumScore;e({message:o.message||t.opts.message,meta:o,valid:n})})).catch((function(t){n({valid:!1})}))}))}))}}}})};var n=this.getScript();if(!document.body.querySelector('script[src="'.concat(n,'"]'))){var r=document.createElement("script");r.type="text/javascript",r.async=!0,r.defer=!0,r.src=n,document.body.appendChild(r)}},i.prototype.uninstall=function(){delete window[i.LOADED_CALLBACK],this.core.off("plugins.icon.placed",this.iconPlacedHandler);var t=this.getScript();[].slice.call(document.body.querySelectorAll('script[src="'.concat(t,'"]'))).forEach((function(t){return t.parentNode.removeChild(t)})),this.core.removeField(i.CAPTCHA_FIELD)},i.prototype.onEnabled=function(){this.core.enableValidator(i.CAPTCHA_FIELD,"promise")},i.prototype.onDisabled=function(){this.core.disableValidator(i.CAPTCHA_FIELD,"promise")},i.prototype.getScript=function(){var t=this.opts.language?"&hl=".concat(this.opts.language):"";return"https://www.google.com/recaptcha/api.js?"+"onload=".concat(i.LOADED_CALLBACK,"&render=").concat(this.opts.siteKey).concat(t)},i.prototype.onIconPlaced=function(t){t.field===i.CAPTCHA_FIELD&&(t.iconElement.style.display="none")},i.CAPTCHA_FIELD="___g-recaptcha-token___",i.LOADED_CALLBACK="___reCaptcha3Loaded___",i}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.js new file mode 100644 index 0000000..40fe7db --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.js @@ -0,0 +1,97 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Semantic = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet, hasClass = core.utils.hasClass; + var Semantic = /** @class */ (function (_super) { + __extends(Semantic, _super); + function Semantic(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-semantic', + // See https://semantic-ui.com/elements/label.html#pointing + messageClass: 'ui pointing red label', + rowInvalidClass: 'error', + rowPattern: /^.*(field|column).*$/, + rowSelector: '.fields', + rowValidClass: 'fv-has-success', + }, opts)) || this; + } + Semantic.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var parent_1 = e.element.parentElement; + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + parent_1.parentElement.insertBefore(e.iconElement, parent_1.nextSibling); + } + }; + Semantic.prototype.onMessagePlaced = function (e) { + var type = e.element.getAttribute('type'); + var numElements = e.elements.length; + if (('checkbox' === type || 'radio' === type) && numElements > 1) { + // Put the message at the end when there are multiple checkboxes/radios + //
+ //
+ // + //
+ //
+ // ... + //
+ //
+ // + //
+ // <-- The error message will be placed here --> + //
+ // Get the last checkbox + var last = e.elements[numElements - 1]; + var parent_2 = last.parentElement; + if (hasClass(parent_2, type) && hasClass(parent_2, 'ui')) { + parent_2.parentElement.insertBefore(e.messageElement, parent_2.nextSibling); + } + } + }; + return Semantic; + }(pluginFramework.Framework)); + + return Semantic; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.min.js new file mode 100644 index 0000000..cf46d57 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-semantic/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-semantic + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Semantic=t(e.FormValidation,e.FormValidation.plugins))}(this,(function(e,t){"use strict";var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},n(e,t)};var o=e.utils.classSet,i=e.utils.hasClass;return function(e){function t(t){return e.call(this,Object.assign({},{formClass:"fv-plugins-semantic",messageClass:"ui pointing red label",rowInvalidClass:"error",rowPattern:/^.*(field|column).*$/,rowSelector:".fields",rowValidClass:"fv-has-success"},t))||this}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function o(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}(t,e),t.prototype.onIconPlaced=function(e){var t=e.element.getAttribute("type");if("checkbox"===t||"radio"===t){var n=e.element.parentElement;o(e.iconElement,{"fv-plugins-icon-check":!0}),n.parentElement.insertBefore(e.iconElement,n.nextSibling)}},t.prototype.onMessagePlaced=function(e){var t=e.element.getAttribute("type"),n=e.elements.length;if(("checkbox"===t||"radio"===t)&&n>1){var o=e.elements[n-1].parentElement;i(o,t)&&i(o,"ui")&&o.parentElement.insertBefore(e.messageElement,o.nextSibling)}},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.js new file mode 100644 index 0000000..1efb04c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.js @@ -0,0 +1,146 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Sequence = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + /** + * ``` + * new Core(form, { ... }) + * .registerPlugin('sequence', new Sequence({ + * enabled: false // Default value is `true` + * })); + * ``` + * + * The `enabled` option can be: + * - `true` (default): When a field has multiple validators, all of them will be checked respectively. + * If errors occur in multiple validators, all of them will be displayed to the user + * - `false`: When a field has multiple validators, validation for this field will be terminated upon the + * first encountered error. + * Thus, only the very first error message related to this field will be displayed to the user + * + * User can set the `enabled` option to all fields as sample code above, or apply it for specific fields as following: + * ``` + * new Core(form, { ... }) + * .registerPlugin('sequence', new Sequence({ + * enabled: { + * fullName: true, // It's not necessary since the default value is `true` + * username: false, + * email: false + * } + * })); + * ``` + */ + var Sequence = /** @class */ (function (_super) { + __extends(Sequence, _super); + function Sequence(opts) { + var _this = _super.call(this, opts) || this; + _this.invalidFields = new Map(); + _this.opts = Object.assign({}, { enabled: true }, removeUndefined(opts)); + _this.validatorHandler = _this.onValidatorValidated.bind(_this); + _this.shouldValidateFilter = _this.shouldValidate.bind(_this); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + _this.elementNotValidatedHandler = _this.onElementNotValidated.bind(_this); + _this.elementValidatingHandler = _this.onElementValidating.bind(_this); + return _this; + } + Sequence.prototype.install = function () { + this.core + .on('core.validator.validated', this.validatorHandler) + .on('core.field.added', this.fieldAddedHandler) + .on('core.element.notvalidated', this.elementNotValidatedHandler) + .on('core.element.validating', this.elementValidatingHandler) + .registerFilter('field-should-validate', this.shouldValidateFilter); + }; + Sequence.prototype.uninstall = function () { + this.invalidFields.clear(); + this.core + .off('core.validator.validated', this.validatorHandler) + .off('core.field.added', this.fieldAddedHandler) + .off('core.element.notvalidated', this.elementNotValidatedHandler) + .off('core.element.validating', this.elementValidatingHandler) + .deregisterFilter('field-should-validate', this.shouldValidateFilter); + }; + Sequence.prototype.shouldValidate = function (field, element, _value, validator) { + if (!this.isEnabled) { + return true; + } + // Stop validating + // if the `enabled` option is set to `false` + // and there's at least one validator that field doesn't pass + var stop = (this.opts.enabled === true || this.opts.enabled[field] === true) && + this.invalidFields.has(element) && + !!this.invalidFields.get(element).length && + this.invalidFields.get(element).indexOf(validator) === -1; + return !stop; + }; + Sequence.prototype.onValidatorValidated = function (e) { + var validators = this.invalidFields.has(e.element) ? this.invalidFields.get(e.element) : []; + var index = validators.indexOf(e.validator); + if (e.result.valid && index >= 0) { + validators.splice(index, 1); + } + else if (!e.result.valid && index === -1) { + validators.push(e.validator); + } + this.invalidFields.set(e.element, validators); + }; + Sequence.prototype.onFieldAdded = function (e) { + // Remove the field element from set of invalid elements + if (e.elements) { + this.clearInvalidFields(e.elements); + } + }; + Sequence.prototype.onElementNotValidated = function (e) { + this.clearInvalidFields(e.elements); + }; + Sequence.prototype.onElementValidating = function (e) { + this.clearInvalidFields(e.elements); + }; + Sequence.prototype.clearInvalidFields = function (elements) { + var _this = this; + elements.forEach(function (ele) { return _this.invalidFields.delete(ele); }); + }; + return Sequence; + }(core.Plugin)); + + return Sequence; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.min.js new file mode 100644 index 0000000..b0bd8e4 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-sequence/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-sequence + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Sequence=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},t(e,i)};var i=e.utils.removeUndefined;return function(e){function l(t){var l=e.call(this,t)||this;return l.invalidFields=new Map,l.opts=Object.assign({},{enabled:!0},i(t)),l.validatorHandler=l.onValidatorValidated.bind(l),l.shouldValidateFilter=l.shouldValidate.bind(l),l.fieldAddedHandler=l.onFieldAdded.bind(l),l.elementNotValidatedHandler=l.onElementNotValidated.bind(l),l.elementValidatingHandler=l.onElementValidating.bind(l),l}return function(e,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function l(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(l.prototype=i.prototype,new l)}(l,e),l.prototype.install=function(){this.core.on("core.validator.validated",this.validatorHandler).on("core.field.added",this.fieldAddedHandler).on("core.element.notvalidated",this.elementNotValidatedHandler).on("core.element.validating",this.elementValidatingHandler).registerFilter("field-should-validate",this.shouldValidateFilter)},l.prototype.uninstall=function(){this.invalidFields.clear(),this.core.off("core.validator.validated",this.validatorHandler).off("core.field.added",this.fieldAddedHandler).off("core.element.notvalidated",this.elementNotValidatedHandler).off("core.element.validating",this.elementValidatingHandler).deregisterFilter("field-should-validate",this.shouldValidateFilter)},l.prototype.shouldValidate=function(e,t,i,l){return!this.isEnabled||!((!0===this.opts.enabled||!0===this.opts.enabled[e])&&this.invalidFields.has(t)&&!!this.invalidFields.get(t).length&&-1===this.invalidFields.get(t).indexOf(l))},l.prototype.onValidatorValidated=function(e){var t=this.invalidFields.has(e.element)?this.invalidFields.get(e.element):[],i=t.indexOf(e.validator);e.result.valid&&i>=0?t.splice(i,1):e.result.valid||-1!==i||t.push(e.validator),this.invalidFields.set(e.element,t)},l.prototype.onFieldAdded=function(e){e.elements&&this.clearInvalidFields(e.elements)},l.prototype.onElementNotValidated=function(e){this.clearInvalidFields(e.elements)},l.prototype.onElementValidating=function(e){this.clearInvalidFields(e.elements)},l.prototype.clearInvalidFields=function(e){var t=this;e.forEach((function(e){return t.invalidFields.delete(e)}))},l}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.js new file mode 100644 index 0000000..cd5a787 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.js @@ -0,0 +1,76 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Shoelace = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + // This plugin supports validating the form made with https://shoelace.style + var Shoelace = /** @class */ (function (_super) { + __extends(Shoelace, _super); + function Shoelace(opts) { + // See https://shoelace.style/#forms + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-shoelace', + messageClass: 'fv-help-block', + rowInvalidClass: 'input-invalid', + rowPattern: /^(.*)(col|offset)-[0-9]+(.*)$/, + rowSelector: '.input-field', + rowValidClass: 'input-valid', + }, opts)) || this; + } + Shoelace.prototype.onIconPlaced = function (e) { + var parent = e.element.parentElement; + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + if ('LABEL' === parent.tagName) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + } + }; + return Shoelace; + }(pluginFramework.Framework)); + + return Shoelace; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.min.js new file mode 100644 index 0000000..2b1f9b4 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-shoelace/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-shoelace + * @version 2.4.0 + */ + +!function(o,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],e):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Shoelace=e(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,e){"use strict";var t=function(o,e){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,e){o.__proto__=e}||function(o,e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(o[t]=e[t])},t(o,e)};var n=o.utils.classSet;return function(o){function e(e){return o.call(this,Object.assign({},{formClass:"fv-plugins-shoelace",messageClass:"fv-help-block",rowInvalidClass:"input-invalid",rowPattern:/^(.*)(col|offset)-[0-9]+(.*)$/,rowSelector:".input-field",rowValidClass:"input-valid"},e))||this}return function(o,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=o}t(o,e),o.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}(e,o),e.prototype.onIconPlaced=function(o){var e=o.element.parentElement,t=o.element.getAttribute("type");"checkbox"!==t&&"radio"!==t||(n(o.iconElement,{"fv-plugins-icon-check":!0}),"LABEL"===e.tagName&&e.parentElement.insertBefore(o.iconElement,e.nextSibling))},e}(e.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.js new file mode 100644 index 0000000..dd6da4a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.js @@ -0,0 +1,75 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Spectre = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet, hasClass = core.utils.hasClass; + var Spectre = /** @class */ (function (_super) { + __extends(Spectre, _super); + function Spectre(opts) { + // See https://picturepan2.github.io/spectre/elements.html#forms + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-spectre', + messageClass: 'form-input-hint', + rowInvalidClass: 'has-error', + rowPattern: /^(.*)(col)(-(xs|sm|md|lg))*-[0-9]+(.*)$/, + rowSelector: '.form-group', + rowValidClass: 'has-success', + }, opts)) || this; + } + Spectre.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + // Place it after the container of checkbox/radio + if (hasClass(parent, "form-".concat(type))) { + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + } + } + }; + return Spectre; + }(pluginFramework.Framework)); + + return Spectre; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.min.js new file mode 100644 index 0000000..02314ce --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-spectre/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-spectre + * @version 2.4.0 + */ + +!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Spectre=t(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,t){"use strict";var e=function(o,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,t){o.__proto__=t}||function(o,t){for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(o[e]=t[e])},e(o,t)};var n=o.utils.classSet,r=o.utils.hasClass;return function(o){function t(t){return o.call(this,Object.assign({},{formClass:"fv-plugins-spectre",messageClass:"form-input-hint",rowInvalidClass:"has-error",rowPattern:/^(.*)(col)(-(xs|sm|md|lg))*-[0-9]+(.*)$/,rowSelector:".form-group",rowValidClass:"has-success"},t))||this}return function(o,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=o}e(o,t),o.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,o),t.prototype.onIconPlaced=function(o){var t=o.element.getAttribute("type"),e=o.element.parentElement;"checkbox"!==t&&"radio"!==t||(n(o.iconElement,{"fv-plugins-icon-check":!0}),r(e,"form-".concat(t))&&e.parentElement.insertBefore(o.iconElement,e.nextSibling))},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.js new file mode 100644 index 0000000..2109c61 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.js @@ -0,0 +1,134 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.StartEndDate = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var StartEndDate = /** @class */ (function (_super) { + __extends(StartEndDate, _super); + function StartEndDate(opts) { + var _this = _super.call(this, opts) || this; + _this.fieldValidHandler = _this.onFieldValid.bind(_this); + _this.fieldInvalidHandler = _this.onFieldInvalid.bind(_this); + return _this; + } + StartEndDate.prototype.install = function () { + var _this = this; + // Backup the original options + var fieldOptions = this.core.getFields(); + this.startDateFieldOptions = fieldOptions[this.opts.startDate.field]; + this.endDateFieldOptions = fieldOptions[this.opts.endDate.field]; + var form = this.core.getFormElement(); + this.core + .on('core.field.valid', this.fieldValidHandler) + .on('core.field.invalid', this.fieldInvalidHandler) + .addField(this.opts.startDate.field, { + validators: { + date: { + format: this.opts.format, + max: function () { + var endDateField = form.querySelector("[name=\"".concat(_this.opts.endDate.field, "\"]")); + return endDateField.value; + }, + message: this.opts.startDate.message, + }, + }, + }) + .addField(this.opts.endDate.field, { + validators: { + date: { + format: this.opts.format, + message: this.opts.endDate.message, + min: function () { + var startDateField = form.querySelector("[name=\"".concat(_this.opts.startDate.field, "\"]")); + return startDateField.value; + }, + }, + }, + }); + }; + StartEndDate.prototype.uninstall = function () { + this.core.removeField(this.opts.startDate.field); + if (this.startDateFieldOptions) { + this.core.addField(this.opts.startDate.field, this.startDateFieldOptions); + } + this.core.removeField(this.opts.endDate.field); + if (this.endDateFieldOptions) { + this.core.addField(this.opts.endDate.field, this.endDateFieldOptions); + } + this.core.off('core.field.valid', this.fieldValidHandler).off('core.field.invalid', this.fieldInvalidHandler); + }; + StartEndDate.prototype.onEnabled = function () { + this.core.enableValidator(this.opts.startDate.field, 'date').enableValidator(this.opts.endDate.field, 'date'); + }; + StartEndDate.prototype.onDisabled = function () { + this.core.disableValidator(this.opts.startDate.field, 'date').disableValidator(this.opts.endDate.field, 'date'); + }; + StartEndDate.prototype.onFieldInvalid = function (field) { + switch (field) { + case this.opts.startDate.field: + this.startDateValid = false; + break; + case this.opts.endDate.field: + this.endDateValid = false; + break; + } + }; + StartEndDate.prototype.onFieldValid = function (field) { + switch (field) { + case this.opts.startDate.field: + this.startDateValid = true; + if (this.isEnabled && this.endDateValid === false) { + this.core.revalidateField(this.opts.endDate.field); + } + break; + case this.opts.endDate.field: + this.endDateValid = true; + if (this.isEnabled && this.startDateValid === false) { + this.core.revalidateField(this.opts.startDate.field); + } + break; + } + }; + return StartEndDate; + }(core.Plugin)); + + return StartEndDate; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.min.js new file mode 100644 index 0000000..0df3756 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-start-end-date/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-start-end-date + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.StartEndDate=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},e(t,i)};return function(t){function i(e){var i=t.call(this,e)||this;return i.fieldValidHandler=i.onFieldValid.bind(i),i.fieldInvalidHandler=i.onFieldInvalid.bind(i),i}return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function a(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(a.prototype=i.prototype,new a)}(i,t),i.prototype.install=function(){var t=this,e=this.core.getFields();this.startDateFieldOptions=e[this.opts.startDate.field],this.endDateFieldOptions=e[this.opts.endDate.field];var i=this.core.getFormElement();this.core.on("core.field.valid",this.fieldValidHandler).on("core.field.invalid",this.fieldInvalidHandler).addField(this.opts.startDate.field,{validators:{date:{format:this.opts.format,max:function(){return i.querySelector('[name="'.concat(t.opts.endDate.field,'"]')).value},message:this.opts.startDate.message}}}).addField(this.opts.endDate.field,{validators:{date:{format:this.opts.format,message:this.opts.endDate.message,min:function(){return i.querySelector('[name="'.concat(t.opts.startDate.field,'"]')).value}}}})},i.prototype.uninstall=function(){this.core.removeField(this.opts.startDate.field),this.startDateFieldOptions&&this.core.addField(this.opts.startDate.field,this.startDateFieldOptions),this.core.removeField(this.opts.endDate.field),this.endDateFieldOptions&&this.core.addField(this.opts.endDate.field,this.endDateFieldOptions),this.core.off("core.field.valid",this.fieldValidHandler).off("core.field.invalid",this.fieldInvalidHandler)},i.prototype.onEnabled=function(){this.core.enableValidator(this.opts.startDate.field,"date").enableValidator(this.opts.endDate.field,"date")},i.prototype.onDisabled=function(){this.core.disableValidator(this.opts.startDate.field,"date").disableValidator(this.opts.endDate.field,"date")},i.prototype.onFieldInvalid=function(t){switch(t){case this.opts.startDate.field:this.startDateValid=!1;break;case this.opts.endDate.field:this.endDateValid=!1}},i.prototype.onFieldValid=function(t){switch(t){case this.opts.startDate.field:this.startDateValid=!0,this.isEnabled&&!1===this.endDateValid&&this.core.revalidateField(this.opts.endDate.field);break;case this.opts.endDate.field:this.endDateValid=!0,this.isEnabled&&!1===this.startDateValid&&this.core.revalidateField(this.opts.startDate.field)}},i}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.js new file mode 100644 index 0000000..f78056a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.js @@ -0,0 +1,143 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.SubmitButton = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var SubmitButton = /** @class */ (function (_super) { + __extends(SubmitButton, _super); + function SubmitButton(opts) { + var _this = _super.call(this, opts) || this; + _this.isFormValid = false; + _this.isButtonClicked = false; + _this.opts = Object.assign({}, { + // Set it to `true` to support classical ASP.Net form + aspNetButton: false, + // By default, don't perform validation when clicking on + // the submit button/input which have `formnovalidate` attribute + buttons: function (form) { + return [].slice.call(form.querySelectorAll('[type="submit"]:not([formnovalidate])')); + }, + liveMode: true, + }, opts); + _this.submitHandler = _this.handleSubmitEvent.bind(_this); + _this.buttonClickHandler = _this.handleClickEvent.bind(_this); + _this.ignoreValidationFilter = _this.ignoreValidation.bind(_this); + return _this; + } + SubmitButton.prototype.install = function () { + var _this = this; + if (!(this.core.getFormElement() instanceof HTMLFormElement)) { + return; + } + var form = this.core.getFormElement(); + this.submitButtons = this.opts.buttons(form); + // Disable client side validation in HTML 5 + form.setAttribute('novalidate', 'novalidate'); + // Disable the default submission first + form.addEventListener('submit', this.submitHandler); + this.hiddenClickedEle = document.createElement('input'); + this.hiddenClickedEle.setAttribute('type', 'hidden'); + form.appendChild(this.hiddenClickedEle); + this.submitButtons.forEach(function (button) { + button.addEventListener('click', _this.buttonClickHandler); + }); + this.core.registerFilter('element-ignored', this.ignoreValidationFilter); + }; + SubmitButton.prototype.uninstall = function () { + var _this = this; + var form = this.core.getFormElement(); + if (form instanceof HTMLFormElement) { + form.removeEventListener('submit', this.submitHandler); + } + this.submitButtons.forEach(function (button) { + button.removeEventListener('click', _this.buttonClickHandler); + }); + this.hiddenClickedEle.parentElement.removeChild(this.hiddenClickedEle); + this.core.deregisterFilter('element-ignored', this.ignoreValidationFilter); + }; + SubmitButton.prototype.handleSubmitEvent = function (e) { + this.validateForm(e); + }; + SubmitButton.prototype.handleClickEvent = function (e) { + var target = e.currentTarget; + this.isButtonClicked = true; + if (target instanceof HTMLElement) { + if (this.opts.aspNetButton && this.isFormValid === true) ; + else { + var form = this.core.getFormElement(); + form.removeEventListener('submit', this.submitHandler); + this.clickedButton = e.target; + var name_1 = this.clickedButton.getAttribute('name'); + var value = this.clickedButton.getAttribute('value'); + if (name_1 && value) { + this.hiddenClickedEle.setAttribute('name', name_1); + this.hiddenClickedEle.setAttribute('value', value); + } + this.validateForm(e); + } + } + }; + SubmitButton.prototype.validateForm = function (e) { + var _this = this; + if (!this.isEnabled) { + return; + } + e.preventDefault(); + this.core.validate().then(function (result) { + if (result === 'Valid' && _this.opts.aspNetButton && !_this.isFormValid && _this.clickedButton) { + _this.isFormValid = true; + _this.clickedButton.removeEventListener('click', _this.buttonClickHandler); + // It's the time for ASP.Net submit button to do its own submission + _this.clickedButton.click(); + } + }); + }; + SubmitButton.prototype.ignoreValidation = function (_field, _element, _elements) { + if (!this.isEnabled) { + return false; + } + return this.opts.liveMode ? false : !this.isButtonClicked; + }; + return SubmitButton; + }(core.Plugin)); + + return SubmitButton; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.min.js new file mode 100644 index 0000000..57d7d17 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-submit-button/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-submit-button + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.SubmitButton=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},e(t,i)};return function(t){function i(e){var i=t.call(this,e)||this;return i.isFormValid=!1,i.isButtonClicked=!1,i.opts=Object.assign({},{aspNetButton:!1,buttons:function(t){return[].slice.call(t.querySelectorAll('[type="submit"]:not([formnovalidate])'))},liveMode:!0},e),i.submitHandler=i.handleSubmitEvent.bind(i),i.buttonClickHandler=i.handleClickEvent.bind(i),i.ignoreValidationFilter=i.ignoreValidation.bind(i),i}return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function n(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}(i,t),i.prototype.install=function(){var t=this;if(this.core.getFormElement()instanceof HTMLFormElement){var e=this.core.getFormElement();this.submitButtons=this.opts.buttons(e),e.setAttribute("novalidate","novalidate"),e.addEventListener("submit",this.submitHandler),this.hiddenClickedEle=document.createElement("input"),this.hiddenClickedEle.setAttribute("type","hidden"),e.appendChild(this.hiddenClickedEle),this.submitButtons.forEach((function(e){e.addEventListener("click",t.buttonClickHandler)})),this.core.registerFilter("element-ignored",this.ignoreValidationFilter)}},i.prototype.uninstall=function(){var t=this,e=this.core.getFormElement();e instanceof HTMLFormElement&&e.removeEventListener("submit",this.submitHandler),this.submitButtons.forEach((function(e){e.removeEventListener("click",t.buttonClickHandler)})),this.hiddenClickedEle.parentElement.removeChild(this.hiddenClickedEle),this.core.deregisterFilter("element-ignored",this.ignoreValidationFilter)},i.prototype.handleSubmitEvent=function(t){this.validateForm(t)},i.prototype.handleClickEvent=function(t){var e=t.currentTarget;if(this.isButtonClicked=!0,e instanceof HTMLElement)if(this.opts.aspNetButton&&!0===this.isFormValid);else{this.core.getFormElement().removeEventListener("submit",this.submitHandler),this.clickedButton=t.target;var i=this.clickedButton.getAttribute("name"),n=this.clickedButton.getAttribute("value");i&&n&&(this.hiddenClickedEle.setAttribute("name",i),this.hiddenClickedEle.setAttribute("value",n)),this.validateForm(t)}},i.prototype.validateForm=function(t){var e=this;this.isEnabled&&(t.preventDefault(),this.core.validate().then((function(t){"Valid"===t&&e.opts.aspNetButton&&!e.isFormValid&&e.clickedButton&&(e.isFormValid=!0,e.clickedButton.removeEventListener("click",e.buttonClickHandler),e.clickedButton.click())})))},i.prototype.ignoreValidation=function(t,e,i){return!!this.isEnabled&&(!this.opts.liveMode&&!this.isButtonClicked)},i}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.js new file mode 100644 index 0000000..1bf5209 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.js @@ -0,0 +1,72 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Tachyons = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var Tachyons = /** @class */ (function (_super) { + __extends(Tachyons, _super); + function Tachyons(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-tachyons', + messageClass: 'small', + rowInvalidClass: 'red', + rowPattern: /^(.*)fl(.*)$/, + rowSelector: '.fl', + rowValidClass: 'green', + }, opts)) || this; + } + Tachyons.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + } + }; + return Tachyons; + }(pluginFramework.Framework)); + + return Tachyons; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.min.js new file mode 100644 index 0000000..4ad1eee --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tachyons/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-tachyons + * @version 2.4.0 + */ + +!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Tachyons=t(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,t){"use strict";var e=function(o,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,t){o.__proto__=t}||function(o,t){for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(o[e]=t[e])},e(o,t)};var n=o.utils.classSet;return function(o){function t(t){return o.call(this,Object.assign({},{formClass:"fv-plugins-tachyons",messageClass:"small",rowInvalidClass:"red",rowPattern:/^(.*)fl(.*)$/,rowSelector:".fl",rowValidClass:"green"},t))||this}return function(o,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=o}e(o,t),o.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,o),t.prototype.onIconPlaced=function(o){var t=o.element.getAttribute("type"),e=o.element.parentElement;"checkbox"!==t&&"radio"!==t||(e.parentElement.insertBefore(o.iconElement,e.nextSibling),n(o.iconElement,{"fv-plugins-icon-check":!0}))},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.js new file mode 100644 index 0000000..93644b9 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.js @@ -0,0 +1,198 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Tooltip = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var Tooltip = /** @class */ (function (_super) { + __extends(Tooltip, _super); + function Tooltip(opts) { + var _this = _super.call(this, opts) || this; + // Map the element with message + _this.messages = new Map(); + _this.opts = Object.assign({}, { + placement: 'top', + trigger: 'click', + }, opts); + _this.iconPlacedHandler = _this.onIconPlaced.bind(_this); + _this.validatorValidatedHandler = _this.onValidatorValidated.bind(_this); + _this.elementValidatedHandler = _this.onElementValidated.bind(_this); + _this.documentClickHandler = _this.onDocumentClicked.bind(_this); + return _this; + } + Tooltip.prototype.install = function () { + var _a; + this.tip = document.createElement('div'); + classSet(this.tip, (_a = { + 'fv-plugins-tooltip': true + }, + _a["fv-plugins-tooltip--".concat(this.opts.placement)] = true, + _a)); + document.body.appendChild(this.tip); + this.core + .on('plugins.icon.placed', this.iconPlacedHandler) + .on('core.validator.validated', this.validatorValidatedHandler) + .on('core.element.validated', this.elementValidatedHandler); + if ('click' === this.opts.trigger) { + document.addEventListener('click', this.documentClickHandler); + } + }; + Tooltip.prototype.uninstall = function () { + this.messages.clear(); + document.body.removeChild(this.tip); + this.core + .off('plugins.icon.placed', this.iconPlacedHandler) + .off('core.validator.validated', this.validatorValidatedHandler) + .off('core.element.validated', this.elementValidatedHandler); + if ('click' === this.opts.trigger) { + document.removeEventListener('click', this.documentClickHandler); + } + }; + Tooltip.prototype.onIconPlaced = function (e) { + var _this = this; + classSet(e.iconElement, { + 'fv-plugins-tooltip-icon': true, + }); + switch (this.opts.trigger) { + case 'hover': + e.iconElement.addEventListener('mouseenter', function (evt) { return _this.show(e.element, evt); }); + e.iconElement.addEventListener('mouseleave', function (_evt) { return _this.hide(); }); + break; + case 'click': + default: + e.iconElement.addEventListener('click', function (evt) { return _this.show(e.element, evt); }); + break; + } + }; + Tooltip.prototype.onValidatorValidated = function (e) { + if (!e.result.valid) { + var elements = e.elements; + var type = e.element.getAttribute('type'); + var ele = 'radio' === type || 'checkbox' === type ? elements[0] : e.element; + // Get the message + var message = typeof e.result.message === 'string' ? e.result.message : e.result.message[this.core.getLocale()]; + this.messages.set(ele, message); + } + }; + Tooltip.prototype.onElementValidated = function (e) { + if (e.valid) { + // Clear the message + var elements = e.elements; + var type = e.element.getAttribute('type'); + var ele = 'radio' === type || 'checkbox' === type ? elements[0] : e.element; + this.messages.delete(ele); + } + }; + Tooltip.prototype.onDocumentClicked = function (_e) { + this.hide(); + }; + Tooltip.prototype.show = function (ele, e) { + if (!this.isEnabled) { + return; + } + e.preventDefault(); + e.stopPropagation(); + if (!this.messages.has(ele)) { + return; + } + classSet(this.tip, { + 'fv-plugins-tooltip--hide': false, + }); + this.tip.innerHTML = "
".concat(this.messages.get(ele), "
"); + // Calculate position of the icon element + var icon = e.target; + var targetRect = icon.getBoundingClientRect(); + var _a = this.tip.getBoundingClientRect(), height = _a.height, width = _a.width; + var top = 0; + var left = 0; + switch (this.opts.placement) { + case 'bottom': + top = targetRect.top + targetRect.height; + left = targetRect.left + targetRect.width / 2 - width / 2; + break; + case 'bottom-left': + top = targetRect.top + targetRect.height; + left = targetRect.left; + break; + case 'bottom-right': + top = targetRect.top + targetRect.height; + left = targetRect.left + targetRect.width - width; + break; + case 'left': + top = targetRect.top + targetRect.height / 2 - height / 2; + left = targetRect.left - width; + break; + case 'right': + top = targetRect.top + targetRect.height / 2 - height / 2; + left = targetRect.left + targetRect.width; + break; + case 'top-left': + top = targetRect.top - height; + left = targetRect.left; + break; + case 'top-right': + top = targetRect.top - height; + left = targetRect.left + targetRect.width - width; + break; + case 'top': + default: + top = targetRect.top - height; + left = targetRect.left + targetRect.width / 2 - width / 2; + break; + } + var scrollTop = window.scrollY || document.documentElement.scrollTop || document.body.scrollTop || 0; + var scrollLeft = window.scrollX || document.documentElement.scrollLeft || document.body.scrollLeft || 0; + top = top + scrollTop; + left = left + scrollLeft; + this.tip.setAttribute('style', "top: ".concat(top, "px; left: ").concat(left, "px")); + }; + Tooltip.prototype.hide = function () { + if (this.isEnabled) { + classSet(this.tip, { + 'fv-plugins-tooltip--hide': true, + }); + } + }; + return Tooltip; + }(core.Plugin)); + + return Tooltip; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.min.js new file mode 100644 index 0000000..90ffbef --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-tooltip/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-tooltip + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Tooltip=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},e(t,i)};var i=t.utils.classSet;return function(t){function o(e){var i=t.call(this,e)||this;return i.messages=new Map,i.opts=Object.assign({},{placement:"top",trigger:"click"},e),i.iconPlacedHandler=i.onIconPlaced.bind(i),i.validatorValidatedHandler=i.onValidatorValidated.bind(i),i.elementValidatedHandler=i.onElementValidated.bind(i),i.documentClickHandler=i.onDocumentClicked.bind(i),i}return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function o(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}(o,t),o.prototype.install=function(){var t;this.tip=document.createElement("div"),i(this.tip,((t={"fv-plugins-tooltip":!0})["fv-plugins-tooltip--".concat(this.opts.placement)]=!0,t)),document.body.appendChild(this.tip),this.core.on("plugins.icon.placed",this.iconPlacedHandler).on("core.validator.validated",this.validatorValidatedHandler).on("core.element.validated",this.elementValidatedHandler),"click"===this.opts.trigger&&document.addEventListener("click",this.documentClickHandler)},o.prototype.uninstall=function(){this.messages.clear(),document.body.removeChild(this.tip),this.core.off("plugins.icon.placed",this.iconPlacedHandler).off("core.validator.validated",this.validatorValidatedHandler).off("core.element.validated",this.elementValidatedHandler),"click"===this.opts.trigger&&document.removeEventListener("click",this.documentClickHandler)},o.prototype.onIconPlaced=function(t){var e=this;if(i(t.iconElement,{"fv-plugins-tooltip-icon":!0}),"hover"===this.opts.trigger)t.iconElement.addEventListener("mouseenter",(function(i){return e.show(t.element,i)})),t.iconElement.addEventListener("mouseleave",(function(t){return e.hide()}));else t.iconElement.addEventListener("click",(function(i){return e.show(t.element,i)}))},o.prototype.onValidatorValidated=function(t){if(!t.result.valid){var e=t.elements,i=t.element.getAttribute("type"),o="radio"===i||"checkbox"===i?e[0]:t.element,n="string"==typeof t.result.message?t.result.message:t.result.message[this.core.getLocale()];this.messages.set(o,n)}},o.prototype.onElementValidated=function(t){if(t.valid){var e=t.elements,i=t.element.getAttribute("type"),o="radio"===i||"checkbox"===i?e[0]:t.element;this.messages.delete(o)}},o.prototype.onDocumentClicked=function(t){this.hide()},o.prototype.show=function(t,e){if(this.isEnabled&&(e.preventDefault(),e.stopPropagation(),this.messages.has(t))){i(this.tip,{"fv-plugins-tooltip--hide":!1}),this.tip.innerHTML='
'.concat(this.messages.get(t),"
");var o=e.target.getBoundingClientRect(),n=this.tip.getBoundingClientRect(),l=n.height,a=n.width,r=0,s=0;switch(this.opts.placement){case"bottom":r=o.top+o.height,s=o.left+o.width/2-a/2;break;case"bottom-left":r=o.top+o.height,s=o.left;break;case"bottom-right":r=o.top+o.height,s=o.left+o.width-a;break;case"left":r=o.top+o.height/2-l/2,s=o.left-a;break;case"right":r=o.top+o.height/2-l/2,s=o.left+o.width;break;case"top-left":r=o.top-l,s=o.left;break;case"top-right":r=o.top-l,s=o.left+o.width-a;break;default:r=o.top-l,s=o.left+o.width/2-a/2}r+=window.scrollY||document.documentElement.scrollTop||document.body.scrollTop||0,s+=window.scrollX||document.documentElement.scrollLeft||document.body.scrollLeft||0,this.tip.setAttribute("style","top: ".concat(r,"px; left: ").concat(s,"px"))}},o.prototype.hide=function(){this.isEnabled&&i(this.tip,{"fv-plugins-tooltip--hide":!0})},o}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.js new file mode 100644 index 0000000..9804d96 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.js @@ -0,0 +1,69 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Transformer = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var Transformer = /** @class */ (function (_super) { + __extends(Transformer, _super); + function Transformer(opts) { + var _this = _super.call(this, opts) || this; + _this.valueFilter = _this.getElementValue.bind(_this); + return _this; + } + Transformer.prototype.install = function () { + this.core.registerFilter('field-value', this.valueFilter); + }; + Transformer.prototype.uninstall = function () { + this.core.deregisterFilter('field-value', this.valueFilter); + }; + Transformer.prototype.getElementValue = function (defaultValue, field, element, validator) { + if (!this.isEnabled) { + return defaultValue; + } + return this.opts[field] && this.opts[field][validator] && 'function' === typeof this.opts[field][validator] + ? this.opts[field][validator].apply(this, [field, element, validator]) + : defaultValue; + }; + return Transformer; + }(core.Plugin)); + + return Transformer; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.min.js new file mode 100644 index 0000000..59a8b80 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-transformer/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-transformer + * @version 2.4.0 + */ + +!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Transformer=o(t.FormValidation))}(this,(function(t){"use strict";var o=function(t,e){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var e in o)Object.prototype.hasOwnProperty.call(o,e)&&(t[e]=o[e])},o(t,e)};return function(t){function e(o){var e=t.call(this,o)||this;return e.valueFilter=e.getElementValue.bind(e),e}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function i(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}(e,t),e.prototype.install=function(){this.core.registerFilter("field-value",this.valueFilter)},e.prototype.uninstall=function(){this.core.deregisterFilter("field-value",this.valueFilter)},e.prototype.getElementValue=function(t,o,e,i){return this.isEnabled&&this.opts[o]&&this.opts[o][i]&&"function"==typeof this.opts[o][i]?this.opts[o][i].apply(this,[o,e,i]):t},e}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.js new file mode 100644 index 0000000..b67dc26 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.js @@ -0,0 +1,199 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Trigger = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Indicate the events which the validation will be executed when these events are triggered + * + * ``` + * const fv = formValidation(form, { + * fields: { + * fullName: {}, + * email: {}, + * }, + * }); + * + * // Validate fields when the `blur` events are triggered + * fv.registerPlugin(Trigger, { + * event: 'blur', + * }); + * + * // We can indicate different events for each particular field + * fv.registerPlugin(Trigger, { + * event: { + * fullName: 'blur', + * email: 'change', + * }, + * }); + * + * // If we don't want the field to be validated automatically, set the associate value to `false` + * fv.registerPlugin(Trigger, { + * event: { + * email: false, // The field is only validated when we click the submit button of form + * }, + * }); + * ``` + */ + var Trigger = /** @class */ (function (_super) { + __extends(Trigger, _super); + function Trigger(opts) { + var _this = _super.call(this, opts) || this; + _this.handlers = []; + _this.timers = new Map(); + var ele = document.createElement('div'); + _this.defaultEvent = !('oninput' in ele) ? 'keyup' : 'input'; + _this.opts = Object.assign({}, { + delay: 0, + event: _this.defaultEvent, + threshold: 0, + }, opts); + _this.fieldAddedHandler = _this.onFieldAdded.bind(_this); + _this.fieldRemovedHandler = _this.onFieldRemoved.bind(_this); + return _this; + } + Trigger.prototype.install = function () { + this.core.on('core.field.added', this.fieldAddedHandler).on('core.field.removed', this.fieldRemovedHandler); + }; + Trigger.prototype.uninstall = function () { + this.handlers.forEach(function (item) { return item.element.removeEventListener(item.event, item.handler); }); + this.handlers = []; + this.timers.forEach(function (t) { return window.clearTimeout(t); }); + this.timers.clear(); + this.core.off('core.field.added', this.fieldAddedHandler).off('core.field.removed', this.fieldRemovedHandler); + }; + Trigger.prototype.prepareHandler = function (field, elements) { + var _this = this; + elements.forEach(function (ele) { + var events = []; + if (!!_this.opts.event && _this.opts.event[field] === false) { + events = []; + } + else if (!!_this.opts.event && !!_this.opts.event[field] && typeof _this.opts.event[field] !== 'function') { + // To fix the case where `field` is a special property of String + // For example, `link` is the special function of `String.prototype` + // In this case, `this.opts.event[field]` is a function, not a string + events = _this.opts.event[field].split(' '); + } + else if ('string' === typeof _this.opts.event && _this.opts.event !== _this.defaultEvent) { + events = _this.opts.event.split(' '); + } + else { + var type = ele.getAttribute('type'); + var tagName = ele.tagName.toLowerCase(); + // IE10/11 fires the `input` event when focus on the field having a placeholder + var event_1 = 'radio' === type || 'checkbox' === type || 'file' === type || 'select' === tagName + ? 'change' + : _this.ieVersion >= 10 && ele.getAttribute('placeholder') + ? 'keyup' + : _this.defaultEvent; + events = [event_1]; + } + events.forEach(function (evt) { + var evtHandler = function (e) { return _this.handleEvent(e, field, ele); }; + _this.handlers.push({ + element: ele, + event: evt, + field: field, + handler: evtHandler, + }); + ele.addEventListener(evt, evtHandler); + }); + }); + }; + Trigger.prototype.handleEvent = function (e, field, ele) { + var _this = this; + if (this.isEnabled && + this.exceedThreshold(field, ele) && + this.core.executeFilter('plugins-trigger-should-validate', true, [field, ele])) { + var handler = function () { + return _this.core.validateElement(field, ele).then(function (_) { + _this.core.emit('plugins.trigger.executed', { + element: ele, + event: e, + field: field, + }); + }); + }; + var delay = this.opts.delay[field] || this.opts.delay; + if (delay === 0) { + handler(); + } + else { + var timer = this.timers.get(ele); + if (timer) { + window.clearTimeout(timer); + } + this.timers.set(ele, window.setTimeout(handler, delay * 1000)); + } + } + }; + Trigger.prototype.onFieldAdded = function (e) { + this.handlers + .filter(function (item) { return item.field === e.field; }) + .forEach(function (item) { return item.element.removeEventListener(item.event, item.handler); }); + this.prepareHandler(e.field, e.elements); + }; + Trigger.prototype.onFieldRemoved = function (e) { + this.handlers + .filter(function (item) { return item.field === e.field && e.elements.indexOf(item.element) >= 0; }) + .forEach(function (item) { return item.element.removeEventListener(item.event, item.handler); }); + }; + Trigger.prototype.exceedThreshold = function (field, element) { + var threshold = this.opts.threshold[field] === 0 || this.opts.threshold === 0 + ? false + : this.opts.threshold[field] || this.opts.threshold; + if (!threshold) { + return true; + } + // List of input type which user can't type in + var type = element.getAttribute('type'); + if (['button', 'checkbox', 'file', 'hidden', 'image', 'radio', 'reset', 'submit'].indexOf(type) !== -1) { + return true; + } + var value = this.core.getElementValue(field, element); + return value.length >= threshold; + }; + return Trigger; + }(core.Plugin)); + + return Trigger; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.min.js new file mode 100644 index 0000000..8a73a3b --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-trigger/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-trigger + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.plugins=e.FormValidation.plugins||{},e.FormValidation.plugins.Trigger=t(e.FormValidation))}(this,(function(e){"use strict";var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},t(e,n)};return function(e){function n(t){var n=e.call(this,t)||this;n.handlers=[],n.timers=new Map;var o=document.createElement("div");return n.defaultEvent="oninput"in o?"input":"keyup",n.opts=Object.assign({},{delay:0,event:n.defaultEvent,threshold:0},t),n.fieldAddedHandler=n.onFieldAdded.bind(n),n.fieldRemovedHandler=n.onFieldRemoved.bind(n),n}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function o(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}(n,e),n.prototype.install=function(){this.core.on("core.field.added",this.fieldAddedHandler).on("core.field.removed",this.fieldRemovedHandler)},n.prototype.uninstall=function(){this.handlers.forEach((function(e){return e.element.removeEventListener(e.event,e.handler)})),this.handlers=[],this.timers.forEach((function(e){return window.clearTimeout(e)})),this.timers.clear(),this.core.off("core.field.added",this.fieldAddedHandler).off("core.field.removed",this.fieldRemovedHandler)},n.prototype.prepareHandler=function(e,t){var n=this;t.forEach((function(t){var o=[];if(n.opts.event&&!1===n.opts.event[e])o=[];else if(n.opts.event&&n.opts.event[e]&&"function"!=typeof n.opts.event[e])o=n.opts.event[e].split(" ");else if("string"==typeof n.opts.event&&n.opts.event!==n.defaultEvent)o=n.opts.event.split(" ");else{var i=t.getAttribute("type"),r=t.tagName.toLowerCase();o=["radio"===i||"checkbox"===i||"file"===i||"select"===r?"change":n.ieVersion>=10&&t.getAttribute("placeholder")?"keyup":n.defaultEvent]}o.forEach((function(o){var i=function(o){return n.handleEvent(o,e,t)};n.handlers.push({element:t,event:o,field:e,handler:i}),t.addEventListener(o,i)}))}))},n.prototype.handleEvent=function(e,t,n){var o=this;if(this.isEnabled&&this.exceedThreshold(t,n)&&this.core.executeFilter("plugins-trigger-should-validate",!0,[t,n])){var i=function(){return o.core.validateElement(t,n).then((function(i){o.core.emit("plugins.trigger.executed",{element:n,event:e,field:t})}))},r=this.opts.delay[t]||this.opts.delay;if(0===r)i();else{var l=this.timers.get(n);l&&window.clearTimeout(l),this.timers.set(n,window.setTimeout(i,1e3*r))}}},n.prototype.onFieldAdded=function(e){this.handlers.filter((function(t){return t.field===e.field})).forEach((function(e){return e.element.removeEventListener(e.event,e.handler)})),this.prepareHandler(e.field,e.elements)},n.prototype.onFieldRemoved=function(e){this.handlers.filter((function(t){return t.field===e.field&&e.elements.indexOf(t.element)>=0})).forEach((function(e){return e.element.removeEventListener(e.event,e.handler)}))},n.prototype.exceedThreshold=function(e,t){var n=0!==this.opts.threshold[e]&&0!==this.opts.threshold&&(this.opts.threshold[e]||this.opts.threshold);if(!n)return!0;var o=t.getAttribute("type");return-1!==["button","checkbox","file","hidden","image","radio","reset","submit"].indexOf(o)||this.core.getElementValue(e,t).length>=n},n}(e.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.js new file mode 100644 index 0000000..cf5d32e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.js @@ -0,0 +1,246 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Turnstile = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var fetch = core.utils.fetch, removeUndefined = core.utils.removeUndefined; + var Turnstile = /** @class */ (function (_super) { + __extends(Turnstile, _super); + function Turnstile(opts) { + var _this = _super.call(this, opts) || this; + _this.widgetIds = new Map(); + _this.captchaStatus = 'NotValidated'; + _this.captchaContainer = ''; + _this.opts = Object.assign({}, Turnstile.DEFAULT_OPTIONS, removeUndefined(opts)); + _this.fieldResetHandler = _this.onResetField.bind(_this); + _this.preValidateFilter = _this.preValidate.bind(_this); + _this.iconPlacedHandler = _this.onIconPlaced.bind(_this); + // Turnstile accepts ID selector or a given element + _this.captchaContainer = _this.opts.element.startsWith('#') ? _this.opts.element : "#".concat(_this.opts.element); + return _this; + } + Turnstile.prototype.install = function () { + var _this = this; + this.core + .on('core.field.reset', this.fieldResetHandler) + .on('plugins.icon.placed', this.iconPlacedHandler) + .registerFilter('validate-pre', this.preValidateFilter); + var loadPrevCaptcha = typeof window[Turnstile.LOADED_CALLBACK] === 'undefined' ? function () { } : window[Turnstile.LOADED_CALLBACK]; + window[Turnstile.LOADED_CALLBACK] = function () { + // Call the previous loaded function + // to support multiple recaptchas on the same page + loadPrevCaptcha(); + var widgetId = _this.getTurnstileInstance().render(_this.captchaContainer, _this.buildTurnstileRenderOptions()); + _this.widgetIds.set(_this.captchaContainer, widgetId); + _this.core.addField(Turnstile.CAPTCHA_FIELD, { + validators: { + promise: { + message: _this.opts.message, + promise: function (input) { + var _a; + var value = _this.widgetIds.has(_this.captchaContainer) + ? _this.getTurnstileInstance().getResponse(_this.widgetIds.get(_this.captchaContainer)) + : input.value; + if (value === '') { + _this.captchaStatus = 'Invalid'; + return Promise.resolve({ + valid: false, + }); + } + if (_this.opts.backendVerificationUrl === '') { + _this.captchaStatus = 'Valid'; + return Promise.resolve({ + valid: true, + }); + } + if (_this.captchaStatus === 'Valid') { + // Do not need to send the back-end verification request if the captcha is already valid + return Promise.resolve({ + valid: true, + }); + } + return fetch(_this.opts.backendVerificationUrl, { + method: 'POST', + params: (_a = {}, + _a[Turnstile.CAPTCHA_FIELD] = value, + _a), + }) + .then(function (response) { + var isValid = "".concat(response['success']) === 'true'; + _this.captchaStatus = isValid ? 'Valid' : 'Invalid'; + return Promise.resolve({ + meta: response, + valid: isValid, + }); + }) + .catch(function (_reason) { + _this.captchaStatus = 'NotValidated'; + return Promise.reject({ + valid: false, + }); + }); + }, + }, + }, + }); + }; + var src = this.getScript(); + if (!document.body.querySelector("script[src=\"".concat(src, "\"]"))) { + var script = document.createElement('script'); + script.type = 'text/javascript'; + script.async = true; + script.defer = true; + script.src = src; + document.body.appendChild(script); + } + }; + Turnstile.prototype.uninstall = function () { + var _this = this; + delete window[Turnstile.LOADED_CALLBACK]; + this.core + .off('core.field.reset', this.fieldResetHandler) + .off('plugins.icon.placed', this.iconPlacedHandler) + .deregisterFilter('validate-pre', this.preValidateFilter); + this.widgetIds.forEach(function (_element, widgetId, _map) { + _this.getTurnstileInstance().remove(widgetId); + }); + this.widgetIds.clear(); + // Remove script + var src = this.getScript(); + var scripts = [].slice.call(document.body.querySelectorAll("script[src=\"".concat(src, "\"]"))); + scripts.forEach(function (s) { return s.parentNode.removeChild(s); }); + this.core.removeField(Turnstile.CAPTCHA_FIELD); + }; + Turnstile.prototype.onEnabled = function () { + this.core.enableValidator(Turnstile.CAPTCHA_FIELD, 'promise'); + }; + Turnstile.prototype.onDisabled = function () { + this.core.disableValidator(Turnstile.CAPTCHA_FIELD, 'promise'); + }; + Turnstile.prototype.buildTurnstileRenderOptions = function () { + var _this = this; + return { + callback: function () { + if (_this.opts.backendVerificationUrl === '') { + _this.captchaStatus = 'Valid'; + // Mark the captcha as valid, so the library will remove the error message + _this.core.updateFieldStatus(Turnstile.CAPTCHA_FIELD, 'Valid'); + } + }, + 'error-callback': function () { + _this.captchaStatus = 'Invalid'; + _this.core.updateFieldStatus(Turnstile.CAPTCHA_FIELD, 'Invalid'); + }, + 'expired-callback': function () { + // Update the captcha status when session expires + _this.captchaStatus = 'NotValidated'; + _this.core.updateFieldStatus(Turnstile.CAPTCHA_FIELD, 'NotValidated'); + }, + sitekey: this.opts.siteKey, + // Optional parameters + action: this.opts.action, + appearance: this.opts.appearance, + cData: this.opts.cData, + language: this.opts.language, + size: this.opts.size, + 'refresh-expired': this.opts.refreshExpired, + retry: this.opts.retry, + 'retry-interval': this.opts.retryInterval, + tabindex: this.opts.tabIndex, + theme: this.opts.theme, + }; + }; + Turnstile.prototype.getTurnstileInstance = function () { + return window['turnstile']; + }; + Turnstile.prototype.getScript = function () { + return "https://challenges.cloudflare.com/turnstile/v0/api.js?onload=".concat(Turnstile.LOADED_CALLBACK, "&render=explicit"); + }; + Turnstile.prototype.preValidate = function () { + // In the `execute` mode, we have to call the `execute()` function to challenge visitors + if (this.isEnabled && + this.opts.appearance === 'execute' && + this.widgetIds.has(this.captchaContainer) && + this.captchaStatus !== 'Valid') { + this.getTurnstileInstance().execute(this.captchaContainer, this.buildTurnstileRenderOptions()); + } + return Promise.resolve(); + }; + Turnstile.prototype.onResetField = function (e) { + if (e.field === Turnstile.CAPTCHA_FIELD && this.widgetIds.has(this.captchaContainer)) { + var widgetId = this.widgetIds.get(this.captchaContainer); + this.getTurnstileInstance().reset(widgetId); + } + }; + Turnstile.prototype.onIconPlaced = function (e) { + if (e.field === Turnstile.CAPTCHA_FIELD) { + if (this.opts.appearance === 'execute') { + e.iconElement.style.display = 'none'; + } + else { + var captchaContainer = document.getElementById(this.captchaContainer); + // We need to move the icon element to after the captcha container + // Otherwise, the icon will be removed when the captcha is re-rendered (after it's expired) + if (captchaContainer) { + captchaContainer.parentNode.insertBefore(e.iconElement, captchaContainer.nextSibling); + } + } + } + }; + // The captcha field name, generated by Turnstile + Turnstile.CAPTCHA_FIELD = 'cf-turnstile-response'; + Turnstile.DEFAULT_OPTIONS = { + backendVerificationUrl: '', + appearance: 'always', + language: 'auto', + refreshExpired: 'auto', + retry: 'auto', + size: 'normal', + tabIndex: 0, + theme: 'auto', + }; + // The name of callback that will be executed after Turnstile script is loaded + Turnstile.LOADED_CALLBACK = '___turnstileLoaded___'; + return Turnstile; + }(core.Plugin)); + + return Turnstile; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.min.js new file mode 100644 index 0000000..d21561e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turnstile/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-turnstile + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Turnstile=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},e(t,i)};var i=t.utils.fetch,a=t.utils.removeUndefined;return function(t){function n(e){var i=t.call(this,e)||this;return i.widgetIds=new Map,i.captchaStatus="NotValidated",i.captchaContainer="",i.opts=Object.assign({},n.DEFAULT_OPTIONS,a(e)),i.fieldResetHandler=i.onResetField.bind(i),i.preValidateFilter=i.preValidate.bind(i),i.iconPlacedHandler=i.onIconPlaced.bind(i),i.captchaContainer=i.opts.element.startsWith("#")?i.opts.element:"#".concat(i.opts.element),i}return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function a(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(a.prototype=i.prototype,new a)}(n,t),n.prototype.install=function(){var t=this;this.core.on("core.field.reset",this.fieldResetHandler).on("plugins.icon.placed",this.iconPlacedHandler).registerFilter("validate-pre",this.preValidateFilter);var e=void 0===window[n.LOADED_CALLBACK]?function(){}:window[n.LOADED_CALLBACK];window[n.LOADED_CALLBACK]=function(){e();var a=t.getTurnstileInstance().render(t.captchaContainer,t.buildTurnstileRenderOptions());t.widgetIds.set(t.captchaContainer,a),t.core.addField(n.CAPTCHA_FIELD,{validators:{promise:{message:t.opts.message,promise:function(e){var a,r=t.widgetIds.has(t.captchaContainer)?t.getTurnstileInstance().getResponse(t.widgetIds.get(t.captchaContainer)):e.value;return""===r?(t.captchaStatus="Invalid",Promise.resolve({valid:!1})):""===t.opts.backendVerificationUrl?(t.captchaStatus="Valid",Promise.resolve({valid:!0})):"Valid"===t.captchaStatus?Promise.resolve({valid:!0}):i(t.opts.backendVerificationUrl,{method:"POST",params:(a={},a[n.CAPTCHA_FIELD]=r,a)}).then((function(e){var i="true"==="".concat(e.success);return t.captchaStatus=i?"Valid":"Invalid",Promise.resolve({meta:e,valid:i})})).catch((function(e){return t.captchaStatus="NotValidated",Promise.reject({valid:!1})}))}}}})};var a=this.getScript();if(!document.body.querySelector('script[src="'.concat(a,'"]'))){var r=document.createElement("script");r.type="text/javascript",r.async=!0,r.defer=!0,r.src=a,document.body.appendChild(r)}},n.prototype.uninstall=function(){var t=this;delete window[n.LOADED_CALLBACK],this.core.off("core.field.reset",this.fieldResetHandler).off("plugins.icon.placed",this.iconPlacedHandler).deregisterFilter("validate-pre",this.preValidateFilter),this.widgetIds.forEach((function(e,i,a){t.getTurnstileInstance().remove(i)})),this.widgetIds.clear();var e=this.getScript();[].slice.call(document.body.querySelectorAll('script[src="'.concat(e,'"]'))).forEach((function(t){return t.parentNode.removeChild(t)})),this.core.removeField(n.CAPTCHA_FIELD)},n.prototype.onEnabled=function(){this.core.enableValidator(n.CAPTCHA_FIELD,"promise")},n.prototype.onDisabled=function(){this.core.disableValidator(n.CAPTCHA_FIELD,"promise")},n.prototype.buildTurnstileRenderOptions=function(){var t=this;return{callback:function(){""===t.opts.backendVerificationUrl&&(t.captchaStatus="Valid",t.core.updateFieldStatus(n.CAPTCHA_FIELD,"Valid"))},"error-callback":function(){t.captchaStatus="Invalid",t.core.updateFieldStatus(n.CAPTCHA_FIELD,"Invalid")},"expired-callback":function(){t.captchaStatus="NotValidated",t.core.updateFieldStatus(n.CAPTCHA_FIELD,"NotValidated")},sitekey:this.opts.siteKey,action:this.opts.action,appearance:this.opts.appearance,cData:this.opts.cData,language:this.opts.language,size:this.opts.size,"refresh-expired":this.opts.refreshExpired,retry:this.opts.retry,"retry-interval":this.opts.retryInterval,tabindex:this.opts.tabIndex,theme:this.opts.theme}},n.prototype.getTurnstileInstance=function(){return window.turnstile},n.prototype.getScript=function(){return"https://challenges.cloudflare.com/turnstile/v0/api.js?onload=".concat(n.LOADED_CALLBACK,"&render=explicit")},n.prototype.preValidate=function(){return this.isEnabled&&"execute"===this.opts.appearance&&this.widgetIds.has(this.captchaContainer)&&"Valid"!==this.captchaStatus&&this.getTurnstileInstance().execute(this.captchaContainer,this.buildTurnstileRenderOptions()),Promise.resolve()},n.prototype.onResetField=function(t){if(t.field===n.CAPTCHA_FIELD&&this.widgetIds.has(this.captchaContainer)){var e=this.widgetIds.get(this.captchaContainer);this.getTurnstileInstance().reset(e)}},n.prototype.onIconPlaced=function(t){if(t.field===n.CAPTCHA_FIELD)if("execute"===this.opts.appearance)t.iconElement.style.display="none";else{var e=document.getElementById(this.captchaContainer);e&&e.parentNode.insertBefore(t.iconElement,e.nextSibling)}},n.CAPTCHA_FIELD="cf-turnstile-response",n.DEFAULT_OPTIONS={backendVerificationUrl:"",appearance:"always",language:"auto",refreshExpired:"auto",retry:"auto",size:"normal",tabIndex:0,theme:"auto"},n.LOADED_CALLBACK="___turnstileLoaded___",n}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.js new file mode 100644 index 0000000..a7b71a5 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.js @@ -0,0 +1,74 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Turret = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + // Support Turretcss framework (https://turretcss.com/) + var Turret = /** @class */ (function (_super) { + __extends(Turret, _super); + function Turret(opts) { + // See https://turretcss.com/docs/form/ + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-turret', + messageClass: 'form-message', + rowInvalidClass: 'fv-invalid-row', + rowPattern: /^field$/, + rowSelector: '.field', + rowValidClass: 'fv-valid-row', + }, opts)) || this; + } + Turret.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + var parent = e.element.parentElement; + if ('checkbox' === type || 'radio' === type) { + // Place it after the container of checkbox/radio + parent.parentElement.insertBefore(e.iconElement, parent.nextSibling); + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + } + }; + return Turret; + }(pluginFramework.Framework)); + + return Turret; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.min.js new file mode 100644 index 0000000..1cf085c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-turret/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-turret + * @version 2.4.0 + */ + +!function(o,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],e):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.Turret=e(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,e){"use strict";var t=function(o,e){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,e){o.__proto__=e}||function(o,e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(o[t]=e[t])},t(o,e)};var n=o.utils.classSet;return function(o){function e(e){return o.call(this,Object.assign({},{formClass:"fv-plugins-turret",messageClass:"form-message",rowInvalidClass:"fv-invalid-row",rowPattern:/^field$/,rowSelector:".field",rowValidClass:"fv-valid-row"},e))||this}return function(o,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=o}t(o,e),o.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}(e,o),e.prototype.onIconPlaced=function(o){var e=o.element.getAttribute("type"),t=o.element.parentElement;"checkbox"!==e&&"radio"!==e||(t.parentElement.insertBefore(o.iconElement,t.nextSibling),n(o.iconElement,{"fv-plugins-icon-check":!0}))},e}(e.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.js new file mode 100644 index 0000000..6873f4b --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.js @@ -0,0 +1,106 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.TypingAnimation = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var TypingAnimation = /** @class */ (function (_super) { + __extends(TypingAnimation, _super); + function TypingAnimation(opts) { + var _this = _super.call(this, opts) || this; + _this.opts = Object.assign({}, { + autoPlay: true, + }, opts); + return _this; + } + TypingAnimation.prototype.install = function () { + this.fields = Object.keys(this.core.getFields()); + if (this.opts.autoPlay) { + this.play(); + } + }; + TypingAnimation.prototype.play = function () { + return this.animate(0); + }; + TypingAnimation.prototype.animate = function (fieldIndex) { + var _this = this; + if (fieldIndex >= this.fields.length) { + return Promise.resolve(fieldIndex); + } + var field = this.fields[fieldIndex]; + var ele = this.core.getElements(field)[0]; + var inputType = ele.getAttribute('type'); + var samples = this.opts.data[field]; + if ('checkbox' === inputType || 'radio' === inputType) { + ele.checked = true; + ele.setAttribute('checked', 'true'); + return this.core.revalidateField(field).then(function (_status) { + return _this.animate(fieldIndex + 1); + }); + } + else if (!samples) { + return this.animate(fieldIndex + 1); + } + else { + return new Promise(function (resolve) { + return new Typed(ele, { + attr: 'value', + autoInsertCss: true, + bindInputFocusEvents: true, + onComplete: function () { + resolve(fieldIndex + 1); + }, + onStringTyped: function (arrayPos, _self) { + ele.value = samples[arrayPos]; + _this.core.revalidateField(field); + }, + strings: samples, + typeSpeed: 100, + }); + }).then(function (nextFieldIndex) { + return _this.animate(nextFieldIndex); + }); + } + }; + return TypingAnimation; + }(core.Plugin)); + + return TypingAnimation; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.min.js new file mode 100644 index 0000000..33fee5e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-typing-animation/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-typing-animation + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.TypingAnimation=e(t.FormValidation))}(this,(function(t){"use strict";var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},e(t,n)};return function(t){function n(e){var n=t.call(this,e)||this;return n.opts=Object.assign({},{autoPlay:!0},e),n}return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function o(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}(n,t),n.prototype.install=function(){this.fields=Object.keys(this.core.getFields()),this.opts.autoPlay&&this.play()},n.prototype.play=function(){return this.animate(0)},n.prototype.animate=function(t){var e=this;if(t>=this.fields.length)return Promise.resolve(t);var n=this.fields[t],o=this.core.getElements(n)[0],i=o.getAttribute("type"),r=this.opts.data[n];return"checkbox"===i||"radio"===i?(o.checked=!0,o.setAttribute("checked","true"),this.core.revalidateField(n).then((function(n){return e.animate(t+1)}))):r?new Promise((function(i){return new Typed(o,{attr:"value",autoInsertCss:!0,bindInputFocusEvents:!0,onComplete:function(){i(t+1)},onStringTyped:function(t,i){o.value=r[t],e.core.revalidateField(n)},strings:r,typeSpeed:100})})).then((function(t){return e.animate(t)})):this.animate(t+1)},n}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.js new file mode 100644 index 0000000..e52cb03 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.js @@ -0,0 +1,73 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-framework')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-framework'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.UiKit = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginFramework) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var UiKit = /** @class */ (function (_super) { + __extends(UiKit, _super); + function UiKit(opts) { + return _super.call(this, Object.assign({}, { + formClass: 'fv-plugins-uikit', + // See https://getuikit.com/docs/text#text-color + messageClass: 'uk-text-danger', + rowInvalidClass: 'uk-form-danger', + rowPattern: /^.*(uk-form-controls|uk-width-[\d+]-[\d+]).*$/, + rowSelector: '.uk-margin', + // See https://getuikit.com/docs/form + rowValidClass: 'uk-form-success', + }, opts)) || this; + } + UiKit.prototype.onIconPlaced = function (e) { + var type = e.element.getAttribute('type'); + if ('checkbox' === type || 'radio' === type) { + var parent_1 = e.element.parentElement; + classSet(e.iconElement, { + 'fv-plugins-icon-check': true, + }); + parent_1.parentElement.insertBefore(e.iconElement, parent_1.nextSibling); + } + }; + return UiKit; + }(pluginFramework.Framework)); + + return UiKit; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.min.js new file mode 100644 index 0000000..38dce00 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-ui-kit/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-ui-kit + * @version 2.4.0 + */ + +!function(o,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core"),require("@form-validation/plugin-framework")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-framework"],t):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.plugins=o.FormValidation.plugins||{},o.FormValidation.plugins.UiKit=t(o.FormValidation,o.FormValidation.plugins))}(this,(function(o,t){"use strict";var e=function(o,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,t){o.__proto__=t}||function(o,t){for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(o[e]=t[e])},e(o,t)};var n=o.utils.classSet;return function(o){function t(t){return o.call(this,Object.assign({},{formClass:"fv-plugins-uikit",messageClass:"uk-text-danger",rowInvalidClass:"uk-form-danger",rowPattern:/^.*(uk-form-controls|uk-width-[\d+]-[\d+]).*$/,rowSelector:".uk-margin",rowValidClass:"uk-form-success"},t))||this}return function(o,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=o}e(o,t),o.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,o),t.prototype.onIconPlaced=function(o){var t=o.element.getAttribute("type");if("checkbox"===t||"radio"===t){var e=o.element.parentElement;n(o.iconElement,{"fv-plugins-icon-check":!0}),e.parentElement.insertBefore(o.iconElement,e.nextSibling)}},t}(t.Framework)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.js new file mode 100644 index 0000000..e0016eb --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.js @@ -0,0 +1,244 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core'), require('@form-validation/plugin-excluded')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core', '@form-validation/plugin-excluded'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.plugins = global.FormValidation.plugins || {}, global.FormValidation.plugins.Wizard = factory(global.FormValidation, global.FormValidation.plugins))); +})(this, (function (core, pluginExcluded) { 'use strict'; + + /****************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var classSet = core.utils.classSet; + var Wizard = /** @class */ (function (_super) { + __extends(Wizard, _super); + function Wizard(opts) { + var _this = _super.call(this, opts) || this; + _this.currentStep = 0; + _this.numSteps = 0; + _this.stepIndexes = []; + _this.opts = Object.assign({}, { + activeStepClass: 'fv-plugins-wizard--active', + onStepActive: function () { }, + onStepInvalid: function () { }, + onStepValid: function () { }, + onValid: function () { }, + stepClass: 'fv-plugins-wizard--step', + }, opts); + _this.prevStepHandler = _this.onClickPrev.bind(_this); + _this.nextStepHandler = _this.onClickNext.bind(_this); + return _this; + } + Wizard.prototype.install = function () { + var _a; + var _this = this; + this.core.registerPlugin(Wizard.EXCLUDED_PLUGIN, this.opts.isFieldExcluded ? new pluginExcluded.Excluded({ excluded: this.opts.isFieldExcluded }) : new pluginExcluded.Excluded()); + var form = this.core.getFormElement(); + this.steps = [].slice.call(form.querySelectorAll(this.opts.stepSelector)); + this.numSteps = this.steps.length; + this.steps.forEach(function (s) { + var _a; + classSet(s, (_a = {}, + _a[_this.opts.stepClass] = true, + _a)); + }); + classSet(this.steps[0], (_a = {}, + _a[this.opts.activeStepClass] = true, + _a)); + this.stepIndexes = Array(this.numSteps) + .fill(0) + .map(function (_, i) { return i; }); + this.prevButton = + typeof this.opts.prevButton === 'string' + ? this.opts.prevButton.substring(0, 1) === '#' + ? document.getElementById(this.opts.prevButton.substring(1)) + : form.querySelector(this.opts.prevButton) + : this.opts.prevButton; + this.nextButton = + typeof this.opts.nextButton === 'string' + ? this.opts.nextButton.substring(0, 1) === '#' + ? document.getElementById(this.opts.nextButton.substring(1)) + : form.querySelector(this.opts.nextButton) + : this.opts.nextButton; + this.prevButton.addEventListener('click', this.prevStepHandler); + this.nextButton.addEventListener('click', this.nextStepHandler); + }; + Wizard.prototype.uninstall = function () { + this.core.deregisterPlugin(Wizard.EXCLUDED_PLUGIN); + this.prevButton.removeEventListener('click', this.prevStepHandler); + this.nextButton.removeEventListener('click', this.nextStepHandler); + this.stepIndexes.length = 0; + }; + /** + * Get the current step index + */ + Wizard.prototype.getCurrentStep = function () { + return this.currentStep; + }; + /** + * Jump to the previous step + */ + Wizard.prototype.goToPrevStep = function () { + var _this = this; + if (!this.isEnabled) { + return; + } + var prevStep = this.currentStep - 1; + if (prevStep < 0) { + return; + } + // Find the closest previous step which isn't skipped + var prevUnskipStep = this.opts.isStepSkipped + ? this.stepIndexes + .slice(0, this.currentStep) + .reverse() + .find(function (value, _) { + return !_this.opts.isStepSkipped({ + currentStep: _this.currentStep, + numSteps: _this.numSteps, + targetStep: value, + }); + }) + : prevStep; + // Activate the previous step + this.goToStep(prevUnskipStep); + this.onStepActive(); + }; + /** + * Jump to the next step. + * It's useful when users want to go to the next step automatically + * when a checkbox/radio button is chosen + */ + Wizard.prototype.goToNextStep = function () { + var _this = this; + if (!this.isEnabled) { + return; + } + // When click the Next button, we will validate the current step + this.core.validate().then(function (status) { + if (status === 'Valid') { + var nextStep = _this.currentStep + 1; + if (nextStep >= _this.numSteps) { + // The last step are valid + _this.currentStep = _this.numSteps - 1; + } + else { + // Find the next step that isn't skipped + var nextUnskipStep = _this.opts.isStepSkipped + ? _this.stepIndexes.slice(nextStep, _this.numSteps).find(function (value, _) { + return !_this.opts.isStepSkipped({ + currentStep: _this.currentStep, + numSteps: _this.numSteps, + targetStep: value, + }); + }) + : nextStep; + nextStep = nextUnskipStep; + // Activate the next step + _this.goToStep(nextStep); + } + _this.onStepActive(); + _this.onStepValid(); + if (nextStep === _this.numSteps) { + _this.onValid(); + } + } + else if (status === 'Invalid') { + _this.onStepInvalid(); + } + }); + }; + Wizard.prototype.goToStep = function (index) { + var _a, _b; + if (!this.isEnabled) { + return; + } + classSet(this.steps[this.currentStep], (_a = {}, + _a[this.opts.activeStepClass] = false, + _a)); + classSet(this.steps[index], (_b = {}, + _b[this.opts.activeStepClass] = true, + _b)); + this.currentStep = index; + }; + Wizard.prototype.onEnabled = function () { + this.core.enablePlugin(Wizard.EXCLUDED_PLUGIN); + }; + Wizard.prototype.onDisabled = function () { + this.core.disablePlugin(Wizard.EXCLUDED_PLUGIN); + }; + Wizard.prototype.onClickPrev = function () { + this.goToPrevStep(); + }; + Wizard.prototype.onClickNext = function () { + this.goToNextStep(); + }; + Wizard.prototype.onStepActive = function () { + var e = { + numSteps: this.numSteps, + step: this.currentStep, + }; + this.core.emit('plugins.wizard.step.active', e); + this.opts.onStepActive(e); + }; + Wizard.prototype.onStepValid = function () { + var e = { + numSteps: this.numSteps, + step: this.currentStep, + }; + this.core.emit('plugins.wizard.step.valid', e); + this.opts.onStepValid(e); + }; + Wizard.prototype.onStepInvalid = function () { + var e = { + numSteps: this.numSteps, + step: this.currentStep, + }; + this.core.emit('plugins.wizard.step.invalid', e); + this.opts.onStepInvalid(e); + }; + Wizard.prototype.onValid = function () { + var e = { + numSteps: this.numSteps, + }; + this.core.emit('plugins.wizard.valid', e); + this.opts.onValid(e); + }; + Wizard.EXCLUDED_PLUGIN = '___wizardExcluded'; + return Wizard; + }(core.Plugin)); + + return Wizard; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.min.js new file mode 100644 index 0000000..8060a0a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/plugin-wizard/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/plugin-wizard + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core"),require("@form-validation/plugin-excluded")):"function"==typeof define&&define.amd?define(["@form-validation/core","@form-validation/plugin-excluded"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.plugins=t.FormValidation.plugins||{},t.FormValidation.plugins.Wizard=e(t.FormValidation,t.FormValidation.plugins))}(this,(function(t,e){"use strict";var n=function(t,e){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},n(t,e)};var i=t.utils.classSet;return function(t){function s(e){var n=t.call(this,e)||this;return n.currentStep=0,n.numSteps=0,n.stepIndexes=[],n.opts=Object.assign({},{activeStepClass:"fv-plugins-wizard--active",onStepActive:function(){},onStepInvalid:function(){},onStepValid:function(){},onValid:function(){},stepClass:"fv-plugins-wizard--step"},e),n.prevStepHandler=n.onClickPrev.bind(n),n.nextStepHandler=n.onClickNext.bind(n),n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}(s,t),s.prototype.install=function(){var t,n=this;this.core.registerPlugin(s.EXCLUDED_PLUGIN,this.opts.isFieldExcluded?new e.Excluded({excluded:this.opts.isFieldExcluded}):new e.Excluded);var o=this.core.getFormElement();this.steps=[].slice.call(o.querySelectorAll(this.opts.stepSelector)),this.numSteps=this.steps.length,this.steps.forEach((function(t){var e;i(t,((e={})[n.opts.stepClass]=!0,e))})),i(this.steps[0],((t={})[this.opts.activeStepClass]=!0,t)),this.stepIndexes=Array(this.numSteps).fill(0).map((function(t,e){return e})),this.prevButton="string"==typeof this.opts.prevButton?"#"===this.opts.prevButton.substring(0,1)?document.getElementById(this.opts.prevButton.substring(1)):o.querySelector(this.opts.prevButton):this.opts.prevButton,this.nextButton="string"==typeof this.opts.nextButton?"#"===this.opts.nextButton.substring(0,1)?document.getElementById(this.opts.nextButton.substring(1)):o.querySelector(this.opts.nextButton):this.opts.nextButton,this.prevButton.addEventListener("click",this.prevStepHandler),this.nextButton.addEventListener("click",this.nextStepHandler)},s.prototype.uninstall=function(){this.core.deregisterPlugin(s.EXCLUDED_PLUGIN),this.prevButton.removeEventListener("click",this.prevStepHandler),this.nextButton.removeEventListener("click",this.nextStepHandler),this.stepIndexes.length=0},s.prototype.getCurrentStep=function(){return this.currentStep},s.prototype.goToPrevStep=function(){var t=this;if(this.isEnabled){var e=this.currentStep-1;if(!(e<0)){var n=this.opts.isStepSkipped?this.stepIndexes.slice(0,this.currentStep).reverse().find((function(e,n){return!t.opts.isStepSkipped({currentStep:t.currentStep,numSteps:t.numSteps,targetStep:e})})):e;this.goToStep(n),this.onStepActive()}}},s.prototype.goToNextStep=function(){var t=this;this.isEnabled&&this.core.validate().then((function(e){if("Valid"===e){var n=t.currentStep+1;if(n>=t.numSteps)t.currentStep=t.numSteps-1;else n=t.opts.isStepSkipped?t.stepIndexes.slice(n,t.numSteps).find((function(e,n){return!t.opts.isStepSkipped({currentStep:t.currentStep,numSteps:t.numSteps,targetStep:e})})):n,t.goToStep(n);t.onStepActive(),t.onStepValid(),n===t.numSteps&&t.onValid()}else"Invalid"===e&&t.onStepInvalid()}))},s.prototype.goToStep=function(t){var e,n;this.isEnabled&&(i(this.steps[this.currentStep],((e={})[this.opts.activeStepClass]=!1,e)),i(this.steps[t],((n={})[this.opts.activeStepClass]=!0,n)),this.currentStep=t)},s.prototype.onEnabled=function(){this.core.enablePlugin(s.EXCLUDED_PLUGIN)},s.prototype.onDisabled=function(){this.core.disablePlugin(s.EXCLUDED_PLUGIN)},s.prototype.onClickPrev=function(){this.goToPrevStep()},s.prototype.onClickNext=function(){this.goToNextStep()},s.prototype.onStepActive=function(){var t={numSteps:this.numSteps,step:this.currentStep};this.core.emit("plugins.wizard.step.active",t),this.opts.onStepActive(t)},s.prototype.onStepValid=function(){var t={numSteps:this.numSteps,step:this.currentStep};this.core.emit("plugins.wizard.step.valid",t),this.opts.onStepValid(t)},s.prototype.onStepInvalid=function(){var t={numSteps:this.numSteps,step:this.currentStep};this.core.emit("plugins.wizard.step.invalid",t),this.opts.onStepInvalid(t)},s.prototype.onValid=function(){var t={numSteps:this.numSteps};this.core.emit("plugins.wizard.valid",t),this.opts.onValid(t)},s.EXCLUDED_PLUGIN="___wizardExcluded",s}(t.Plugin)})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.css b/resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.css new file mode 100644 index 0000000..707bf69 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.css @@ -0,0 +1,582 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ +.fv-sr-only { + display: none; +} + +.fv-plugins-framework input::-ms-clear, +.fv-plugins-framework textarea::-ms-clear { + display: none; + height: 0; + width: 0; +} + +.fv-plugins-icon-container { + position: relative; +} + +.fv-plugins-icon { + position: absolute; + right: 0; + text-align: center; + top: 0; +} +.fv-plugins-icon--enabled { + visibility: visible; +} +.fv-plugins-icon--disabled { + visibility: hidden; +} + +.fv-plugins-message-container--enabled { + display: block; +} +.fv-plugins-message-container--disabled { + display: none; +} + +.fv-plugins-tooltip { + max-width: 256px; + position: absolute; + text-align: center; + z-index: 10000; +} +.fv-plugins-tooltip .fv-plugins-tooltip__content { + background: #000; + border-radius: 3px; + color: #eee; + padding: 8px; + position: relative; +} +.fv-plugins-tooltip .fv-plugins-tooltip__content:before { + border: 8px solid transparent; + content: ""; + position: absolute; +} + +.fv-plugins-tooltip--hide { + display: none; +} + +.fv-plugins-tooltip--top-left { + transform: translateY(-8px); +} +.fv-plugins-tooltip--top-left .fv-plugins-tooltip__content:before { + border-top-color: #000; + left: 8px; + top: 100%; +} + +.fv-plugins-tooltip--top { + transform: translateY(-8px); +} +.fv-plugins-tooltip--top .fv-plugins-tooltip__content:before { + border-top-color: #000; + left: 50%; + margin-left: -8px; + top: 100%; +} + +.fv-plugins-tooltip--top-right { + transform: translateY(-8px); +} +.fv-plugins-tooltip--top-right .fv-plugins-tooltip__content:before { + border-top-color: #000; + right: 8px; + top: 100%; +} + +.fv-plugins-tooltip--right { + transform: translateX(8px); +} +.fv-plugins-tooltip--right .fv-plugins-tooltip__content:before { + border-right-color: #000; + margin-top: -8px; + right: 100%; + top: 50%; +} + +.fv-plugins-tooltip--bottom-right { + transform: translateY(8px); +} +.fv-plugins-tooltip--bottom-right .fv-plugins-tooltip__content:before { + border-bottom-color: #000; + bottom: 100%; + right: 8px; +} + +.fv-plugins-tooltip--bottom { + transform: translateY(8px); +} +.fv-plugins-tooltip--bottom .fv-plugins-tooltip__content:before { + border-bottom-color: #000; + bottom: 100%; + left: 50%; + margin-left: -8px; +} + +.fv-plugins-tooltip--bottom-left { + transform: translateY(8px); +} +.fv-plugins-tooltip--bottom-left .fv-plugins-tooltip__content:before { + border-bottom-color: #000; + bottom: 100%; + left: 8px; +} + +.fv-plugins-tooltip--left { + transform: translateX(-8px); +} +.fv-plugins-tooltip--left .fv-plugins-tooltip__content:before { + border-left-color: #000; + left: 100%; + margin-top: -8px; + top: 50%; +} + +.fv-plugins-tooltip-icon { + cursor: pointer; + pointer-events: inherit; +} + +.fv-plugins-bootstrap { + /* For horizontal form */ + /* Stacked form */ + /* Inline form */ + /* Remove the icons generated by Bootstrap 4.2+ */ +} +.fv-plugins-bootstrap .fv-help-block { + color: #dc3545; + font-size: 80%; + margin-top: 0.25rem; +} +.fv-plugins-bootstrap .is-invalid ~ .form-check-label, +.fv-plugins-bootstrap .is-valid ~ .form-check-label { + color: inherit; +} +.fv-plugins-bootstrap .has-danger .fv-plugins-icon { + color: #dc3545; +} +.fv-plugins-bootstrap .has-success .fv-plugins-icon { + color: #28a745; +} +.fv-plugins-bootstrap .fv-plugins-icon { + height: 38px; + line-height: 38px; + width: 38px; +} +.fv-plugins-bootstrap .input-group ~ .fv-plugins-icon { + z-index: 3; +} +.fv-plugins-bootstrap .form-group.row .fv-plugins-icon { + right: 15px; +} +.fv-plugins-bootstrap .form-group.row .fv-plugins-icon-check { + top: -7px; /* labelHeight/2 - iconHeight/2 */ +} +.fv-plugins-bootstrap:not(.form-inline) label ~ .fv-plugins-icon { + top: 32px; +} +.fv-plugins-bootstrap:not(.form-inline) label ~ .fv-plugins-icon-check { + top: 25px; +} +.fv-plugins-bootstrap:not(.form-inline) label.sr-only ~ .fv-plugins-icon-check { + top: -7px; +} +.fv-plugins-bootstrap.form-inline .form-group { + align-items: flex-start; + flex-direction: column; + margin-bottom: auto; +} +.fv-plugins-bootstrap .form-control.is-valid, +.fv-plugins-bootstrap .form-control.is-invalid { + background-image: none; +} + +.fv-plugins-bootstrap3 .help-block { + margin-bottom: 0; +} +.fv-plugins-bootstrap3 .input-group ~ .form-control-feedback { + z-index: 4; +} +.fv-plugins-bootstrap3.form-inline .form-group { + vertical-align: top; +} + +.fv-plugins-bootstrap5 { + /* Support floating label */ + /* For horizontal form */ + /* Stacked form */ + /* Inline form */ +} +.fv-plugins-bootstrap5 .fv-plugins-bootstrap5-row-invalid .fv-plugins-icon { + color: #dc3545; +} +.fv-plugins-bootstrap5 .fv-plugins-bootstrap5-row-valid .fv-plugins-icon { + color: #198754; +} +.fv-plugins-bootstrap5 .fv-plugins-icon { + align-items: center; + display: flex; + justify-content: center; + height: 38px; + width: 38px; +} +.fv-plugins-bootstrap5 .input-group ~ .fv-plugins-icon { + z-index: 3; +} +.fv-plugins-bootstrap5 .fv-plugins-icon-input-group { + right: -38px; +} +.fv-plugins-bootstrap5 .form-floating .fv-plugins-icon { + height: 58px; +} +.fv-plugins-bootstrap5 .row .fv-plugins-icon { + right: 12px; +} +.fv-plugins-bootstrap5 .row .fv-plugins-icon-check { + top: -7px; /* labelHeight/2 - iconHeight/2 */ +} +.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label ~ .fv-plugins-icon { + top: 32px; +} +.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label ~ .fv-plugins-icon-check { + top: 25px; +} +.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label.sr-only ~ .fv-plugins-icon-check { + top: -7px; +} +.fv-plugins-bootstrap5.fv-plugins-bootstrap5-form-inline .fv-plugins-icon { + right: calc(var(--bs-gutter-x, 1.5rem) / 2); +} +.fv-plugins-bootstrap5 .form-select.fv-plugins-icon-input.is-valid, +.fv-plugins-bootstrap5 .form-select.fv-plugins-icon-input.is-invalid, +.fv-plugins-bootstrap5 .form-control.fv-plugins-icon-input.is-valid, +.fv-plugins-bootstrap5 .form-control.fv-plugins-icon-input.is-invalid { + background-image: none; +} + +.fv-plugins-bulma { + /* Support add ons inside field */ +} +.fv-plugins-bulma .field.has-addons { + flex-wrap: wrap; +} +.fv-plugins-bulma .field.has-addons::after { + content: ""; + width: 100%; +} +.fv-plugins-bulma .field.has-addons .fv-plugins-message-container { + order: 1; +} +.fv-plugins-bulma .icon.fv-plugins-icon-check { + top: -4px; +} +.fv-plugins-bulma .fv-has-error .select select, +.fv-plugins-bulma .fv-has-error .input, +.fv-plugins-bulma .fv-has-error .textarea { + border: 1px solid #ff3860; /* Same as .input.is-danger */ +} +.fv-plugins-bulma .fv-has-success .select select, +.fv-plugins-bulma .fv-has-success .input, +.fv-plugins-bulma .fv-has-success .textarea { + border: 1px solid #23d160; /* Same as .input.is-success */ +} + +.fv-plugins-foundation { + /* Stacked form */ +} +.fv-plugins-foundation .fv-plugins-icon { + height: 39px; + line-height: 39px; + right: 0; + width: 39px; /* Same as height of input */ +} +.fv-plugins-foundation .grid-padding-x .fv-plugins-icon { + right: 15px; +} +.fv-plugins-foundation .fv-plugins-icon-container .cell { + position: relative; +} +.fv-plugins-foundation [type=checkbox] ~ .fv-plugins-icon, +.fv-plugins-foundation [type=checkbox] ~ .fv-plugins-icon { + top: -7px; /* labelHeight/2 - iconHeight/2 */ +} +.fv-plugins-foundation.fv-stacked-form .fv-plugins-message-container { + width: 100%; +} +.fv-plugins-foundation.fv-stacked-form label .fv-plugins-icon, +.fv-plugins-foundation.fv-stacked-form fieldset [type=checkbox] ~ .fv-plugins-icon, +.fv-plugins-foundation.fv-stacked-form fieldset [type=radio] ~ .fv-plugins-icon { + top: 25px; /* Same as height of label */ +} +.fv-plugins-foundation .form-error { + display: block; +} +.fv-plugins-foundation .fv-row__success .fv-plugins-icon { + color: #3adb76; /* Same as .success */ +} +.fv-plugins-foundation .fv-row__error label, +.fv-plugins-foundation .fv-row__error fieldset legend, +.fv-plugins-foundation .fv-row__error .fv-plugins-icon { + color: #cc4b37; /* Same as .is-invalid-label and .form-error */ +} + +.fv-plugins-materialize .fv-plugins-icon { + height: 42px; /* Same as height of input */ + line-height: 42px; + width: 42px; +} +.fv-plugins-materialize .fv-plugins-icon-check { + top: -10px; +} +.fv-plugins-materialize .fv-invalid-row .helper-text, +.fv-plugins-materialize .fv-invalid-row .fv-plugins-icon { + color: #f44336; +} +.fv-plugins-materialize .fv-valid-row .helper-text, +.fv-plugins-materialize .fv-valid-row .fv-plugins-icon { + color: #4caf50; +} + +.fv-plugins-milligram .fv-plugins-icon { + height: 38px; /* Same as height of input */ + line-height: 38px; + width: 38px; +} +.fv-plugins-milligram .column { + position: relative; +} +.fv-plugins-milligram .column .fv-plugins-icon { + right: 10px; +} +.fv-plugins-milligram .fv-plugins-icon-check { + top: -6px; +} +.fv-plugins-milligram .fv-plugins-message-container { + margin-bottom: 15px; +} +.fv-plugins-milligram.fv-stacked-form .fv-plugins-icon { + top: 30px; +} +.fv-plugins-milligram.fv-stacked-form .fv-plugins-icon-check { + top: 24px; +} +.fv-plugins-milligram .fv-invalid-row .fv-help-block, +.fv-plugins-milligram .fv-invalid-row .fv-plugins-icon { + color: red; +} +.fv-plugins-milligram .fv-valid-row .fv-help-block, +.fv-plugins-milligram .fv-valid-row .fv-plugins-icon { + color: green; +} + +.fv-plugins-mini .fv-plugins-icon { + height: 42px; /* Same as height of input */ + line-height: 42px; + width: 42px; + top: 4px; /* Same as input's margin top */ +} +.fv-plugins-mini .fv-plugins-icon-check { + top: -8px; +} +.fv-plugins-mini.fv-stacked-form .fv-plugins-icon { + top: 28px; +} +.fv-plugins-mini.fv-stacked-form .fv-plugins-icon-check { + top: 20px; +} +.fv-plugins-mini .fv-plugins-message-container { + margin: calc(var(--universal-margin) / 2); +} +.fv-plugins-mini .fv-invalid-row .fv-help-block, +.fv-plugins-mini .fv-invalid-row .fv-plugins-icon { + color: var(--input-invalid-color); +} +.fv-plugins-mini .fv-valid-row .fv-help-block, +.fv-plugins-mini .fv-valid-row .fv-plugins-icon { + color: #308732; /* Same as tertiary color */ +} + +.fv-plugins-mui .fv-plugins-icon { + height: 32px; /* Same as height of input */ + line-height: 32px; + width: 32px; + top: 15px; + right: 4px; +} +.fv-plugins-mui .fv-plugins-icon-check { + top: -6px; + right: -10px; +} +.fv-plugins-mui .fv-plugins-message-container { + margin: 8px 0; +} +.fv-plugins-mui .fv-invalid-row .fv-help-block, +.fv-plugins-mui .fv-invalid-row .fv-plugins-icon { + color: #f44336; +} +.fv-plugins-mui .fv-valid-row .fv-help-block, +.fv-plugins-mui .fv-valid-row .fv-plugins-icon { + color: #4caf50; +} + +.fv-plugins-pure { + /* Horizontal form */ + /* Stacked form */ +} +.fv-plugins-pure .fv-plugins-icon { + height: 36px; + line-height: 36px; + width: 36px; /* Height of Pure input */ +} +.fv-plugins-pure .fv-has-error label, +.fv-plugins-pure .fv-has-error .fv-help-block, +.fv-plugins-pure .fv-has-error .fv-plugins-icon { + color: #ca3c3c; /* Same as .button-error */ +} +.fv-plugins-pure .fv-has-success label, +.fv-plugins-pure .fv-has-success .fv-help-block, +.fv-plugins-pure .fv-has-success .fv-plugins-icon { + color: #1cb841; /* Same as .button-success */ +} +.fv-plugins-pure.pure-form-aligned .fv-help-block { + margin-top: 5px; + margin-left: 180px; +} +.fv-plugins-pure.pure-form-aligned .fv-plugins-icon-check { + top: -9px; /* labelHeight/2 - iconHeight/2 */ +} +.fv-plugins-pure.pure-form-stacked .pure-control-group { + margin-bottom: 8px; +} +.fv-plugins-pure.pure-form-stacked .fv-plugins-icon { + top: 22px; /* Same as height of label */ +} +.fv-plugins-pure.pure-form-stacked .fv-plugins-icon-check { + top: 13px; +} +.fv-plugins-pure.pure-form-stacked .fv-sr-only ~ .fv-plugins-icon { + top: -9px; +} + +.fv-plugins-semantic.ui.form .fields.error label, +.fv-plugins-semantic .error .fv-plugins-icon { + color: #9f3a38; /* Same as .ui.form .field.error .input */ +} +.fv-plugins-semantic .fv-plugins-icon-check { + right: 7px; +} + +.fv-plugins-shoelace .input-group { + margin-bottom: 0; +} +.fv-plugins-shoelace .fv-plugins-icon { + height: 32px; + line-height: 32px; /* Same as height of input */ + width: 32px; + top: 28px; /* Same as height of label */ +} +.fv-plugins-shoelace .row .fv-plugins-icon { + right: 16px; + top: 0; +} +.fv-plugins-shoelace .fv-plugins-icon-check { + top: 24px; +} +.fv-plugins-shoelace .fv-sr-only ~ .fv-plugins-icon, +.fv-plugins-shoelace .fv-sr-only ~ div .fv-plugins-icon { + top: -4px; +} +.fv-plugins-shoelace .input-valid .fv-help-block, +.fv-plugins-shoelace .input-valid .fv-plugins-icon { + color: #2ecc40; +} +.fv-plugins-shoelace .input-invalid .fv-help-block, +.fv-plugins-shoelace .input-invalid .fv-plugins-icon { + color: #ff4136; +} + +.fv-plugins-spectre .input-group .fv-plugins-icon { + z-index: 2; +} +.fv-plugins-spectre .form-group .fv-plugins-icon-check { + right: 6px; + top: 10px; +} +.fv-plugins-spectre:not(.form-horizontal) .form-group .fv-plugins-icon-check { + right: 6px; + top: 45px; +} + +.fv-plugins-tachyons .fv-plugins-icon { + height: 36px; + line-height: 36px; + width: 36px; +} +.fv-plugins-tachyons .fv-plugins-icon-check { + top: -7px; +} +.fv-plugins-tachyons.fv-stacked-form .fv-plugins-icon { + top: 34px; +} +.fv-plugins-tachyons.fv-stacked-form .fv-plugins-icon-check { + top: 24px; +} + +.fv-plugins-turret .fv-plugins-icon { + height: 40px; /* Same as height of input */ + line-height: 40px; + width: 40px; +} +.fv-plugins-turret.fv-stacked-form .fv-plugins-icon { + top: 29px; +} +.fv-plugins-turret.fv-stacked-form .fv-plugins-icon-check { + top: 17px; +} +.fv-plugins-turret .fv-invalid-row .form-message, +.fv-plugins-turret .fv-invalid-row .fv-plugins-icon { + color: #c00; /* Same as .form-message.error */ +} +.fv-plugins-turret .fv-valid-row .form-message, +.fv-plugins-turret .fv-valid-row .fv-plugins-icon { + color: #00b300; /* Same as .form-message.success */ +} + +.fv-plugins-uikit { + /* Horizontal form */ + /* Stacked form */ +} +.fv-plugins-uikit .fv-plugins-icon { + height: 40px; /* Height of UIKit input */ + line-height: 40px; + top: 25px; /* Height of UIKit label */ + width: 40px; +} +.fv-plugins-uikit.uk-form-horizontal .fv-plugins-icon { + top: 0; +} +.fv-plugins-uikit.uk-form-horizontal .fv-plugins-icon-check { + top: -11px; /* checkboxLabelHeight/2 - iconHeight/2 = 18/2 - 40/2 */ +} +.fv-plugins-uikit.uk-form-stacked .fv-plugins-icon-check { + top: 15px; /* labelHeight + labelMarginBottom + checkboxLabelHeight/2 - iconHeight/2 = 21 + 5 + 18/2 - 40/2 */ +} +.fv-plugins-uikit.uk-form-stacked .fv-no-label .fv-plugins-icon { + top: 0; +} +.fv-plugins-uikit.uk-form-stacked .fv-no-label .fv-plugins-icon-check { + top: -11px; +} + +.fv-plugins-wizard--step { + display: none; +} + +.fv-plugins-wizard--active { + display: block; +} diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.min.css b/resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.min.css new file mode 100644 index 0000000..1c4f2fe --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/styles/index.min.css @@ -0,0 +1 @@ +.fv-sr-only{display:none}.fv-plugins-framework input::-ms-clear,.fv-plugins-framework textarea::-ms-clear{display:none;height:0;width:0}.fv-plugins-icon-container{position:relative}.fv-plugins-icon{position:absolute;right:0;text-align:center;top:0}.fv-plugins-icon--enabled{visibility:visible}.fv-plugins-icon--disabled{visibility:hidden}.fv-plugins-message-container--enabled{display:block}.fv-plugins-message-container--disabled{display:none}.fv-plugins-tooltip{max-width:256px;position:absolute;text-align:center;z-index:10000}.fv-plugins-tooltip .fv-plugins-tooltip__content{background:#000;border-radius:3px;color:#eee;padding:8px;position:relative}.fv-plugins-tooltip .fv-plugins-tooltip__content:before{border:8px solid rgba(0,0,0,0);content:"";position:absolute}.fv-plugins-tooltip--hide{display:none}.fv-plugins-tooltip--top-left{transform:translateY(-8px)}.fv-plugins-tooltip--top-left .fv-plugins-tooltip__content:before{border-top-color:#000;left:8px;top:100%}.fv-plugins-tooltip--top{transform:translateY(-8px)}.fv-plugins-tooltip--top .fv-plugins-tooltip__content:before{border-top-color:#000;left:50%;margin-left:-8px;top:100%}.fv-plugins-tooltip--top-right{transform:translateY(-8px)}.fv-plugins-tooltip--top-right .fv-plugins-tooltip__content:before{border-top-color:#000;right:8px;top:100%}.fv-plugins-tooltip--right{transform:translateX(8px)}.fv-plugins-tooltip--right .fv-plugins-tooltip__content:before{border-right-color:#000;margin-top:-8px;right:100%;top:50%}.fv-plugins-tooltip--bottom-right{transform:translateY(8px)}.fv-plugins-tooltip--bottom-right .fv-plugins-tooltip__content:before{border-bottom-color:#000;bottom:100%;right:8px}.fv-plugins-tooltip--bottom{transform:translateY(8px)}.fv-plugins-tooltip--bottom .fv-plugins-tooltip__content:before{border-bottom-color:#000;bottom:100%;left:50%;margin-left:-8px}.fv-plugins-tooltip--bottom-left{transform:translateY(8px)}.fv-plugins-tooltip--bottom-left .fv-plugins-tooltip__content:before{border-bottom-color:#000;bottom:100%;left:8px}.fv-plugins-tooltip--left{transform:translateX(-8px)}.fv-plugins-tooltip--left .fv-plugins-tooltip__content:before{border-left-color:#000;left:100%;margin-top:-8px;top:50%}.fv-plugins-tooltip-icon{cursor:pointer;pointer-events:inherit}.fv-plugins-bootstrap .fv-help-block{color:#dc3545;font-size:80%;margin-top:.25rem}.fv-plugins-bootstrap .is-invalid~.form-check-label,.fv-plugins-bootstrap .is-valid~.form-check-label{color:inherit}.fv-plugins-bootstrap .has-danger .fv-plugins-icon{color:#dc3545}.fv-plugins-bootstrap .has-success .fv-plugins-icon{color:#28a745}.fv-plugins-bootstrap .fv-plugins-icon{height:38px;line-height:38px;width:38px}.fv-plugins-bootstrap .input-group~.fv-plugins-icon{z-index:3}.fv-plugins-bootstrap .form-group.row .fv-plugins-icon{right:15px}.fv-plugins-bootstrap .form-group.row .fv-plugins-icon-check{top:-7px}.fv-plugins-bootstrap:not(.form-inline) label~.fv-plugins-icon{top:32px}.fv-plugins-bootstrap:not(.form-inline) label~.fv-plugins-icon-check{top:25px}.fv-plugins-bootstrap:not(.form-inline) label.sr-only~.fv-plugins-icon-check{top:-7px}.fv-plugins-bootstrap.form-inline .form-group{align-items:flex-start;flex-direction:column;margin-bottom:auto}.fv-plugins-bootstrap .form-control.is-valid,.fv-plugins-bootstrap .form-control.is-invalid{background-image:none}.fv-plugins-bootstrap3 .help-block{margin-bottom:0}.fv-plugins-bootstrap3 .input-group~.form-control-feedback{z-index:4}.fv-plugins-bootstrap3.form-inline .form-group{vertical-align:top}.fv-plugins-bootstrap5 .fv-plugins-bootstrap5-row-invalid .fv-plugins-icon{color:#dc3545}.fv-plugins-bootstrap5 .fv-plugins-bootstrap5-row-valid .fv-plugins-icon{color:#198754}.fv-plugins-bootstrap5 .fv-plugins-icon{align-items:center;display:flex;justify-content:center;height:38px;width:38px}.fv-plugins-bootstrap5 .input-group~.fv-plugins-icon{z-index:3}.fv-plugins-bootstrap5 .fv-plugins-icon-input-group{right:-38px}.fv-plugins-bootstrap5 .form-floating .fv-plugins-icon{height:58px}.fv-plugins-bootstrap5 .row .fv-plugins-icon{right:12px}.fv-plugins-bootstrap5 .row .fv-plugins-icon-check{top:-7px}.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label~.fv-plugins-icon{top:32px}.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label~.fv-plugins-icon-check{top:25px}.fv-plugins-bootstrap5:not(.fv-plugins-bootstrap5-form-inline) label.sr-only~.fv-plugins-icon-check{top:-7px}.fv-plugins-bootstrap5.fv-plugins-bootstrap5-form-inline .fv-plugins-icon{right:calc(var(--bs-gutter-x, 1.5rem)/2)}.fv-plugins-bootstrap5 .form-select.fv-plugins-icon-input.is-valid,.fv-plugins-bootstrap5 .form-select.fv-plugins-icon-input.is-invalid,.fv-plugins-bootstrap5 .form-control.fv-plugins-icon-input.is-valid,.fv-plugins-bootstrap5 .form-control.fv-plugins-icon-input.is-invalid{background-image:none}.fv-plugins-bulma .field.has-addons{flex-wrap:wrap}.fv-plugins-bulma .field.has-addons::after{content:"";width:100%}.fv-plugins-bulma .field.has-addons .fv-plugins-message-container{order:1}.fv-plugins-bulma .icon.fv-plugins-icon-check{top:-4px}.fv-plugins-bulma .fv-has-error .select select,.fv-plugins-bulma .fv-has-error .input,.fv-plugins-bulma .fv-has-error .textarea{border:1px solid #ff3860}.fv-plugins-bulma .fv-has-success .select select,.fv-plugins-bulma .fv-has-success .input,.fv-plugins-bulma .fv-has-success .textarea{border:1px solid #23d160}.fv-plugins-foundation .fv-plugins-icon{height:39px;line-height:39px;right:0;width:39px}.fv-plugins-foundation .grid-padding-x .fv-plugins-icon{right:15px}.fv-plugins-foundation .fv-plugins-icon-container .cell{position:relative}.fv-plugins-foundation [type=checkbox]~.fv-plugins-icon,.fv-plugins-foundation [type=checkbox]~.fv-plugins-icon{top:-7px}.fv-plugins-foundation.fv-stacked-form .fv-plugins-message-container{width:100%}.fv-plugins-foundation.fv-stacked-form label .fv-plugins-icon,.fv-plugins-foundation.fv-stacked-form fieldset [type=checkbox]~.fv-plugins-icon,.fv-plugins-foundation.fv-stacked-form fieldset [type=radio]~.fv-plugins-icon{top:25px}.fv-plugins-foundation .form-error{display:block}.fv-plugins-foundation .fv-row__success .fv-plugins-icon{color:#3adb76}.fv-plugins-foundation .fv-row__error label,.fv-plugins-foundation .fv-row__error fieldset legend,.fv-plugins-foundation .fv-row__error .fv-plugins-icon{color:#cc4b37}.fv-plugins-materialize .fv-plugins-icon{height:42px;line-height:42px;width:42px}.fv-plugins-materialize .fv-plugins-icon-check{top:-10px}.fv-plugins-materialize .fv-invalid-row .helper-text,.fv-plugins-materialize .fv-invalid-row .fv-plugins-icon{color:#f44336}.fv-plugins-materialize .fv-valid-row .helper-text,.fv-plugins-materialize .fv-valid-row .fv-plugins-icon{color:#4caf50}.fv-plugins-milligram .fv-plugins-icon{height:38px;line-height:38px;width:38px}.fv-plugins-milligram .column{position:relative}.fv-plugins-milligram .column .fv-plugins-icon{right:10px}.fv-plugins-milligram .fv-plugins-icon-check{top:-6px}.fv-plugins-milligram .fv-plugins-message-container{margin-bottom:15px}.fv-plugins-milligram.fv-stacked-form .fv-plugins-icon{top:30px}.fv-plugins-milligram.fv-stacked-form .fv-plugins-icon-check{top:24px}.fv-plugins-milligram .fv-invalid-row .fv-help-block,.fv-plugins-milligram .fv-invalid-row .fv-plugins-icon{color:red}.fv-plugins-milligram .fv-valid-row .fv-help-block,.fv-plugins-milligram .fv-valid-row .fv-plugins-icon{color:green}.fv-plugins-mini .fv-plugins-icon{height:42px;line-height:42px;width:42px;top:4px}.fv-plugins-mini .fv-plugins-icon-check{top:-8px}.fv-plugins-mini.fv-stacked-form .fv-plugins-icon{top:28px}.fv-plugins-mini.fv-stacked-form .fv-plugins-icon-check{top:20px}.fv-plugins-mini .fv-plugins-message-container{margin:calc(var(--universal-margin)/2)}.fv-plugins-mini .fv-invalid-row .fv-help-block,.fv-plugins-mini .fv-invalid-row .fv-plugins-icon{color:var(--input-invalid-color)}.fv-plugins-mini .fv-valid-row .fv-help-block,.fv-plugins-mini .fv-valid-row .fv-plugins-icon{color:#308732}.fv-plugins-mui .fv-plugins-icon{height:32px;line-height:32px;width:32px;top:15px;right:4px}.fv-plugins-mui .fv-plugins-icon-check{top:-6px;right:-10px}.fv-plugins-mui .fv-plugins-message-container{margin:8px 0}.fv-plugins-mui .fv-invalid-row .fv-help-block,.fv-plugins-mui .fv-invalid-row .fv-plugins-icon{color:#f44336}.fv-plugins-mui .fv-valid-row .fv-help-block,.fv-plugins-mui .fv-valid-row .fv-plugins-icon{color:#4caf50}.fv-plugins-pure .fv-plugins-icon{height:36px;line-height:36px;width:36px}.fv-plugins-pure .fv-has-error label,.fv-plugins-pure .fv-has-error .fv-help-block,.fv-plugins-pure .fv-has-error .fv-plugins-icon{color:#ca3c3c}.fv-plugins-pure .fv-has-success label,.fv-plugins-pure .fv-has-success .fv-help-block,.fv-plugins-pure .fv-has-success .fv-plugins-icon{color:#1cb841}.fv-plugins-pure.pure-form-aligned .fv-help-block{margin-top:5px;margin-left:180px}.fv-plugins-pure.pure-form-aligned .fv-plugins-icon-check{top:-9px}.fv-plugins-pure.pure-form-stacked .pure-control-group{margin-bottom:8px}.fv-plugins-pure.pure-form-stacked .fv-plugins-icon{top:22px}.fv-plugins-pure.pure-form-stacked .fv-plugins-icon-check{top:13px}.fv-plugins-pure.pure-form-stacked .fv-sr-only~.fv-plugins-icon{top:-9px}.fv-plugins-semantic.ui.form .fields.error label,.fv-plugins-semantic .error .fv-plugins-icon{color:#9f3a38}.fv-plugins-semantic .fv-plugins-icon-check{right:7px}.fv-plugins-shoelace .input-group{margin-bottom:0}.fv-plugins-shoelace .fv-plugins-icon{height:32px;line-height:32px;width:32px;top:28px}.fv-plugins-shoelace .row .fv-plugins-icon{right:16px;top:0}.fv-plugins-shoelace .fv-plugins-icon-check{top:24px}.fv-plugins-shoelace .fv-sr-only~.fv-plugins-icon,.fv-plugins-shoelace .fv-sr-only~div .fv-plugins-icon{top:-4px}.fv-plugins-shoelace .input-valid .fv-help-block,.fv-plugins-shoelace .input-valid .fv-plugins-icon{color:#2ecc40}.fv-plugins-shoelace .input-invalid .fv-help-block,.fv-plugins-shoelace .input-invalid .fv-plugins-icon{color:#ff4136}.fv-plugins-spectre .input-group .fv-plugins-icon{z-index:2}.fv-plugins-spectre .form-group .fv-plugins-icon-check{right:6px;top:10px}.fv-plugins-spectre:not(.form-horizontal) .form-group .fv-plugins-icon-check{right:6px;top:45px}.fv-plugins-tachyons .fv-plugins-icon{height:36px;line-height:36px;width:36px}.fv-plugins-tachyons .fv-plugins-icon-check{top:-7px}.fv-plugins-tachyons.fv-stacked-form .fv-plugins-icon{top:34px}.fv-plugins-tachyons.fv-stacked-form .fv-plugins-icon-check{top:24px}.fv-plugins-turret .fv-plugins-icon{height:40px;line-height:40px;width:40px}.fv-plugins-turret.fv-stacked-form .fv-plugins-icon{top:29px}.fv-plugins-turret.fv-stacked-form .fv-plugins-icon-check{top:17px}.fv-plugins-turret .fv-invalid-row .form-message,.fv-plugins-turret .fv-invalid-row .fv-plugins-icon{color:#c00}.fv-plugins-turret .fv-valid-row .form-message,.fv-plugins-turret .fv-valid-row .fv-plugins-icon{color:#00b300}.fv-plugins-uikit .fv-plugins-icon{height:40px;line-height:40px;top:25px;width:40px}.fv-plugins-uikit.uk-form-horizontal .fv-plugins-icon{top:0}.fv-plugins-uikit.uk-form-horizontal .fv-plugins-icon-check{top:-11px}.fv-plugins-uikit.uk-form-stacked .fv-plugins-icon-check{top:15px}.fv-plugins-uikit.uk-form-stacked .fv-no-label .fv-plugins-icon{top:0}.fv-plugins-uikit.uk-form-stacked .fv-no-label .fv-plugins-icon-check{top:-11px}.fv-plugins-wizard--step{display:none}.fv-plugins-wizard--active{display:block} diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.js new file mode 100644 index 0000000..e24d50b --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.js @@ -0,0 +1,25 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.base64 = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function base64() { + return { + validate: function (input) { + return { + valid: input.value === '' || + /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$/.test(input.value), + }; + }, + }; + } + + return base64; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.min.js new file mode 100644 index 0000000..7491b97 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-base64/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-base64 + * @version 2.4.0 + */ + +!function(a,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((a="undefined"!=typeof globalThis?globalThis:a||self).FormValidation=a.FormValidation||{},a.FormValidation.validators=a.FormValidation.validators||{},a.FormValidation.validators.base64=e())}(this,(function(){"use strict";return function(){return{validate:function(a){return{valid:""===a.value||/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$/.test(a.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.js new file mode 100644 index 0000000..e79ab8a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.js @@ -0,0 +1,47 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.between = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function between() { + var formatValue = function (value) { + return parseFloat("".concat(value).replace(',', '.')); + }; + return { + validate: function (input) { + var value = input.value; + if (value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { inclusive: true, message: '' }, removeUndefined(input.options)); + var minValue = formatValue(opts.min); + var maxValue = formatValue(opts.max); + return opts.inclusive + ? { + message: format(input.l10n ? opts.message || input.l10n.between.default : opts.message, [ + "".concat(minValue), + "".concat(maxValue), + ]), + valid: parseFloat(value) >= minValue && parseFloat(value) <= maxValue, + } + : { + message: format(input.l10n ? opts.message || input.l10n.between.notInclusive : opts.message, [ + "".concat(minValue), + "".concat(maxValue), + ]), + valid: parseFloat(value) > minValue && parseFloat(value) < maxValue, + }; + }, + }; + } + + return between; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.min.js new file mode 100644 index 0000000..2e2b9ba --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-between/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-between + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.between=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.format,n=e.utils.removeUndefined;return function(){var e=function(e){return parseFloat("".concat(e).replace(",","."))};return{validate:function(o){var t=o.value;if(""===t)return{valid:!0};var i=Object.assign({},{inclusive:!0,message:""},n(o.options)),r=e(i.min),l=e(i.max);return i.inclusive?{message:a(o.l10n?i.message||o.l10n.between.default:i.message,["".concat(r),"".concat(l)]),valid:parseFloat(t)>=r&&parseFloat(t)<=l}:{message:a(o.l10n?i.message||o.l10n.between.notInclusive:i.message,["".concat(r),"".concat(l)]),valid:parseFloat(t)>r&&parseFloat(t) + */ + /** + * Validate an Business Identifier Code (BIC), also known as ISO 9362, SWIFT-BIC, SWIFT ID or SWIFT code + * For more information see http://en.wikipedia.org/wiki/ISO_9362 + * + * @todo The 5 and 6 characters are an ISO 3166-1 country code, this could also be validated + */ + function bic() { + return { + validate: function (input) { + return { + valid: input.value === '' || /^[a-zA-Z]{6}[a-zA-Z0-9]{2}([a-zA-Z0-9]{3})?$/.test(input.value), + }; + }, + }; + } + + return bic; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-bic/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-bic/index.min.js new file mode 100644 index 0000000..c9ed525 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-bic/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-bic + * @version 2.4.0 + */ + +!function(i,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o():"function"==typeof define&&define.amd?define(o):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.bic=o())}(this,(function(){"use strict";return function(){return{validate:function(i){return{valid:""===i.value||/^[a-zA-Z]{6}[a-zA-Z0-9]{2}([a-zA-Z0-9]{3})?$/.test(i.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.js new file mode 100644 index 0000000..49e9603 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.js @@ -0,0 +1,26 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.blank = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * This validator always returns valid. + * It can be used when we want to show the custom message returned from server + */ + function blank() { + return { + validate: function (_input) { + return { valid: true }; + }, + }; + } + + return blank; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.min.js new file mode 100644 index 0000000..1c7053e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-blank/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-blank + * @version 2.4.0 + */ + +!function(i,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o():"function"==typeof define&&define.amd?define(o):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.blank=o())}(this,(function(){"use strict";return function(){return{validate:function(i){return{valid:!0}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.js new file mode 100644 index 0000000..d2eaecd --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.js @@ -0,0 +1,26 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.callback = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var call = core.utils.call; + function callback() { + return { + validate: function (input) { + var response = call(input.options.callback, [input]); + return 'boolean' === typeof response + ? { valid: response } // Deprecated + : response; + }, + }; + } + + return callback; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.min.js new file mode 100644 index 0000000..4714e9d --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-callback/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-callback + * @version 2.4.0 + */ + +!function(o,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],i):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.validators=o.FormValidation.validators||{},o.FormValidation.validators.callback=i(o.FormValidation))}(this,(function(o){"use strict";var i=o.utils.call;return function(){return{validate:function(o){var a=i(o.options.callback,[o]);return"boolean"==typeof a?{valid:a}:a}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.js new file mode 100644 index 0000000..84ae112 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.js @@ -0,0 +1,44 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.choice = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format; + function choice() { + return { + validate: function (input) { + var numChoices = 'select' === input.element.tagName.toLowerCase() + ? input.element.querySelectorAll('option:checked').length + : input.elements.filter(function (ele) { return ele.checked; }).length; + var min = input.options.min ? "".concat(input.options.min) : ''; + var max = input.options.max ? "".concat(input.options.max) : ''; + var msg = input.l10n ? input.options.message || input.l10n.choice.default : input.options.message; + var isValid = !((min && numChoices < parseInt(min, 10)) || (max && numChoices > parseInt(max, 10))); + switch (true) { + case !!min && !!max: + msg = format(input.l10n ? input.l10n.choice.between : input.options.message, [min, max]); + break; + case !!min: + msg = format(input.l10n ? input.l10n.choice.more : input.options.message, min); + break; + case !!max: + msg = format(input.l10n ? input.l10n.choice.less : input.options.message, max); + break; + } + return { + message: msg, + valid: isValid, + }; + }, + }; + } + + return choice; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.min.js new file mode 100644 index 0000000..8d1afaf --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-choice/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-choice + * @version 2.4.0 + */ + +!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.choice=o(e.FormValidation))}(this,(function(e){"use strict";var o=e.utils.format;return function(){return{validate:function(e){var n="select"===e.element.tagName.toLowerCase()?e.element.querySelectorAll("option:checked").length:e.elements.filter((function(e){return e.checked})).length,t=e.options.min?"".concat(e.options.min):"",i=e.options.max?"".concat(e.options.max):"",a=e.l10n?e.options.message||e.l10n.choice.default:e.options.message,s=!(t&&nparseInt(i,10));switch(!0){case!!t&&!!i:a=o(e.l10n?e.l10n.choice.between:e.options.message,[t,i]);break;case!!t:a=o(e.l10n?e.l10n.choice.more:e.options.message,t);break;case!!i:a=o(e.l10n?e.l10n.choice.less:e.options.message,i)}return{message:a,valid:s}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.js new file mode 100644 index 0000000..61311d3 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.js @@ -0,0 +1,253 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.color = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function color() { + var SUPPORTED_TYPES = ['hex', 'rgb', 'rgba', 'hsl', 'hsla', 'keyword']; + var KEYWORD_COLORS = [ + // Colors start with A + 'aliceblue', + 'antiquewhite', + 'aqua', + 'aquamarine', + 'azure', + // B + 'beige', + 'bisque', + 'black', + 'blanchedalmond', + 'blue', + 'blueviolet', + 'brown', + 'burlywood', + // C + 'cadetblue', + 'chartreuse', + 'chocolate', + 'coral', + 'cornflowerblue', + 'cornsilk', + 'crimson', + 'cyan', + // D + 'darkblue', + 'darkcyan', + 'darkgoldenrod', + 'darkgray', + 'darkgreen', + 'darkgrey', + 'darkkhaki', + 'darkmagenta', + 'darkolivegreen', + 'darkorange', + 'darkorchid', + 'darkred', + 'darksalmon', + 'darkseagreen', + 'darkslateblue', + 'darkslategray', + 'darkslategrey', + 'darkturquoise', + 'darkviolet', + 'deeppink', + 'deepskyblue', + 'dimgray', + 'dimgrey', + 'dodgerblue', + // F + 'firebrick', + 'floralwhite', + 'forestgreen', + 'fuchsia', + // G + 'gainsboro', + 'ghostwhite', + 'gold', + 'goldenrod', + 'gray', + 'green', + 'greenyellow', + 'grey', + // H + 'honeydew', + 'hotpink', + // I + 'indianred', + 'indigo', + 'ivory', + // K + 'khaki', + // L + 'lavender', + 'lavenderblush', + 'lawngreen', + 'lemonchiffon', + 'lightblue', + 'lightcoral', + 'lightcyan', + 'lightgoldenrodyellow', + 'lightgray', + 'lightgreen', + 'lightgrey', + 'lightpink', + 'lightsalmon', + 'lightseagreen', + 'lightskyblue', + 'lightslategray', + 'lightslategrey', + 'lightsteelblue', + 'lightyellow', + 'lime', + 'limegreen', + 'linen', + // M + 'magenta', + 'maroon', + 'mediumaquamarine', + 'mediumblue', + 'mediumorchid', + 'mediumpurple', + 'mediumseagreen', + 'mediumslateblue', + 'mediumspringgreen', + 'mediumturquoise', + 'mediumvioletred', + 'midnightblue', + 'mintcream', + 'mistyrose', + 'moccasin', + // N + 'navajowhite', + 'navy', + // O + 'oldlace', + 'olive', + 'olivedrab', + 'orange', + 'orangered', + 'orchid', + // P + 'palegoldenrod', + 'palegreen', + 'paleturquoise', + 'palevioletred', + 'papayawhip', + 'peachpuff', + 'peru', + 'pink', + 'plum', + 'powderblue', + 'purple', + // R + 'red', + 'rosybrown', + 'royalblue', + // S + 'saddlebrown', + 'salmon', + 'sandybrown', + 'seagreen', + 'seashell', + 'sienna', + 'silver', + 'skyblue', + 'slateblue', + 'slategray', + 'slategrey', + 'snow', + 'springgreen', + 'steelblue', + // T + 'tan', + 'teal', + 'thistle', + 'tomato', + 'transparent', + 'turquoise', + // V + 'violet', + // W + 'wheat', + 'white', + 'whitesmoke', + // Y + 'yellow', + 'yellowgreen', + ]; + var hex = function (value) { + return /(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(value); + }; + var hsl = function (value) { + return /^hsl\((\s*(-?\d+)\s*,)(\s*(\b(0?\d{1,2}|100)\b%)\s*,)(\s*(\b(0?\d{1,2}|100)\b%)\s*)\)$/.test(value); + }; + var hsla = function (value) { + return /^hsla\((\s*(-?\d+)\s*,)(\s*(\b(0?\d{1,2}|100)\b%)\s*,){2}(\s*(0?(\.\d+)?|1(\.0+)?)\s*)\)$/.test(value); + }; + var keyword = function (value) { + return KEYWORD_COLORS.indexOf(value) >= 0; + }; + var rgb = function (value) { + return (/^rgb\((\s*(\b([01]?\d{1,2}|2[0-4]\d|25[0-5])\b)\s*,){2}(\s*(\b([01]?\d{1,2}|2[0-4]\d|25[0-5])\b)\s*)\)$/.test(value) || /^rgb\((\s*(\b(0?\d{1,2}|100)\b%)\s*,){2}(\s*(\b(0?\d{1,2}|100)\b%)\s*)\)$/.test(value)); + }; + var rgba = function (value) { + return (/^rgba\((\s*(\b([01]?\d{1,2}|2[0-4]\d|25[0-5])\b)\s*,){3}(\s*(0?(\.\d+)?|1(\.0+)?)\s*)\)$/.test(value) || + /^rgba\((\s*(\b(0?\d{1,2}|100)\b%)\s*,){3}(\s*(0?(\.\d+)?|1(\.0+)?)\s*)\)$/.test(value)); + }; + return { + /** + * Return true if the input value is a valid color + * @returns {boolean} + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var types = typeof input.options.type === 'string' + ? input.options.type.toString().replace(/s/g, '').split(',') + : input.options.type || SUPPORTED_TYPES; + for (var _i = 0, types_1 = types; _i < types_1.length; _i++) { + var type = types_1[_i]; + var tpe = type.toLowerCase(); + if (SUPPORTED_TYPES.indexOf(tpe) === -1) { + continue; + } + var result = true; + switch (tpe) { + case 'hex': + result = hex(input.value); + break; + case 'hsl': + result = hsl(input.value); + break; + case 'hsla': + result = hsla(input.value); + break; + case 'keyword': + result = keyword(input.value); + break; + case 'rgb': + result = rgb(input.value); + break; + case 'rgba': + result = rgba(input.value); + break; + } + if (result) { + return { valid: true }; + } + } + return { valid: false }; + }, + }; + } + + return color; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.min.js new file mode 100644 index 0000000..0551e27 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-color/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-color + * @version 2.4.0 + */ + +!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define(r):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.color=r())}(this,(function(){"use strict";return function(){var e=["hex","rgb","rgba","hsl","hsla","keyword"],r=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","transparent","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],a=function(e){return/^hsl\((\s*(-?\d+)\s*,)(\s*(\b(0?\d{1,2}|100)\b%)\s*,)(\s*(\b(0?\d{1,2}|100)\b%)\s*)\)$/.test(e)},l=function(e){return/^hsla\((\s*(-?\d+)\s*,)(\s*(\b(0?\d{1,2}|100)\b%)\s*,){2}(\s*(0?(\.\d+)?|1(\.0+)?)\s*)\)$/.test(e)},i=function(e){return r.indexOf(e)>=0},t=function(e){return/^rgb\((\s*(\b([01]?\d{1,2}|2[0-4]\d|25[0-5])\b)\s*,){2}(\s*(\b([01]?\d{1,2}|2[0-4]\d|25[0-5])\b)\s*)\)$/.test(e)||/^rgb\((\s*(\b(0?\d{1,2}|100)\b%)\s*,){2}(\s*(\b(0?\d{1,2}|100)\b%)\s*)\)$/.test(e)},n=function(e){return/^rgba\((\s*(\b([01]?\d{1,2}|2[0-4]\d|25[0-5])\b)\s*,){3}(\s*(0?(\.\d+)?|1(\.0+)?)\s*)\)$/.test(e)||/^rgba\((\s*(\b(0?\d{1,2}|100)\b%)\s*,){3}(\s*(0?(\.\d+)?|1(\.0+)?)\s*)\)$/.test(e)};return{validate:function(r){if(""===r.value)return{valid:!0};for(var o,s=0,d="string"==typeof r.options.type?r.options.type.toString().replace(/s/g,"").split(","):r.options.type||e;s + */ + var luhn = core.algorithms.luhn; + var CREDIT_CARD_TYPES = { + AMERICAN_EXPRESS: { + length: [15], + prefix: ['34', '37'], + }, + DANKORT: { + length: [16], + prefix: ['5019'], + }, + DINERS_CLUB: { + length: [14], + prefix: ['300', '301', '302', '303', '304', '305', '36'], + }, + DINERS_CLUB_US: { + length: [16], + prefix: ['54', '55'], + }, + DISCOVER: { + length: [16], + prefix: [ + '6011', + '622126', + '622127', + '622128', + '622129', + '62213', + '62214', + '62215', + '62216', + '62217', + '62218', + '62219', + '6222', + '6223', + '6224', + '6225', + '6226', + '6227', + '6228', + '62290', + '62291', + '622920', + '622921', + '622922', + '622923', + '622924', + '622925', + '644', + '645', + '646', + '647', + '648', + '649', + '65', + ], + }, + ELO: { + length: [16], + prefix: [ + '4011', + '4312', + '4389', + '4514', + '4573', + '4576', + '5041', + '5066', + '5067', + '509', + '6277', + '6362', + '6363', + '650', + '6516', + '6550', + ], + }, + FORBRUGSFORENINGEN: { + length: [16], + prefix: ['600722'], + }, + JCB: { + length: [16], + prefix: ['3528', '3529', '353', '354', '355', '356', '357', '358'], + }, + LASER: { + length: [16, 17, 18, 19], + prefix: ['6304', '6706', '6771', '6709'], + }, + MAESTRO: { + length: [12, 13, 14, 15, 16, 17, 18, 19], + prefix: ['5018', '5020', '5038', '5868', '6304', '6759', '6761', '6762', '6763', '6764', '6765', '6766'], + }, + MASTERCARD: { + length: [16], + prefix: ['51', '52', '53', '54', '55'], + }, + SOLO: { + length: [16, 18, 19], + prefix: ['6334', '6767'], + }, + UNIONPAY: { + length: [16, 17, 18, 19], + prefix: [ + '622126', + '622127', + '622128', + '622129', + '62213', + '62214', + '62215', + '62216', + '62217', + '62218', + '62219', + '6222', + '6223', + '6224', + '6225', + '6226', + '6227', + '6228', + '62290', + '62291', + '622920', + '622921', + '622922', + '622923', + '622924', + '622925', + ], + }, + VISA: { + length: [16], + prefix: ['4'], + }, + VISA_ELECTRON: { + length: [16], + prefix: ['4026', '417500', '4405', '4508', '4844', '4913', '4917'], + }, + }; + function creditCard() { + return { + /** + * Return true if the input value is valid credit card number + */ + validate: function (input) { + if (input.value === '') { + return { + meta: { + type: null, + }, + valid: true, + }; + } + // Accept only digits, dashes or spaces + if (/[^0-9-\s]+/.test(input.value)) { + return { + meta: { + type: null, + }, + valid: false, + }; + } + var v = input.value.replace(/\D/g, ''); + if (!luhn(v)) { + return { + meta: { + type: null, + }, + valid: false, + }; + } + for (var _i = 0, _a = Object.keys(CREDIT_CARD_TYPES); _i < _a.length; _i++) { + var tpe = _a[_i]; + for (var i in CREDIT_CARD_TYPES[tpe].prefix) { + // Check the prefix and length + if (input.value.substr(0, CREDIT_CARD_TYPES[tpe].prefix[i].length) === + CREDIT_CARD_TYPES[tpe].prefix[i] && + CREDIT_CARD_TYPES[tpe].length.indexOf(v.length) !== -1) { + return { + meta: { + type: tpe, + }, + valid: true, + }; + } + } + } + return { + meta: { + type: null, + }, + valid: false, + }; + }, + }; + } + + return creditCard; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-credit-card/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-credit-card/index.min.js new file mode 100644 index 0000000..62edc6d --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-credit-card/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-credit-card + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.creditCard=t(e.FormValidation))}(this,(function(e){"use strict";var t=e.algorithms.luhn,i={AMERICAN_EXPRESS:{length:[15],prefix:["34","37"]},DANKORT:{length:[16],prefix:["5019"]},DINERS_CLUB:{length:[14],prefix:["300","301","302","303","304","305","36"]},DINERS_CLUB_US:{length:[16],prefix:["54","55"]},DISCOVER:{length:[16],prefix:["6011","622126","622127","622128","622129","62213","62214","62215","62216","62217","62218","62219","6222","6223","6224","6225","6226","6227","6228","62290","62291","622920","622921","622922","622923","622924","622925","644","645","646","647","648","649","65"]},ELO:{length:[16],prefix:["4011","4312","4389","4514","4573","4576","5041","5066","5067","509","6277","6362","6363","650","6516","6550"]},FORBRUGSFORENINGEN:{length:[16],prefix:["600722"]},JCB:{length:[16],prefix:["3528","3529","353","354","355","356","357","358"]},LASER:{length:[16,17,18,19],prefix:["6304","6706","6771","6709"]},MAESTRO:{length:[12,13,14,15,16,17,18,19],prefix:["5018","5020","5038","5868","6304","6759","6761","6762","6763","6764","6765","6766"]},MASTERCARD:{length:[16],prefix:["51","52","53","54","55"]},SOLO:{length:[16,18,19],prefix:["6334","6767"]},UNIONPAY:{length:[16,17,18,19],prefix:["622126","622127","622128","622129","62213","62214","62215","62216","62217","62218","62219","6222","6223","6224","6225","6226","6227","6228","62290","62291","622920","622921","622922","622923","622924","622925"]},VISA:{length:[16],prefix:["4"]},VISA_ELECTRON:{length:[16],prefix:["4026","417500","4405","4508","4844","4913","4917"]}};return function(){return{validate:function(e){if(""===e.value)return{meta:{type:null},valid:!0};if(/[^0-9-\s]+/.test(e.value))return{meta:{type:null},valid:!1};var r=e.value.replace(/\D/g,"");if(!t(r))return{meta:{type:null},valid:!1};for(var l=0,n=Object.keys(i);l + */ + function cusip() { + return { + /** + * Validate a CUSIP number + * @see http://en.wikipedia.org/wiki/CUSIP + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var value = input.value.toUpperCase(); + // O, I aren't allowed + if (!/^[0123456789ABCDEFGHJKLMNPQRSTUVWXYZ*@#]{9}$/.test(value)) { + return { valid: false }; + } + // Get the last char + var chars = value.split(''); + var lastChar = chars.pop(); + var converted = chars.map(function (c) { + var code = c.charCodeAt(0); + switch (true) { + case c === '*': + return 36; + case c === '@': + return 37; + case c === '#': + return 38; + // Replace A, B, C, ..., Z with 10, 11, ..., 35 + case code >= 'A'.charCodeAt(0) && code <= 'Z'.charCodeAt(0): + return code - 'A'.charCodeAt(0) + 10; + default: + return parseInt(c, 10); + } + }); + var sum = converted + .map(function (v, i) { + var double = i % 2 === 0 ? v : 2 * v; + return Math.floor(double / 10) + (double % 10); + }) + .reduce(function (a, b) { return a + b; }, 0); + var checkDigit = (10 - (sum % 10)) % 10; + return { valid: lastChar === "".concat(checkDigit) }; + }, + }; + } + + return cusip; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-cusip/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-cusip/index.min.js new file mode 100644 index 0000000..3a1a8b6 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-cusip/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-cusip + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.cusip=e())}(this,(function(){"use strict";return function(){return{validate:function(t){if(""===t.value)return{valid:!0};var e=t.value.toUpperCase();if(!/^[0123456789ABCDEFGHJKLMNPQRSTUVWXYZ*@#]{9}$/.test(e))return{valid:!1};var r=e.split(""),a=r.pop(),n=r.map((function(t){var e=t.charCodeAt(0);switch(!0){case"*"===t:return 36;case"@"===t:return 37;case"#"===t:return 38;case e>="A".charCodeAt(0)&&e<="Z".charCodeAt(0):return e-"A".charCodeAt(0)+10;default:return parseInt(t,10)}})).map((function(t,e){var r=e%2==0?t:2*t;return Math.floor(r/10)+r%10})).reduce((function(t,e){return t+e}),0);return{valid:a==="".concat((10-n%10)%10)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.js new file mode 100644 index 0000000..6633ebd --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.js @@ -0,0 +1,269 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.date = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, isValidDate = core.utils.isValidDate, removeUndefined = core.utils.removeUndefined; + /** + * Return a date object after parsing the date string + * + * @param {string} input The date to parse + * @param {string[]} inputFormat The date format + * The format can be: + * - date: Consist of DD, MM, YYYY parts which are separated by the separator option + * - date and time: The time can consist of h, m, s parts which are separated by : + * @param {string} separator The separator used to separate the date, month, and year + * @return {Date} + * @private + */ + var parseDate = function (input, inputFormat, separator) { + // Ensure that the format must consist of year, month and day patterns + var yearIndex = inputFormat.indexOf('YYYY'); + var monthIndex = inputFormat.indexOf('MM'); + var dayIndex = inputFormat.indexOf('DD'); + if (yearIndex === -1 || monthIndex === -1 || dayIndex === -1) { + return null; + } + var sections = input.split(' '); + var dateSection = sections[0].split(separator); + if (dateSection.length < 3) { + return null; + } + var d = new Date(parseInt(dateSection[yearIndex], 10), parseInt(dateSection[monthIndex], 10) - 1, parseInt(dateSection[dayIndex], 10)); + var amPmSection = sections.length > 2 ? sections[2] : null; + if (sections.length > 1) { + var timeSection = sections[1].split(':'); + var h = timeSection.length > 0 ? parseInt(timeSection[0], 10) : 0; + d.setHours(amPmSection && amPmSection.toUpperCase() === 'PM' && h < 12 ? h + 12 : h); + d.setMinutes(timeSection.length > 1 ? parseInt(timeSection[1], 10) : 0); + d.setSeconds(timeSection.length > 2 ? parseInt(timeSection[2], 10) : 0); + } + return d; + }; + /** + * Format date + * + * @param {Date} input The date object to format + * @param {string} inputFormat The date format + * The format can consist of the following tokens: + * d Day of the month without leading zeros (1 through 31) + * dd Day of the month with leading zeros (01 through 31) + * m Month without leading zeros (1 through 12) + * mm Month with leading zeros (01 through 12) + * yy Last two digits of year (for example: 14) + * yyyy Full four digits of year (for example: 2014) + * h Hours without leading zeros (1 through 12) + * hh Hours with leading zeros (01 through 12) + * H Hours without leading zeros (0 through 23) + * HH Hours with leading zeros (00 through 23) + * M Minutes without leading zeros (0 through 59) + * MM Minutes with leading zeros (00 through 59) + * s Seconds without leading zeros (0 through 59) + * ss Seconds with leading zeros (00 through 59) + * @return {string} + * @private + */ + var formatDate = function (input, inputFormat) { + var dateFormat = inputFormat + .replace(/Y/g, 'y') + .replace(/M/g, 'm') + .replace(/D/g, 'd') + .replace(/:m/g, ':M') + .replace(/:mm/g, ':MM') + .replace(/:S/, ':s') + .replace(/:SS/, ':ss'); + var d = input.getDate(); + var dd = d < 10 ? "0".concat(d) : d; + var m = input.getMonth() + 1; + var mm = m < 10 ? "0".concat(m) : m; + var yy = "".concat(input.getFullYear()).substr(2); + var yyyy = input.getFullYear(); + var h = input.getHours() % 12 || 12; + var hh = h < 10 ? "0".concat(h) : h; + var H = input.getHours(); + var HH = H < 10 ? "0".concat(H) : H; + var M = input.getMinutes(); + var MM = M < 10 ? "0".concat(M) : M; + var s = input.getSeconds(); + var ss = s < 10 ? "0".concat(s) : s; + var replacer = { + H: "".concat(H), + HH: "".concat(HH), + M: "".concat(M), + MM: "".concat(MM), + d: "".concat(d), + dd: "".concat(dd), + h: "".concat(h), + hh: "".concat(hh), + m: "".concat(m), + mm: "".concat(mm), + s: "".concat(s), + ss: "".concat(ss), + yy: "".concat(yy), + yyyy: "".concat(yyyy), + }; + return dateFormat.replace(/d{1,4}|m{1,4}|yy(?:yy)?|([HhMs])\1?|"[^"]*"|'[^']*'/g, function (match) { + return replacer[match] ? replacer[match] : match.slice(1, match.length - 1); + }); + }; + var date = function () { + return { + validate: function (input) { + if (input.value === '') { + return { + meta: { + date: null, + }, + valid: true, + }; + } + var opts = Object.assign({}, { + // Force the format to `YYYY-MM-DD` as the default browser behaviour when using type="date" attribute + format: input.element && input.element.getAttribute('type') === 'date' ? 'YYYY-MM-DD' : 'MM/DD/YYYY', + message: '', + }, removeUndefined(input.options)); + var message = input.l10n ? input.l10n.date.default : opts.message; + var invalidResult = { + message: "".concat(message), + meta: { + date: null, + }, + valid: false, + }; + var formats = opts.format.split(' '); + var timeFormat = formats.length > 1 ? formats[1] : null; + var amOrPm = formats.length > 2 ? formats[2] : null; + var sections = input.value.split(' '); + var dateSection = sections[0]; + var timeSection = sections.length > 1 ? sections[1] : null; + var amPmSection = sections.length > 2 ? sections[2] : null; + if (formats.length !== sections.length) { + return invalidResult; + } + // Determine the separator + var separator = opts.separator || + (dateSection.indexOf('/') !== -1 + ? '/' + : dateSection.indexOf('-') !== -1 + ? '-' + : dateSection.indexOf('.') !== -1 + ? '.' + : '/'); + if (separator === null || dateSection.indexOf(separator) === -1) { + return invalidResult; + } + // Determine the date + var dateStr = dateSection.split(separator); + var dateFormat = formats[0].split(separator); + if (dateStr.length !== dateFormat.length) { + return invalidResult; + } + var yearStr = dateStr[dateFormat.indexOf('YYYY')]; + var monthStr = dateStr[dateFormat.indexOf('MM')]; + var dayStr = dateStr[dateFormat.indexOf('DD')]; + if (!/^\d+$/.test(yearStr) || + !/^\d+$/.test(monthStr) || + !/^\d+$/.test(dayStr) || + yearStr.length > 4 || + monthStr.length > 2 || + dayStr.length > 2) { + return invalidResult; + } + var year = parseInt(yearStr, 10); + var month = parseInt(monthStr, 10); + var day = parseInt(dayStr, 10); + if (!isValidDate(year, month, day)) { + return invalidResult; + } + // Determine the time + var d = new Date(year, month - 1, day); + if (timeFormat) { + var hms = timeSection.split(':'); + if (timeFormat.split(':').length !== hms.length) { + return invalidResult; + } + var h = hms.length > 0 ? (hms[0].length <= 2 && /^\d+$/.test(hms[0]) ? parseInt(hms[0], 10) : -1) : 0; + var m = hms.length > 1 ? (hms[1].length <= 2 && /^\d+$/.test(hms[1]) ? parseInt(hms[1], 10) : -1) : 0; + var s = hms.length > 2 ? (hms[2].length <= 2 && /^\d+$/.test(hms[2]) ? parseInt(hms[2], 10) : -1) : 0; + if (h === -1 || m === -1 || s === -1) { + return invalidResult; + } + // Validate seconds + if (s < 0 || s > 60) { + return invalidResult; + } + // Validate hours + if (h < 0 || h >= 24 || (amOrPm && h > 12)) { + return invalidResult; + } + // Validate minutes + if (m < 0 || m > 59) { + return invalidResult; + } + d.setHours(amPmSection && amPmSection.toUpperCase() === 'PM' && h < 12 ? h + 12 : h); + d.setMinutes(m); + d.setSeconds(s); + } + // Validate day, month, and year + var minOption = typeof opts.min === 'function' ? opts.min() : opts.min; + var min = minOption instanceof Date + ? minOption + : minOption + ? parseDate(minOption, dateFormat, separator) + : d; + var maxOption = typeof opts.max === 'function' ? opts.max() : opts.max; + var max = maxOption instanceof Date + ? maxOption + : maxOption + ? parseDate(maxOption, dateFormat, separator) + : d; + // In order to avoid displaying a date string like "Mon Dec 08 2014 19:14:12 GMT+0000 (WET)" + var minOptionStr = minOption instanceof Date ? formatDate(min, opts.format) : minOption; + var maxOptionStr = maxOption instanceof Date ? formatDate(max, opts.format) : maxOption; + switch (true) { + case !!minOptionStr && !maxOptionStr: + return { + message: format(input.l10n ? input.l10n.date.min : message, minOptionStr), + meta: { + date: d, + }, + valid: d.getTime() >= min.getTime(), + }; + case !!maxOptionStr && !minOptionStr: + return { + message: format(input.l10n ? input.l10n.date.max : message, maxOptionStr), + meta: { + date: d, + }, + valid: d.getTime() <= max.getTime(), + }; + case !!maxOptionStr && !!minOptionStr: + return { + message: format(input.l10n ? input.l10n.date.range : message, [minOptionStr, maxOptionStr]), + meta: { + date: d, + }, + valid: d.getTime() <= max.getTime() && d.getTime() >= min.getTime(), + }; + default: + return { + message: "".concat(message), + meta: { + date: d, + }, + valid: true, + }; + } + }, + }; + }; + + return date; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.min.js new file mode 100644 index 0000000..6871d5c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-date/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-date + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.date=t(e.FormValidation))}(this,(function(e){"use strict";var t=e.utils.format,n=e.utils.isValidDate,a=e.utils.removeUndefined,r=function(e,t,n){var a=t.indexOf("YYYY"),r=t.indexOf("MM"),l=t.indexOf("DD");if(-1===a||-1===r||-1===l)return null;var i=e.split(" "),s=i[0].split(n);if(s.length<3)return null;var o=new Date(parseInt(s[a],10),parseInt(s[r],10)-1,parseInt(s[l],10)),c=i.length>2?i[2]:null;if(i.length>1){var d=i[1].split(":"),u=d.length>0?parseInt(d[0],10):0;o.setHours(c&&"PM"===c.toUpperCase()&&u<12?u+12:u),o.setMinutes(d.length>1?parseInt(d[1],10):0),o.setSeconds(d.length>2?parseInt(d[2],10):0)}return o},l=function(e,t){var n=t.replace(/Y/g,"y").replace(/M/g,"m").replace(/D/g,"d").replace(/:m/g,":M").replace(/:mm/g,":MM").replace(/:S/,":s").replace(/:SS/,":ss"),a=e.getDate(),r=a<10?"0".concat(a):a,l=e.getMonth()+1,i=l<10?"0".concat(l):l,s="".concat(e.getFullYear()).substr(2),o=e.getFullYear(),c=e.getHours()%12||12,d=c<10?"0".concat(c):c,u=e.getHours(),f=u<10?"0".concat(u):u,g=e.getMinutes(),m=g<10?"0".concat(g):g,p=e.getSeconds(),h=p<10?"0".concat(p):p,v={H:"".concat(u),HH:"".concat(f),M:"".concat(g),MM:"".concat(m),d:"".concat(a),dd:"".concat(r),h:"".concat(c),hh:"".concat(d),m:"".concat(l),mm:"".concat(i),s:"".concat(p),ss:"".concat(h),yy:"".concat(s),yyyy:"".concat(o)};return n.replace(/d{1,4}|m{1,4}|yy(?:yy)?|([HhMs])\1?|"[^"]*"|'[^']*'/g,(function(e){return v[e]?v[e]:e.slice(1,e.length-1)}))};return function(){return{validate:function(e){if(""===e.value)return{meta:{date:null},valid:!0};var i=Object.assign({},{format:e.element&&"date"===e.element.getAttribute("type")?"YYYY-MM-DD":"MM/DD/YYYY",message:""},a(e.options)),s=e.l10n?e.l10n.date.default:i.message,o={message:"".concat(s),meta:{date:null},valid:!1},c=i.format.split(" "),d=c.length>1?c[1]:null,u=c.length>2?c[2]:null,f=e.value.split(" "),g=f[0],m=f.length>1?f[1]:null,p=f.length>2?f[2]:null;if(c.length!==f.length)return o;var h=i.separator||(-1!==g.indexOf("/")?"/":-1!==g.indexOf("-")?"-":-1!==g.indexOf(".")?".":"/");if(null===h||-1===g.indexOf(h))return o;var v=g.split(h),M=c[0].split(h);if(v.length!==M.length)return o;var Y=v[M.indexOf("YYYY")],y=v[M.indexOf("MM")],D=v[M.indexOf("DD")];if(!/^\d+$/.test(Y)||!/^\d+$/.test(y)||!/^\d+$/.test(D)||Y.length>4||y.length>2||D.length>2)return o;var x=parseInt(Y,10),I=parseInt(y,10),O=parseInt(D,10);if(!n(x,I,O))return o;var T=new Date(x,I-1,O);if(d){var F=m.split(":");if(d.split(":").length!==F.length)return o;var H=F.length>0?F[0].length<=2&&/^\d+$/.test(F[0])?parseInt(F[0],10):-1:0,V=F.length>1?F[1].length<=2&&/^\d+$/.test(F[1])?parseInt(F[1],10):-1:0,b=F.length>2?F[2].length<=2&&/^\d+$/.test(F[2])?parseInt(F[2],10):-1:0;if(-1===H||-1===V||-1===b)return o;if(b<0||b>60)return o;if(H<0||H>=24||u&&H>12)return o;if(V<0||V>59)return o;T.setHours(p&&"PM"===p.toUpperCase()&&H<12?H+12:H),T.setMinutes(V),T.setSeconds(b)}var S="function"==typeof i.min?i.min():i.min,$=S instanceof Date?S:S?r(S,M,h):T,w="function"==typeof i.max?i.max():i.max,U=w instanceof Date?w:w?r(w,M,h):T,j=S instanceof Date?l($,i.format):S,C=w instanceof Date?l(U,i.format):w;switch(!0){case!!j&&!C:return{message:t(e.l10n?e.l10n.date.min:s,j),meta:{date:T},valid:T.getTime()>=$.getTime()};case!!C&&!j:return{message:t(e.l10n?e.l10n.date.max:s,C),meta:{date:T},valid:T.getTime()<=U.getTime()};case!!C&&!!j:return{message:t(e.l10n?e.l10n.date.range:s,[j,C]),meta:{date:T},valid:T.getTime()<=U.getTime()&&T.getTime()>=$.getTime()};default:return{message:"".concat(s),meta:{date:T},valid:!0}}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.js new file mode 100644 index 0000000..b9b71be --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.js @@ -0,0 +1,27 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.different = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function different() { + return { + validate: function (input) { + var compareWith = 'function' === typeof input.options.compare + ? input.options.compare.call(this) + : input.options.compare; + return { + valid: compareWith === '' || input.value !== compareWith, + }; + }, + }; + } + + return different; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.min.js new file mode 100644 index 0000000..3dae084 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-different/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-different + * @version 2.4.0 + */ + +!function(o,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.validators=o.FormValidation.validators||{},o.FormValidation.validators.different=i())}(this,(function(){"use strict";return function(){return{validate:function(o){var i="function"==typeof o.options.compare?o.options.compare.call(this):o.options.compare;return{valid:""===i||o.value!==i}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.js new file mode 100644 index 0000000..b295488 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.js @@ -0,0 +1,25 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.digits = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function digits() { + return { + /** + * Return true if the input value contains digits only + */ + validate: function (input) { + return { valid: input.value === '' || /^\d+$/.test(input.value) }; + }, + }; + } + + return digits; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.min.js new file mode 100644 index 0000000..1c1927a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-digits/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-digits + * @version 2.4.0 + */ + +!function(i,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.digits=t())}(this,(function(){"use strict";return function(){return{validate:function(i){return{valid:""===i.value||/^\d+$/.test(i.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.js new file mode 100644 index 0000000..9e61b76 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.js @@ -0,0 +1,39 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.ean = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function ean() { + return { + /** + * Validate EAN (International Article Number) + * @see http://en.wikipedia.org/wiki/European_Article_Number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + if (!/^(\d{8}|\d{12}|\d{13}|\d{14})$/.test(input.value)) { + return { valid: false }; + } + var length = input.value.length; + var sum = 0; + var weight = length === 8 ? [3, 1] : [1, 3]; + for (var i = 0; i < length - 1; i++) { + sum += parseInt(input.value.charAt(i), 10) * weight[i % 2]; + } + sum = (10 - (sum % 10)) % 10; + return { valid: "".concat(sum) === input.value.charAt(length - 1) }; + }, + }; + } + + return ean; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.min.js new file mode 100644 index 0000000..665be22 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ean/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-ean + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.ean=t())}(this,(function(){"use strict";return function(){return{validate:function(e){if(""===e.value)return{valid:!0};if(!/^(\d{8}|\d{12}|\d{13}|\d{14})$/.test(e.value))return{valid:!1};for(var t=e.value.length,a=0,i=8===t?[3,1]:[1,3],n=0;n + */ + function ein() { + // The first two digits are called campus + // See http://en.wikipedia.org/wiki/Employer_Identification_Number + // http://www.irs.gov/Businesses/Small-Businesses-&-Self-Employed/How-EINs-are-Assigned-and-Valid-EIN-Prefixes + var CAMPUS = { + ANDOVER: ['10', '12'], + ATLANTA: ['60', '67'], + AUSTIN: ['50', '53'], + BROOKHAVEN: [ + '01', + '02', + '03', + '04', + '05', + '06', + '11', + '13', + '14', + '16', + '21', + '22', + '23', + '25', + '34', + '51', + '52', + '54', + '55', + '56', + '57', + '58', + '59', + '65', + ], + CINCINNATI: ['30', '32', '35', '36', '37', '38', '61'], + FRESNO: ['15', '24'], + INTERNET: ['20', '26', '27', '45', '46', '47'], + KANSAS_CITY: ['40', '44'], + MEMPHIS: ['94', '95'], + OGDEN: ['80', '90'], + PHILADELPHIA: [ + '33', + '39', + '41', + '42', + '43', + '48', + '62', + '63', + '64', + '66', + '68', + '71', + '72', + '73', + '74', + '75', + '76', + '77', + '81', + '82', + '83', + '84', + '85', + '86', + '87', + '88', + '91', + '92', + '93', + '98', + '99', + ], + SMALL_BUSINESS_ADMINISTRATION: ['31'], + }; + return { + /** + * Validate EIN (Employer Identification Number) which is also known as + * Federal Employer Identification Number (FEIN) or Federal Tax Identification Number + */ + validate: function (input) { + if (input.value === '') { + return { + meta: null, + valid: true, + }; + } + if (!/^[0-9]{2}-?[0-9]{7}$/.test(input.value)) { + return { + meta: null, + valid: false, + }; + } + // Check the first two digits + var campus = "".concat(input.value.substr(0, 2)); + for (var key in CAMPUS) { + if (CAMPUS[key].indexOf(campus) !== -1) { + return { + meta: { + campus: key, + }, + valid: true, + }; + } + } + return { + meta: null, + valid: false, + }; + }, + }; + } + + return ein; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ein/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ein/index.min.js new file mode 100644 index 0000000..ab9ef77 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ein/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-ein + * @version 2.4.0 + */ + +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.ein=i())}(this,(function(){"use strict";return function(){var e={ANDOVER:["10","12"],ATLANTA:["60","67"],AUSTIN:["50","53"],BROOKHAVEN:["01","02","03","04","05","06","11","13","14","16","21","22","23","25","34","51","52","54","55","56","57","58","59","65"],CINCINNATI:["30","32","35","36","37","38","61"],FRESNO:["15","24"],INTERNET:["20","26","27","45","46","47"],KANSAS_CITY:["40","44"],MEMPHIS:["94","95"],OGDEN:["80","90"],PHILADELPHIA:["33","39","41","42","43","48","62","63","64","66","68","71","72","73","74","75","76","77","81","82","83","84","85","86","87","88","91","92","93","98","99"],SMALL_BUSINESS_ADMINISTRATION:["31"]};return{validate:function(i){if(""===i.value)return{meta:null,valid:!0};if(!/^[0-9]{2}-?[0-9]{7}$/.test(i.value))return{meta:null,valid:!1};var t="".concat(i.value.substr(0,2));for(var a in e)if(-1!==e[a].indexOf(t))return{meta:{campus:a},valid:!0};return{meta:null,valid:!1}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.js new file mode 100644 index 0000000..5f9f2e4 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.js @@ -0,0 +1,83 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.emailAddress = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + // Email address regular expression + // http://stackoverflow.com/questions/46155/validate-email-address-in-javascript + var GLOBAL_DOMAIN_OPTIONAL = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/; + var GLOBAL_DOMAIN_REQUIRED = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/; + function emailAddress() { + var splitEmailAddresses = function (emailAddresses, separator) { + var quotedFragments = emailAddresses.split(/"/); + var quotedFragmentCount = quotedFragments.length; + var emailAddressArray = []; + var nextEmailAddress = ''; + for (var i = 0; i < quotedFragmentCount; i++) { + if (i % 2 === 0) { + var splitEmailAddressFragments = quotedFragments[i].split(separator); + var splitEmailAddressFragmentCount = splitEmailAddressFragments.length; + if (splitEmailAddressFragmentCount === 1) { + nextEmailAddress += splitEmailAddressFragments[0]; + } + else { + emailAddressArray.push(nextEmailAddress + splitEmailAddressFragments[0]); + for (var j = 1; j < splitEmailAddressFragmentCount - 1; j++) { + emailAddressArray.push(splitEmailAddressFragments[j]); + } + nextEmailAddress = splitEmailAddressFragments[splitEmailAddressFragmentCount - 1]; + } + } + else { + nextEmailAddress += '"' + quotedFragments[i]; + if (i < quotedFragmentCount - 1) { + nextEmailAddress += '"'; + } + } + } + emailAddressArray.push(nextEmailAddress); + return emailAddressArray; + }; + return { + /** + * Return true if and only if the input value is a valid email address + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { + multiple: false, + requireGlobalDomain: false, + separator: /[,;]/, + }, removeUndefined(input.options)); + var emailRegExp = opts.requireGlobalDomain ? GLOBAL_DOMAIN_REQUIRED : GLOBAL_DOMAIN_OPTIONAL; + var allowMultiple = opts.multiple === true || "".concat(opts.multiple) === 'true'; + if (allowMultiple) { + var separator = opts.separator || /[,;]/; + var addresses = splitEmailAddresses(input.value, separator); + var length_1 = addresses.length; + for (var i = 0; i < length_1; i++) { + if (!emailRegExp.test(addresses[i])) { + return { valid: false }; + } + } + return { valid: true }; + } + else { + return { valid: emailRegExp.test(input.value) }; + } + }, + }; + } + + return emailAddress; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.min.js new file mode 100644 index 0000000..096a353 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-email-address/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-email-address + * @version 2.4.0 + */ + +!function(a,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((a="undefined"!=typeof globalThis?globalThis:a||self).FormValidation=a.FormValidation||{},a.FormValidation.validators=a.FormValidation.validators||{},a.FormValidation.validators.emailAddress=e(a.FormValidation))}(this,(function(a){"use strict";var e=a.utils.removeUndefined,i=/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,t=/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/;return function(){return{validate:function(a){if(""===a.value)return{valid:!0};var r=Object.assign({},{multiple:!1,requireGlobalDomain:!1,separator:/[,;]/},e(a.options)),o=r.requireGlobalDomain?t:i;if(!0===r.multiple||"true"==="".concat(r.multiple)){for(var l=r.separator||/[,;]/,n=function(a,e){for(var i=a.split(/"/),t=i.length,r=[],o="",l=0;l + */ + // Get the file name without extension + var getFileName = function (fileName) { + return fileName.indexOf('.') === -1 ? fileName : fileName.split('.').slice(0, -1).join('.'); + }; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function file() { + return { + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var extension; + var name; + var extensions = input.options.extension + ? input.options.extension + .toLowerCase() + .split(',') + .map(function (item) { return item.trim(); }) + : []; + var types = input.options.type + ? input.options.type + .toLowerCase() + .split(',') + .map(function (item) { return item.trim(); }) + : []; + var html5 = window['File'] && window['FileList'] && window['FileReader']; + if (html5) { + // Get FileList instance + var files = input.element.files; + var total = files.length; + var allSize = 0; + // Check the maxFiles + if (input.options.maxFiles && total > parseInt("".concat(input.options.maxFiles), 10)) { + return { + meta: { error: 'INVALID_MAX_FILES' }, + valid: false, + }; + } + // Check the minFiles + if (input.options.minFiles && total < parseInt("".concat(input.options.minFiles), 10)) { + return { + meta: { error: 'INVALID_MIN_FILES' }, + valid: false, + }; + } + var metaData = {}; + for (var i = 0; i < total; i++) { + allSize += files[i].size; + extension = files[i].name.substr(files[i].name.lastIndexOf('.') + 1); + metaData = { + ext: extension, + file: files[i], + size: files[i].size, + type: files[i].type, + }; + // Check the minSize + if (input.options.minSize && files[i].size < parseInt("".concat(input.options.minSize), 10)) { + return { + meta: Object.assign({}, { error: 'INVALID_MIN_SIZE' }, metaData), + valid: false, + }; + } + // Check the maxSize + if (input.options.maxSize && files[i].size > parseInt("".concat(input.options.maxSize), 10)) { + return { + meta: Object.assign({}, { error: 'INVALID_MAX_SIZE' }, metaData), + valid: false, + }; + } + // Check file extension + if (extensions.length > 0 && extensions.indexOf(extension.toLowerCase()) === -1) { + return { + meta: Object.assign({}, { error: 'INVALID_EXTENSION' }, metaData), + valid: false, + }; + } + // Check file type + if (types.length > 0 && files[i].type && types.indexOf(files[i].type.toLowerCase()) === -1) { + return { + meta: Object.assign({}, { error: 'INVALID_TYPE' }, metaData), + valid: false, + }; + } + // Check file name + if (input.options.validateFileName && !input.options.validateFileName(getFileName(files[i].name))) { + return { + meta: Object.assign({}, { error: 'INVALID_NAME' }, metaData), + valid: false, + }; + } + } + // Check the maxTotalSize + if (input.options.maxTotalSize && allSize > parseInt("".concat(input.options.maxTotalSize), 10)) { + return { + meta: Object.assign({}, { + error: 'INVALID_MAX_TOTAL_SIZE', + totalSize: allSize, + }, metaData), + valid: false, + }; + } + // Check the minTotalSize + if (input.options.minTotalSize && allSize < parseInt("".concat(input.options.minTotalSize), 10)) { + return { + meta: Object.assign({}, { + error: 'INVALID_MIN_TOTAL_SIZE', + totalSize: allSize, + }, metaData), + valid: false, + }; + } + } + else { + // Check file extension + extension = input.value.substr(input.value.lastIndexOf('.') + 1); + if (extensions.length > 0 && extensions.indexOf(extension.toLowerCase()) === -1) { + return { + meta: { + error: 'INVALID_EXTENSION', + ext: extension, + }, + valid: false, + }; + } + // Check file name + name = getFileName(input.value); + if (input.options.validateFileName && !input.options.validateFileName(name)) { + return { + meta: { + error: 'INVALID_NAME', + name: name, + }, + valid: false, + }; + } + } + return { valid: true }; + }, + }; + } + + return file; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-file/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-file/index.min.js new file mode 100644 index 0000000..8a9131a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-file/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-file + * @version 2.4.0 + */ + +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.file=i())}(this,(function(){"use strict";var e=function(e){return-1===e.indexOf(".")?e:e.split(".").slice(0,-1).join(".")};return function(){return{validate:function(i){if(""===i.value)return{valid:!0};var t,n,o=i.options.extension?i.options.extension.toLowerCase().split(",").map((function(e){return e.trim()})):[],a=i.options.type?i.options.type.toLowerCase().split(",").map((function(e){return e.trim()})):[];if(window.File&&window.FileList&&window.FileReader){var r=i.element.files,s=r.length,l=0;if(i.options.maxFiles&&s>parseInt("".concat(i.options.maxFiles),10))return{meta:{error:"INVALID_MAX_FILES"},valid:!1};if(i.options.minFiles&&sparseInt("".concat(i.options.maxSize),10))return{meta:Object.assign({},{error:"INVALID_MAX_SIZE"},d),valid:!1};if(o.length>0&&-1===o.indexOf(t.toLowerCase()))return{meta:Object.assign({},{error:"INVALID_EXTENSION"},d),valid:!1};if(a.length>0&&r[m].type&&-1===a.indexOf(r[m].type.toLowerCase()))return{meta:Object.assign({},{error:"INVALID_TYPE"},d),valid:!1};if(i.options.validateFileName&&!i.options.validateFileName(e(r[m].name)))return{meta:Object.assign({},{error:"INVALID_NAME"},d),valid:!1}}if(i.options.maxTotalSize&&l>parseInt("".concat(i.options.maxTotalSize),10))return{meta:Object.assign({},{error:"INVALID_MAX_TOTAL_SIZE",totalSize:l},d),valid:!1};if(i.options.minTotalSize&&l0&&-1===o.indexOf(t.toLowerCase()))return{meta:{error:"INVALID_EXTENSION",ext:t},valid:!1};if(n=e(i.value),i.options.validateFileName&&!i.options.validateFileName(n))return{meta:{error:"INVALID_NAME",name:n},valid:!1}}return{valid:!0}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.js new file mode 100644 index 0000000..68342c2 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.js @@ -0,0 +1,36 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.greaterThan = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function greaterThan() { + return { + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { inclusive: true, message: '' }, removeUndefined(input.options)); + var minValue = parseFloat("".concat(opts.min).replace(',', '.')); + return opts.inclusive + ? { + message: format(input.l10n ? opts.message || input.l10n.greaterThan.default : opts.message, "".concat(minValue)), + valid: parseFloat(input.value) >= minValue, + } + : { + message: format(input.l10n ? opts.message || input.l10n.greaterThan.notInclusive : opts.message, "".concat(minValue)), + valid: parseFloat(input.value) > minValue, + }; + }, + }; + } + + return greaterThan; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.min.js new file mode 100644 index 0000000..a0ca0f8 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-greater-than/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-greater-than + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.greaterThan=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.format,i=e.utils.removeUndefined;return function(){return{validate:function(e){if(""===e.value)return{valid:!0};var n=Object.assign({},{inclusive:!0,message:""},i(e.options)),o=parseFloat("".concat(n.min).replace(",","."));return n.inclusive?{message:a(e.l10n?n.message||e.l10n.greaterThan.default:n.message,"".concat(o)),valid:parseFloat(e.value)>=o}:{message:a(e.l10n?n.message||e.l10n.greaterThan.notInclusive:n.message,"".concat(o)),valid:parseFloat(e.value)>o}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.js new file mode 100644 index 0000000..589079c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.js @@ -0,0 +1,38 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.grid = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var mod37And36 = core.algorithms.mod37And36; + function grid() { + return { + /** + * Validate GRId (Global Release Identifier) + * @see http://en.wikipedia.org/wiki/Global_Release_Identifier + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var v = input.value.toUpperCase(); + if (!/^[GRID:]*([0-9A-Z]{2})[-\s]*([0-9A-Z]{5})[-\s]*([0-9A-Z]{10})[-\s]*([0-9A-Z]{1})$/g.test(v)) { + return { valid: false }; + } + v = v.replace(/\s/g, '').replace(/-/g, ''); + if ('GRID:' === v.substr(0, 5)) { + v = v.substr(5); + } + return { valid: mod37And36(v) }; + }, + }; + } + + return grid; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.min.js new file mode 100644 index 0000000..e873e09 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-grid/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-grid + * @version 2.4.0 + */ + +!function(i,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.grid=o(i.FormValidation))}(this,(function(i){"use strict";var o=i.algorithms.mod37And36;return function(){return{validate:function(i){if(""===i.value)return{valid:!0};var e=i.value.toUpperCase();return/^[GRID:]*([0-9A-Z]{2})[-\s]*([0-9A-Z]{5})[-\s]*([0-9A-Z]{10})[-\s]*([0-9A-Z]{1})$/g.test(e)?("GRID:"===(e=e.replace(/\s/g,"").replace(/-/g,"")).substr(0,5)&&(e=e.substr(5)),{valid:o(e)}):{valid:!1}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.js new file mode 100644 index 0000000..7c4a6aa --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.js @@ -0,0 +1,27 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.hex = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function hex() { + return { + /** + * Return true if and only if the input value is a valid hexadecimal number + */ + validate: function (input) { + return { + valid: input.value === '' || /^[0-9a-fA-F]+$/.test(input.value), + }; + }, + }; + } + + return hex; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.min.js new file mode 100644 index 0000000..1ba00e7 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-hex/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-hex + * @version 2.4.0 + */ + +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.hex=i())}(this,(function(){"use strict";return function(){return{validate:function(e){return{valid:""===e.value||/^[0-9a-fA-F]+$/.test(e.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.js new file mode 100644 index 0000000..f068604 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.js @@ -0,0 +1,202 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.iban = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function iban() { + // http://www.swift.com/dsp/resources/documents/IBAN_Registry.pdf + // http://en.wikipedia.org/wiki/International_Bank_Account_Number#IBAN_formats_by_country + var IBAN_PATTERNS = { + AD: 'AD[0-9]{2}[0-9]{4}[0-9]{4}[A-Z0-9]{12}', + AE: 'AE[0-9]{2}[0-9]{3}[0-9]{16}', + AL: 'AL[0-9]{2}[0-9]{8}[A-Z0-9]{16}', + AO: 'AO[0-9]{2}[0-9]{21}', + AT: 'AT[0-9]{2}[0-9]{5}[0-9]{11}', + AZ: 'AZ[0-9]{2}[A-Z]{4}[A-Z0-9]{20}', + BA: 'BA[0-9]{2}[0-9]{3}[0-9]{3}[0-9]{8}[0-9]{2}', + BE: 'BE[0-9]{2}[0-9]{3}[0-9]{7}[0-9]{2}', + BF: 'BF[0-9]{2}[0-9]{23}', + BG: 'BG[0-9]{2}[A-Z]{4}[0-9]{4}[0-9]{2}[A-Z0-9]{8}', + BH: 'BH[0-9]{2}[A-Z]{4}[A-Z0-9]{14}', + BI: 'BI[0-9]{2}[0-9]{12}', + BJ: 'BJ[0-9]{2}[A-Z]{1}[0-9]{23}', + BR: 'BR[0-9]{2}[0-9]{8}[0-9]{5}[0-9]{10}[A-Z][A-Z0-9]', + CH: 'CH[0-9]{2}[0-9]{5}[A-Z0-9]{12}', + CI: 'CI[0-9]{2}[A-Z]{1}[0-9]{23}', + CM: 'CM[0-9]{2}[0-9]{23}', + CR: 'CR[0-9]{2}[0-9][0-9]{3}[0-9]{14}', + CV: 'CV[0-9]{2}[0-9]{21}', + CY: 'CY[0-9]{2}[0-9]{3}[0-9]{5}[A-Z0-9]{16}', + CZ: 'CZ[0-9]{2}[0-9]{20}', + DE: 'DE[0-9]{2}[0-9]{8}[0-9]{10}', + DK: 'DK[0-9]{2}[0-9]{14}', + DO: 'DO[0-9]{2}[A-Z0-9]{4}[0-9]{20}', + DZ: 'DZ[0-9]{2}[0-9]{20}', + EE: 'EE[0-9]{2}[0-9]{2}[0-9]{2}[0-9]{11}[0-9]{1}', + ES: 'ES[0-9]{2}[0-9]{4}[0-9]{4}[0-9]{1}[0-9]{1}[0-9]{10}', + FI: 'FI[0-9]{2}[0-9]{6}[0-9]{7}[0-9]{1}', + FO: 'FO[0-9]{2}[0-9]{4}[0-9]{9}[0-9]{1}', + FR: 'FR[0-9]{2}[0-9]{5}[0-9]{5}[A-Z0-9]{11}[0-9]{2}', + GB: 'GB[0-9]{2}[A-Z]{4}[0-9]{6}[0-9]{8}', + GE: 'GE[0-9]{2}[A-Z]{2}[0-9]{16}', + GI: 'GI[0-9]{2}[A-Z]{4}[A-Z0-9]{15}', + GL: 'GL[0-9]{2}[0-9]{4}[0-9]{9}[0-9]{1}', + GR: 'GR[0-9]{2}[0-9]{3}[0-9]{4}[A-Z0-9]{16}', + GT: 'GT[0-9]{2}[A-Z0-9]{4}[A-Z0-9]{20}', + HR: 'HR[0-9]{2}[0-9]{7}[0-9]{10}', + HU: 'HU[0-9]{2}[0-9]{3}[0-9]{4}[0-9]{1}[0-9]{15}[0-9]{1}', + IE: 'IE[0-9]{2}[A-Z]{4}[0-9]{6}[0-9]{8}', + IL: 'IL[0-9]{2}[0-9]{3}[0-9]{3}[0-9]{13}', + IR: 'IR[0-9]{2}[0-9]{22}', + IS: 'IS[0-9]{2}[0-9]{4}[0-9]{2}[0-9]{6}[0-9]{10}', + IT: 'IT[0-9]{2}[A-Z]{1}[0-9]{5}[0-9]{5}[A-Z0-9]{12}', + JO: 'JO[0-9]{2}[A-Z]{4}[0-9]{4}[0]{8}[A-Z0-9]{10}', + KW: 'KW[0-9]{2}[A-Z]{4}[0-9]{22}', + KZ: 'KZ[0-9]{2}[0-9]{3}[A-Z0-9]{13}', + LB: 'LB[0-9]{2}[0-9]{4}[A-Z0-9]{20}', + LI: 'LI[0-9]{2}[0-9]{5}[A-Z0-9]{12}', + LT: 'LT[0-9]{2}[0-9]{5}[0-9]{11}', + LU: 'LU[0-9]{2}[0-9]{3}[A-Z0-9]{13}', + LV: 'LV[0-9]{2}[A-Z]{4}[A-Z0-9]{13}', + MC: 'MC[0-9]{2}[0-9]{5}[0-9]{5}[A-Z0-9]{11}[0-9]{2}', + MD: 'MD[0-9]{2}[A-Z0-9]{20}', + ME: 'ME[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}', + MG: 'MG[0-9]{2}[0-9]{23}', + MK: 'MK[0-9]{2}[0-9]{3}[A-Z0-9]{10}[0-9]{2}', + ML: 'ML[0-9]{2}[A-Z]{1}[0-9]{23}', + MR: 'MR13[0-9]{5}[0-9]{5}[0-9]{11}[0-9]{2}', + MT: 'MT[0-9]{2}[A-Z]{4}[0-9]{5}[A-Z0-9]{18}', + MU: 'MU[0-9]{2}[A-Z]{4}[0-9]{2}[0-9]{2}[0-9]{12}[0-9]{3}[A-Z]{3}', + MZ: 'MZ[0-9]{2}[0-9]{21}', + NL: 'NL[0-9]{2}[A-Z]{4}[0-9]{10}', + NO: 'NO[0-9]{2}[0-9]{4}[0-9]{6}[0-9]{1}', + PK: 'PK[0-9]{2}[A-Z]{4}[A-Z0-9]{16}', + PL: 'PL[0-9]{2}[0-9]{8}[0-9]{16}', + PS: 'PS[0-9]{2}[A-Z]{4}[A-Z0-9]{21}', + PT: 'PT[0-9]{2}[0-9]{4}[0-9]{4}[0-9]{11}[0-9]{2}', + QA: 'QA[0-9]{2}[A-Z]{4}[A-Z0-9]{21}', + RO: 'RO[0-9]{2}[A-Z]{4}[A-Z0-9]{16}', + RS: 'RS[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}', + SA: 'SA[0-9]{2}[0-9]{2}[A-Z0-9]{18}', + SE: 'SE[0-9]{2}[0-9]{3}[0-9]{16}[0-9]{1}', + SI: 'SI[0-9]{2}[0-9]{5}[0-9]{8}[0-9]{2}', + SK: 'SK[0-9]{2}[0-9]{4}[0-9]{6}[0-9]{10}', + SM: 'SM[0-9]{2}[A-Z]{1}[0-9]{5}[0-9]{5}[A-Z0-9]{12}', + SN: 'SN[0-9]{2}[A-Z]{1}[0-9]{23}', + TL: 'TL38[0-9]{3}[0-9]{14}[0-9]{2}', + TN: 'TN59[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}', + TR: 'TR[0-9]{2}[0-9]{5}[A-Z0-9]{1}[A-Z0-9]{16}', + VG: 'VG[0-9]{2}[A-Z]{4}[0-9]{16}', + XK: 'XK[0-9]{2}[0-9]{4}[0-9]{10}[0-9]{2}', // Republic of Kosovo + }; + // List of SEPA country codes + var SEPA_COUNTRIES = [ + 'AT', + 'BE', + 'BG', + 'CH', + 'CY', + 'CZ', + 'DE', + 'DK', + 'EE', + 'ES', + 'FI', + 'FR', + 'GB', + 'GI', + 'GR', + 'HR', + 'HU', + 'IE', + 'IS', + 'IT', + 'LI', + 'LT', + 'LU', + 'LV', + 'MC', + 'MT', + 'NL', + 'NO', + 'PL', + 'PT', + 'RO', + 'SE', + 'SI', + 'SK', + 'SM', + ]; + return { + /** + * Validate an International Bank Account Number (IBAN) + * To test it, take the sample IBAN from + * http://www.nordea.com/Our+services/ + * International+products+and+services/Cash+Management/IBAN+countries/908462.html + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { message: '' }, removeUndefined(input.options)); + var v = input.value.replace(/[^a-zA-Z0-9]/g, '').toUpperCase(); + // TODO: `country` can be a dynamic option + var country = opts.country || v.substr(0, 2); + if (!IBAN_PATTERNS[country]) { + return { + message: opts.message, + valid: false, + }; + } + // Check whether or not the sepa option is enabled + if (opts.sepa !== undefined) { + var isSepaCountry = SEPA_COUNTRIES.indexOf(country) !== -1; + if (((opts.sepa === 'true' || opts.sepa === true) && !isSepaCountry) || + ((opts.sepa === 'false' || opts.sepa === false) && isSepaCountry)) { + return { + message: opts.message, + valid: false, + }; + } + } + var msg = format(input.l10n ? opts.message || input.l10n.iban.country : opts.message, input.l10n ? input.l10n.iban.countries[country] : country); + if (!new RegExp("^".concat(IBAN_PATTERNS[country], "$")).test(input.value)) { + return { + message: msg, + valid: false, + }; + } + v = "".concat(v.substr(4)).concat(v.substr(0, 4)); + v = v + .split('') + .map(function (n) { + var code = n.charCodeAt(0); + return code >= 'A'.charCodeAt(0) && code <= 'Z'.charCodeAt(0) + ? // Replace A, B, C, ..., Z with 10, 11, ..., 35 + code - 'A'.charCodeAt(0) + 10 + : n; + }) + .join(''); + var temp = parseInt(v.substr(0, 1), 10); + var length = v.length; + for (var i = 1; i < length; ++i) { + temp = (temp * 10 + parseInt(v.substr(i, 1), 10)) % 97; + } + return { + message: msg, + valid: temp === 1, + }; + }, + }; + } + + return iban; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.min.js new file mode 100644 index 0000000..c1b013c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-iban/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-iban + * @version 2.4.0 + */ + +!function(A,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((A="undefined"!=typeof globalThis?globalThis:A||self).FormValidation=A.FormValidation||{},A.FormValidation.validators=A.FormValidation.validators||{},A.FormValidation.validators.iban=e(A.FormValidation))}(this,(function(A){"use strict";var e=A.utils.format,a=A.utils.removeUndefined;return function(){var A={AD:"AD[0-9]{2}[0-9]{4}[0-9]{4}[A-Z0-9]{12}",AE:"AE[0-9]{2}[0-9]{3}[0-9]{16}",AL:"AL[0-9]{2}[0-9]{8}[A-Z0-9]{16}",AO:"AO[0-9]{2}[0-9]{21}",AT:"AT[0-9]{2}[0-9]{5}[0-9]{11}",AZ:"AZ[0-9]{2}[A-Z]{4}[A-Z0-9]{20}",BA:"BA[0-9]{2}[0-9]{3}[0-9]{3}[0-9]{8}[0-9]{2}",BE:"BE[0-9]{2}[0-9]{3}[0-9]{7}[0-9]{2}",BF:"BF[0-9]{2}[0-9]{23}",BG:"BG[0-9]{2}[A-Z]{4}[0-9]{4}[0-9]{2}[A-Z0-9]{8}",BH:"BH[0-9]{2}[A-Z]{4}[A-Z0-9]{14}",BI:"BI[0-9]{2}[0-9]{12}",BJ:"BJ[0-9]{2}[A-Z]{1}[0-9]{23}",BR:"BR[0-9]{2}[0-9]{8}[0-9]{5}[0-9]{10}[A-Z][A-Z0-9]",CH:"CH[0-9]{2}[0-9]{5}[A-Z0-9]{12}",CI:"CI[0-9]{2}[A-Z]{1}[0-9]{23}",CM:"CM[0-9]{2}[0-9]{23}",CR:"CR[0-9]{2}[0-9][0-9]{3}[0-9]{14}",CV:"CV[0-9]{2}[0-9]{21}",CY:"CY[0-9]{2}[0-9]{3}[0-9]{5}[A-Z0-9]{16}",CZ:"CZ[0-9]{2}[0-9]{20}",DE:"DE[0-9]{2}[0-9]{8}[0-9]{10}",DK:"DK[0-9]{2}[0-9]{14}",DO:"DO[0-9]{2}[A-Z0-9]{4}[0-9]{20}",DZ:"DZ[0-9]{2}[0-9]{20}",EE:"EE[0-9]{2}[0-9]{2}[0-9]{2}[0-9]{11}[0-9]{1}",ES:"ES[0-9]{2}[0-9]{4}[0-9]{4}[0-9]{1}[0-9]{1}[0-9]{10}",FI:"FI[0-9]{2}[0-9]{6}[0-9]{7}[0-9]{1}",FO:"FO[0-9]{2}[0-9]{4}[0-9]{9}[0-9]{1}",FR:"FR[0-9]{2}[0-9]{5}[0-9]{5}[A-Z0-9]{11}[0-9]{2}",GB:"GB[0-9]{2}[A-Z]{4}[0-9]{6}[0-9]{8}",GE:"GE[0-9]{2}[A-Z]{2}[0-9]{16}",GI:"GI[0-9]{2}[A-Z]{4}[A-Z0-9]{15}",GL:"GL[0-9]{2}[0-9]{4}[0-9]{9}[0-9]{1}",GR:"GR[0-9]{2}[0-9]{3}[0-9]{4}[A-Z0-9]{16}",GT:"GT[0-9]{2}[A-Z0-9]{4}[A-Z0-9]{20}",HR:"HR[0-9]{2}[0-9]{7}[0-9]{10}",HU:"HU[0-9]{2}[0-9]{3}[0-9]{4}[0-9]{1}[0-9]{15}[0-9]{1}",IE:"IE[0-9]{2}[A-Z]{4}[0-9]{6}[0-9]{8}",IL:"IL[0-9]{2}[0-9]{3}[0-9]{3}[0-9]{13}",IR:"IR[0-9]{2}[0-9]{22}",IS:"IS[0-9]{2}[0-9]{4}[0-9]{2}[0-9]{6}[0-9]{10}",IT:"IT[0-9]{2}[A-Z]{1}[0-9]{5}[0-9]{5}[A-Z0-9]{12}",JO:"JO[0-9]{2}[A-Z]{4}[0-9]{4}[0]{8}[A-Z0-9]{10}",KW:"KW[0-9]{2}[A-Z]{4}[0-9]{22}",KZ:"KZ[0-9]{2}[0-9]{3}[A-Z0-9]{13}",LB:"LB[0-9]{2}[0-9]{4}[A-Z0-9]{20}",LI:"LI[0-9]{2}[0-9]{5}[A-Z0-9]{12}",LT:"LT[0-9]{2}[0-9]{5}[0-9]{11}",LU:"LU[0-9]{2}[0-9]{3}[A-Z0-9]{13}",LV:"LV[0-9]{2}[A-Z]{4}[A-Z0-9]{13}",MC:"MC[0-9]{2}[0-9]{5}[0-9]{5}[A-Z0-9]{11}[0-9]{2}",MD:"MD[0-9]{2}[A-Z0-9]{20}",ME:"ME[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}",MG:"MG[0-9]{2}[0-9]{23}",MK:"MK[0-9]{2}[0-9]{3}[A-Z0-9]{10}[0-9]{2}",ML:"ML[0-9]{2}[A-Z]{1}[0-9]{23}",MR:"MR13[0-9]{5}[0-9]{5}[0-9]{11}[0-9]{2}",MT:"MT[0-9]{2}[A-Z]{4}[0-9]{5}[A-Z0-9]{18}",MU:"MU[0-9]{2}[A-Z]{4}[0-9]{2}[0-9]{2}[0-9]{12}[0-9]{3}[A-Z]{3}",MZ:"MZ[0-9]{2}[0-9]{21}",NL:"NL[0-9]{2}[A-Z]{4}[0-9]{10}",NO:"NO[0-9]{2}[0-9]{4}[0-9]{6}[0-9]{1}",PK:"PK[0-9]{2}[A-Z]{4}[A-Z0-9]{16}",PL:"PL[0-9]{2}[0-9]{8}[0-9]{16}",PS:"PS[0-9]{2}[A-Z]{4}[A-Z0-9]{21}",PT:"PT[0-9]{2}[0-9]{4}[0-9]{4}[0-9]{11}[0-9]{2}",QA:"QA[0-9]{2}[A-Z]{4}[A-Z0-9]{21}",RO:"RO[0-9]{2}[A-Z]{4}[A-Z0-9]{16}",RS:"RS[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}",SA:"SA[0-9]{2}[0-9]{2}[A-Z0-9]{18}",SE:"SE[0-9]{2}[0-9]{3}[0-9]{16}[0-9]{1}",SI:"SI[0-9]{2}[0-9]{5}[0-9]{8}[0-9]{2}",SK:"SK[0-9]{2}[0-9]{4}[0-9]{6}[0-9]{10}",SM:"SM[0-9]{2}[A-Z]{1}[0-9]{5}[0-9]{5}[A-Z0-9]{12}",SN:"SN[0-9]{2}[A-Z]{1}[0-9]{23}",TL:"TL38[0-9]{3}[0-9]{14}[0-9]{2}",TN:"TN59[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}",TR:"TR[0-9]{2}[0-9]{5}[A-Z0-9]{1}[A-Z0-9]{16}",VG:"VG[0-9]{2}[A-Z]{4}[0-9]{16}",XK:"XK[0-9]{2}[0-9]{4}[0-9]{10}[0-9]{2}"},Z=["AT","BE","BG","CH","CY","CZ","DE","DK","EE","ES","FI","FR","GB","GI","GR","HR","HU","IE","IS","IT","LI","LT","LU","LV","MC","MT","NL","NO","PL","PT","RO","SE","SI","SK","SM"];return{validate:function(t){if(""===t.value)return{valid:!0};var r=Object.assign({},{message:""},a(t.options)),i=t.value.replace(/[^a-zA-Z0-9]/g,"").toUpperCase(),n=r.country||i.substr(0,2);if(!A[n])return{message:r.message,valid:!1};if(void 0!==r.sepa){var o=-1!==Z.indexOf(n);if(("true"===r.sepa||!0===r.sepa)&&!o||("false"===r.sepa||!1===r.sepa)&&o)return{message:r.message,valid:!1}}var s=e(t.l10n?r.message||t.l10n.iban.country:r.message,t.l10n?t.l10n.iban.countries[n]:n);if(!new RegExp("^".concat(A[n],"$")).test(t.value))return{message:s,valid:!1};i=(i="".concat(i.substr(4)).concat(i.substr(0,4))).split("").map((function(A){var e=A.charCodeAt(0);return e>="A".charCodeAt(0)&&e<="Z".charCodeAt(0)?e-"A".charCodeAt(0)+10:A})).join("");for(var l=parseInt(i.substr(0,1),10),d=i.length,u=1;u + */ + /** + * Validate Argentinian national identifiers + * + * @see https://en.wikipedia.org/wiki/Documento_Nacional_de_Identidad_(Argentina) + * @returns {ValidateResult} + */ + function arId(value) { + // Replace dot with empty space + var v = value.replace(/\./g, ''); + return { + meta: {}, + valid: /^\d{7,8}$/.test(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Unique Master Citizen Number which uses in + * - Bosnia and Herzegovina (country code: BA) + * - Macedonia (MK) + * - Montenegro (ME) + * - Serbia (RS) + * - Slovenia (SI) + * + * @see http://en.wikipedia.org/wiki/Unique_Master_Citizen_Number + * @returns {boolean} + */ + function jmbg(value, countryCode) { + if (!/^\d{13}$/.test(value)) { + return false; + } + var day = parseInt(value.substr(0, 2), 10); + var month = parseInt(value.substr(2, 2), 10); + // const year = parseInt(value.substr(4, 3), 10) + var rr = parseInt(value.substr(7, 2), 10); + var k = parseInt(value.substr(12, 1), 10); + // Validate date of birth + // FIXME: Validate the year of birth + if (day > 31 || month > 12) { + return false; + } + // Validate checksum + var sum = 0; + for (var i = 0; i < 6; i++) { + sum += (7 - i) * (parseInt(value.charAt(i), 10) + parseInt(value.charAt(i + 6), 10)); + } + sum = 11 - (sum % 11); + if (sum === 10 || sum === 11) { + sum = 0; + } + if (sum !== k) { + return false; + } + // Validate political region + // rr is the political region of birth, which can be in ranges: + // 10-19: Bosnia and Herzegovina + // 20-29: Montenegro + // 30-39: Croatia (not used anymore) + // 41-49: Macedonia + // 50-59: Slovenia (only 50 is used) + // 70-79: Central Serbia + // 80-89: Serbian province of Vojvodina + // 90-99: Kosovo + switch (countryCode.toUpperCase()) { + case 'BA': + return 10 <= rr && rr <= 19; + case 'MK': + return 41 <= rr && rr <= 49; + case 'ME': + return 20 <= rr && rr <= 29; + case 'RS': + return 70 <= rr && rr <= 99; + case 'SI': + return 50 <= rr && rr <= 59; + default: + return true; + } + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * @returns {ValidateResult} + */ + function baId(value) { + return { + meta: {}, + valid: jmbg(value, 'BA'), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$d = core.utils.isValidDate; + /** + * Validate Bulgarian national identification number (EGN) + * + * @see http://en.wikipedia.org/wiki/Uniform_civil_number + * @returns {ValidateResult} + */ + function bgId(value) { + if (!/^\d{10}$/.test(value) && !/^\d{6}\s\d{3}\s\d{1}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/\s/g, ''); + // Check the birth date + var year = parseInt(v.substr(0, 2), 10) + 1900; + var month = parseInt(v.substr(2, 2), 10); + var day = parseInt(v.substr(4, 2), 10); + if (month > 40) { + year += 100; + month -= 40; + } + else if (month > 20) { + year -= 100; + month -= 20; + } + if (!isValidDate$d(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var weight = [2, 4, 8, 5, 10, 9, 7, 3, 6]; + for (var i = 0; i < 9; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = (sum % 11) % 10; + return { + meta: {}, + valid: "".concat(sum) === v.substr(9, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Brazilian national identification number (CPF) + * + * @see http://en.wikipedia.org/wiki/Cadastro_de_Pessoas_F%C3%ADsicas + * @returns {ValidateResult} + */ + function brId(value) { + var v = value.replace(/\D/g, ''); + if (!/^\d{11}$/.test(v) || /^1{11}|2{11}|3{11}|4{11}|5{11}|6{11}|7{11}|8{11}|9{11}|0{11}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var d1 = 0; + var i; + for (i = 0; i < 9; i++) { + d1 += (10 - i) * parseInt(v.charAt(i), 10); + } + d1 = 11 - (d1 % 11); + if (d1 === 10 || d1 === 11) { + d1 = 0; + } + if ("".concat(d1) !== v.charAt(9)) { + return { + meta: {}, + valid: false, + }; + } + var d2 = 0; + for (i = 0; i < 10; i++) { + d2 += (11 - i) * parseInt(v.charAt(i), 10); + } + d2 = 11 - (d2 % 11); + if (d2 === 10 || d2 === 11) { + d2 = 0; + } + return { + meta: {}, + valid: "".concat(d2) === v.charAt(10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Swiss Social Security Number (AHV-Nr/No AVS) + * + * @see http://en.wikipedia.org/wiki/National_identification_number#Switzerland + * @see http://www.bsv.admin.ch/themen/ahv/00011/02185/index.html?lang=de + * @returns {ValidateResult} + */ + function chId(value) { + if (!/^756[.]{0,1}[0-9]{4}[.]{0,1}[0-9]{4}[.]{0,1}[0-9]{2}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/\D/g, '').substr(3); + var length = v.length; + var weight = length === 8 ? [3, 1] : [1, 3]; + var sum = 0; + for (var i = 0; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i % 2]; + } + sum = 10 - (sum % 10); + return { + meta: {}, + valid: "".concat(sum) === v.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Chilean national identification number (RUN/RUT) + * + * @see http://en.wikipedia.org/wiki/National_identification_number#Chile + * @see https://palena.sii.cl/cvc/dte/ee_empresas_emisoras.html for samples + * @returns {ValidateResult} + */ + function clId(value) { + if (!/^\d{7,8}[-]{0,1}[0-9K]$/i.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/-/g, ''); + while (v.length < 9) { + v = "0".concat(v); + } + var weight = [3, 2, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + var cd = "".concat(sum); + if (sum === 11) { + cd = '0'; + } + else if (sum === 10) { + cd = 'K'; + } + return { + meta: {}, + valid: cd === v.charAt(8).toUpperCase(), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$c = core.utils.isValidDate; + /** + * Validate Chinese citizen identification number + * + * Rules: + * - For current 18-digit system (since 1st Oct 1999, defined by GB11643—1999 national standard): + * - Digit 0-5: Must be a valid administrative division code of China PR. + * - Digit 6-13: Must be a valid YYYYMMDD date of birth. A future date is tolerated. + * - Digit 14-16: Order code, any integer. + * - Digit 17: An ISO 7064:1983, MOD 11-2 checksum. + * Both upper/lower case of X are tolerated. + * - For deprecated 15-digit system: + * - Digit 0-5: Must be a valid administrative division code of China PR. + * - Digit 6-11: Must be a valid YYMMDD date of birth, indicating the year of 19XX. + * - Digit 12-14: Order code, any integer. + * Lists of valid administrative division codes of China PR can be seen here: + * + * Published and maintained by National Bureau of Statistics of China PR. + * NOTE: Current and deprecated codes MUST BOTH be considered valid. + * Many Chinese citizens born in once existed administrative divisions! + * + * @see http://en.wikipedia.org/wiki/Resident_Identity_Card#Identity_card_number + * @returns {ValidateResult} + */ + function cnId(value) { + // Basic format check (18 or 15 digits, considering X in checksum) + var v = value.trim(); + if (!/^\d{15}$/.test(v) && !/^\d{17}[\dXx]{1}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + // Check China PR Administrative division code + var adminDivisionCodes = { + 11: { + 0: [0], + 1: [ + [0, 9], + [11, 17], + ], + 2: [0, 28, 29], + }, + 12: { + 0: [0], + 1: [[0, 16]], + 2: [0, 21, 23, 25], + }, + 13: { + 0: [0], + 1: [[0, 5], 7, 8, 21, [23, 33], [81, 85]], + 2: [[0, 5], [7, 9], [23, 25], 27, 29, 30, 81, 83], + 3: [ + [0, 4], + [21, 24], + ], + 4: [[0, 4], 6, 21, [23, 35], 81], + 5: [[0, 3], [21, 35], 81, 82], + 6: [ + [0, 4], + [21, 38], + [81, 84], + ], + 7: [[0, 3], 5, 6, [21, 33]], + 8: [ + [0, 4], + [21, 28], + ], + 9: [ + [0, 3], + [21, 30], + [81, 84], + ], + 10: [[0, 3], [22, 26], 28, 81, 82], + 11: [[0, 2], [21, 28], 81, 82], + }, + 14: { + 0: [0], + 1: [0, 1, [5, 10], [21, 23], 81], + 2: [[0, 3], 11, 12, [21, 27]], + 3: [[0, 3], 11, 21, 22], + 4: [[0, 2], 11, 21, [23, 31], 81], + 5: [[0, 2], 21, 22, 24, 25, 81], + 6: [ + [0, 3], + [21, 24], + ], + 7: [[0, 2], [21, 29], 81], + 8: [[0, 2], [21, 30], 81, 82], + 9: [[0, 2], [21, 32], 81], + 10: [[0, 2], [21, 34], 81, 82], + 11: [[0, 2], [21, 30], 81, 82], + 23: [[0, 3], 22, 23, [25, 30], 32, 33], + }, + 15: { + 0: [0], + 1: [ + [0, 5], + [21, 25], + ], + 2: [ + [0, 7], + [21, 23], + ], + 3: [[0, 4]], + 4: [ + [0, 4], + [21, 26], + [28, 30], + ], + 5: [[0, 2], [21, 26], 81], + 6: [ + [0, 2], + [21, 27], + ], + 7: [ + [0, 3], + [21, 27], + [81, 85], + ], + 8: [ + [0, 2], + [21, 26], + ], + 9: [[0, 2], [21, 29], 81], + 22: [ + [0, 2], + [21, 24], + ], + 25: [ + [0, 2], + [22, 31], + ], + 26: [[0, 2], [24, 27], [29, 32], 34], + 28: [0, 1, [22, 27]], + 29: [0, [21, 23]], + }, + 21: { + 0: [0], + 1: [[0, 6], [11, 14], [22, 24], 81], + 2: [[0, 4], [11, 13], 24, [81, 83]], + 3: [[0, 4], 11, 21, 23, 81], + 4: [[0, 4], 11, [21, 23]], + 5: [[0, 5], 21, 22], + 6: [[0, 4], 24, 81, 82], + 7: [[0, 3], 11, 26, 27, 81, 82], + 8: [[0, 4], 11, 81, 82], + 9: [[0, 5], 11, 21, 22], + 10: [[0, 5], 11, 21, 81], + 11: [[0, 3], 21, 22], + 12: [[0, 2], 4, 21, 23, 24, 81, 82], + 13: [[0, 3], 21, 22, 24, 81, 82], + 14: [[0, 4], 21, 22, 81], + }, + 22: { + 0: [0], + 1: [[0, 6], 12, 22, [81, 83]], + 2: [[0, 4], 11, 21, [81, 84]], + 3: [[0, 3], 22, 23, 81, 82], + 4: [[0, 3], 21, 22], + 5: [[0, 3], 21, 23, 24, 81, 82], + 6: [[0, 2], 4, 5, [21, 23], 25, 81], + 7: [[0, 2], [21, 24], 81], + 8: [[0, 2], 21, 22, 81, 82], + 24: [[0, 6], 24, 26], + }, + 23: { + 0: [0], + 1: [[0, 12], 21, [23, 29], [81, 84]], + 2: [[0, 8], 21, [23, 25], 27, [29, 31], 81], + 3: [[0, 7], 21, 81, 82], + 4: [[0, 7], 21, 22], + 5: [[0, 3], 5, 6, [21, 24]], + 6: [ + [0, 6], + [21, 24], + ], + 7: [[0, 16], 22, 81], + 8: [[0, 5], 11, 22, 26, 28, 33, 81, 82], + 9: [[0, 4], 21], + 10: [[0, 5], 24, 25, 81, [83, 85]], + 11: [[0, 2], 21, 23, 24, 81, 82], + 12: [ + [0, 2], + [21, 26], + [81, 83], + ], + 27: [ + [0, 4], + [21, 23], + ], + }, + 31: { + 0: [0], + 1: [0, 1, [3, 10], [12, 20]], + 2: [0, 30], + }, + 32: { + 0: [0], + 1: [[0, 7], 11, [13, 18], 24, 25], + 2: [[0, 6], 11, 81, 82], + 3: [[0, 5], 11, 12, [21, 24], 81, 82], + 4: [[0, 2], 4, 5, 11, 12, 81, 82], + 5: [ + [0, 9], + [81, 85], + ], + 6: [[0, 2], 11, 12, 21, 23, [81, 84]], + 7: [0, 1, 3, 5, 6, [21, 24]], + 8: [[0, 4], 11, 26, [29, 31]], + 9: [[0, 3], [21, 25], 28, 81, 82], + 10: [[0, 3], 11, 12, 23, 81, 84, 88], + 11: [[0, 2], 11, 12, [81, 83]], + 12: [ + [0, 4], + [81, 84], + ], + 13: [[0, 2], 11, [21, 24]], + }, + 33: { + 0: [0], + 1: [[0, 6], [8, 10], 22, 27, 82, 83, 85], + 2: [0, 1, [3, 6], 11, 12, 25, 26, [81, 83]], + 3: [[0, 4], 22, 24, [26, 29], 81, 82], + 4: [[0, 2], 11, 21, 24, [81, 83]], + 5: [ + [0, 3], + [21, 23], + ], + 6: [[0, 2], 21, 24, [81, 83]], + 7: [[0, 3], 23, 26, 27, [81, 84]], + 8: [[0, 3], 22, 24, 25, 81], + 9: [[0, 3], 21, 22], + 10: [[0, 4], [21, 24], 81, 82], + 11: [[0, 2], [21, 27], 81], + }, + 34: { + 0: [0], + 1: [[0, 4], 11, [21, 24], 81], + 2: [[0, 4], 7, 8, [21, 23], 25], + 3: [[0, 4], 11, [21, 23]], + 4: [[0, 6], 21], + 5: [[0, 4], 6, [21, 23]], + 6: [[0, 4], 21], + 7: [[0, 3], 11, 21], + 8: [[0, 3], 11, [22, 28], 81], + 10: [ + [0, 4], + [21, 24], + ], + 11: [[0, 3], 22, [24, 26], 81, 82], + 12: [[0, 4], 21, 22, 25, 26, 82], + 13: [ + [0, 2], + [21, 24], + ], + 14: [ + [0, 2], + [21, 24], + ], + 15: [ + [0, 3], + [21, 25], + ], + 16: [ + [0, 2], + [21, 23], + ], + 17: [ + [0, 2], + [21, 23], + ], + 18: [[0, 2], [21, 25], 81], + }, + 35: { + 0: [0], + 1: [[0, 5], 11, [21, 25], 28, 81, 82], + 2: [ + [0, 6], + [11, 13], + ], + 3: [[0, 5], 22], + 4: [[0, 3], 21, [23, 30], 81], + 5: [[0, 5], 21, [24, 27], [81, 83]], + 6: [[0, 3], [22, 29], 81], + 7: [ + [0, 2], + [21, 25], + [81, 84], + ], + 8: [[0, 2], [21, 25], 81], + 9: [[0, 2], [21, 26], 81, 82], + }, + 36: { + 0: [0], + 1: [[0, 5], 11, [21, 24]], + 2: [[0, 3], 22, 81], + 3: [[0, 2], 13, [21, 23]], + 4: [[0, 3], 21, [23, 30], 81, 82], + 5: [[0, 2], 21], + 6: [[0, 2], 22, 81], + 7: [[0, 2], [21, 35], 81, 82], + 8: [[0, 3], [21, 30], 81], + 9: [ + [0, 2], + [21, 26], + [81, 83], + ], + 10: [ + [0, 2], + [21, 30], + ], + 11: [[0, 2], [21, 30], 81], + }, + 37: { + 0: [0], + 1: [[0, 5], 12, 13, [24, 26], 81], + 2: [[0, 3], 5, [11, 14], [81, 85]], + 3: [ + [0, 6], + [21, 23], + ], + 4: [[0, 6], 81], + 5: [ + [0, 3], + [21, 23], + ], + 6: [[0, 2], [11, 13], 34, [81, 87]], + 7: [[0, 5], 24, 25, [81, 86]], + 8: [[0, 2], 11, [26, 32], [81, 83]], + 9: [[0, 3], 11, 21, 23, 82, 83], + 10: [ + [0, 2], + [81, 83], + ], + 11: [[0, 3], 21, 22], + 12: [[0, 3]], + 13: [[0, 2], 11, 12, [21, 29]], + 14: [[0, 2], [21, 28], 81, 82], + 15: [[0, 2], [21, 26], 81], + 16: [ + [0, 2], + [21, 26], + ], + 17: [ + [0, 2], + [21, 28], + ], + }, + 41: { + 0: [0], + 1: [[0, 6], 8, 22, [81, 85]], + 2: [[0, 5], 11, [21, 25]], + 3: [[0, 7], 11, [22, 29], 81], + 4: [[0, 4], 11, [21, 23], 25, 81, 82], + 5: [[0, 3], 5, 6, 22, 23, 26, 27, 81], + 6: [[0, 3], 11, 21, 22], + 7: [[0, 4], 11, 21, [24, 28], 81, 82], + 8: [[0, 4], 11, [21, 23], 25, [81, 83]], + 9: [[0, 2], 22, 23, [26, 28]], + 10: [[0, 2], [23, 25], 81, 82], + 11: [ + [0, 4], + [21, 23], + ], + 12: [[0, 2], 21, 22, 24, 81, 82], + 13: [[0, 3], [21, 30], 81], + 14: [[0, 3], [21, 26], 81], + 15: [ + [0, 3], + [21, 28], + ], + 16: [[0, 2], [21, 28], 81], + 17: [ + [0, 2], + [21, 29], + ], + 90: [0, 1], + }, + 42: { + 0: [0], + 1: [ + [0, 7], + [11, 17], + ], + 2: [[0, 5], 22, 81], + 3: [[0, 3], [21, 25], 81], + 5: [ + [0, 6], + [25, 29], + [81, 83], + ], + 6: [[0, 2], 6, 7, [24, 26], [82, 84]], + 7: [[0, 4]], + 8: [[0, 2], 4, 21, 22, 81], + 9: [[0, 2], [21, 23], 81, 82, 84], + 10: [[0, 3], [22, 24], 81, 83, 87], + 11: [[0, 2], [21, 27], 81, 82], + 12: [[0, 2], [21, 24], 81], + 13: [[0, 3], 21, 81], + 28: [[0, 2], 22, 23, [25, 28]], + 90: [0, [4, 6], 21], + }, + 43: { + 0: [0], + 1: [[0, 5], 11, 12, 21, 22, 24, 81], + 2: [[0, 4], 11, 21, [23, 25], 81], + 3: [[0, 2], 4, 21, 81, 82], + 4: [0, 1, [5, 8], 12, [21, 24], 26, 81, 82], + 5: [[0, 3], 11, [21, 25], [27, 29], 81], + 6: [[0, 3], 11, 21, 23, 24, 26, 81, 82], + 7: [[0, 3], [21, 26], 81], + 8: [[0, 2], 11, 21, 22], + 9: [[0, 3], [21, 23], 81], + 10: [[0, 3], [21, 28], 81], + 11: [ + [0, 3], + [21, 29], + ], + 12: [[0, 2], [21, 30], 81], + 13: [[0, 2], 21, 22, 81, 82], + 31: [0, 1, [22, 27], 30], + }, + 44: { + 0: [0], + 1: [[0, 7], [11, 16], 83, 84], + 2: [[0, 5], 21, 22, 24, 29, 32, 33, 81, 82], + 3: [0, 1, [3, 8]], + 4: [[0, 4]], + 5: [0, 1, [6, 15], 23, 82, 83], + 6: [0, 1, [4, 8]], + 7: [0, 1, [3, 5], 81, [83, 85]], + 8: [[0, 4], 11, 23, 25, [81, 83]], + 9: [[0, 3], 23, [81, 83]], + 12: [[0, 3], [23, 26], 83, 84], + 13: [[0, 3], [22, 24], 81], + 14: [[0, 2], [21, 24], 26, 27, 81], + 15: [[0, 2], 21, 23, 81], + 16: [ + [0, 2], + [21, 25], + ], + 17: [[0, 2], 21, 23, 81], + 18: [[0, 3], 21, 23, [25, 27], 81, 82], + 19: [0], + 20: [0], + 51: [[0, 3], 21, 22], + 52: [[0, 3], 21, 22, 24, 81], + 53: [[0, 2], [21, 23], 81], + }, + 45: { + 0: [0], + 1: [ + [0, 9], + [21, 27], + ], + 2: [ + [0, 5], + [21, 26], + ], + 3: [[0, 5], 11, 12, [21, 32]], + 4: [0, 1, [3, 6], 11, [21, 23], 81], + 5: [[0, 3], 12, 21], + 6: [[0, 3], 21, 81], + 7: [[0, 3], 21, 22], + 8: [[0, 4], 21, 81], + 9: [[0, 3], [21, 24], 81], + 10: [ + [0, 2], + [21, 31], + ], + 11: [ + [0, 2], + [21, 23], + ], + 12: [[0, 2], [21, 29], 81], + 13: [[0, 2], [21, 24], 81], + 14: [[0, 2], [21, 25], 81], + }, + 46: { + 0: [0], + 1: [0, 1, [5, 8]], + 2: [0, 1], + 3: [0, [21, 23]], + 90: [ + [0, 3], + [5, 7], + [21, 39], + ], + }, + 50: { + 0: [0], + 1: [[0, 19]], + 2: [0, [22, 38], [40, 43]], + 3: [0, [81, 84]], + }, + 51: { + 0: [0], + 1: [0, 1, [4, 8], [12, 15], [21, 24], 29, 31, 32, [81, 84]], + 3: [[0, 4], 11, 21, 22], + 4: [[0, 3], 11, 21, 22], + 5: [[0, 4], 21, 22, 24, 25], + 6: [0, 1, 3, 23, 26, [81, 83]], + 7: [0, 1, 3, 4, [22, 27], 81], + 8: [[0, 2], 11, 12, [21, 24]], + 9: [ + [0, 4], + [21, 23], + ], + 10: [[0, 2], 11, 24, 25, 28], + 11: [[0, 2], [11, 13], 23, 24, 26, 29, 32, 33, 81], + 13: [[0, 4], [21, 25], 81], + 14: [ + [0, 2], + [21, 25], + ], + 15: [ + [0, 3], + [21, 29], + ], + 16: [[0, 3], [21, 23], 81], + 17: [[0, 3], [21, 25], 81], + 18: [ + [0, 3], + [21, 27], + ], + 19: [ + [0, 3], + [21, 23], + ], + 20: [[0, 2], 21, 22, 81], + 32: [0, [21, 33]], + 33: [0, [21, 38]], + 34: [0, 1, [22, 37]], + }, + 52: { + 0: [0], + 1: [[0, 3], [11, 15], [21, 23], 81], + 2: [0, 1, 3, 21, 22], + 3: [[0, 3], [21, 30], 81, 82], + 4: [ + [0, 2], + [21, 25], + ], + 5: [ + [0, 2], + [21, 27], + ], + 6: [ + [0, 3], + [21, 28], + ], + 22: [0, 1, [22, 30]], + 23: [0, 1, [22, 28]], + 24: [0, 1, [22, 28]], + 26: [0, 1, [22, 36]], + 27: [[0, 2], 22, 23, [25, 32]], + }, + 53: { + 0: [0], + 1: [[0, 3], [11, 14], 21, 22, [24, 29], 81], + 3: [[0, 2], [21, 26], 28, 81], + 4: [ + [0, 2], + [21, 28], + ], + 5: [ + [0, 2], + [21, 24], + ], + 6: [ + [0, 2], + [21, 30], + ], + 7: [ + [0, 2], + [21, 24], + ], + 8: [ + [0, 2], + [21, 29], + ], + 9: [ + [0, 2], + [21, 27], + ], + 23: [0, 1, [22, 29], 31], + 25: [ + [0, 4], + [22, 32], + ], + 26: [0, 1, [21, 28]], + 27: [0, 1, [22, 30]], + 28: [0, 1, 22, 23], + 29: [0, 1, [22, 32]], + 31: [0, 2, 3, [22, 24]], + 34: [0, [21, 23]], + 33: [0, 21, [23, 25]], + 35: [0, [21, 28]], + }, + 54: { + 0: [0], + 1: [ + [0, 2], + [21, 27], + ], + 21: [0, [21, 29], 32, 33], + 22: [0, [21, 29], [31, 33]], + 23: [0, 1, [22, 38]], + 24: [0, [21, 31]], + 25: [0, [21, 27]], + 26: [0, [21, 27]], + }, + 61: { + 0: [0], + 1: [[0, 4], [11, 16], 22, [24, 26]], + 2: [[0, 4], 22], + 3: [ + [0, 4], + [21, 24], + [26, 31], + ], + 4: [[0, 4], [22, 31], 81], + 5: [[0, 2], [21, 28], 81, 82], + 6: [ + [0, 2], + [21, 32], + ], + 7: [ + [0, 2], + [21, 30], + ], + 8: [ + [0, 2], + [21, 31], + ], + 9: [ + [0, 2], + [21, 29], + ], + 10: [ + [0, 2], + [21, 26], + ], + }, + 62: { + 0: [0], + 1: [[0, 5], 11, [21, 23]], + 2: [0, 1], + 3: [[0, 2], 21], + 4: [ + [0, 3], + [21, 23], + ], + 5: [ + [0, 3], + [21, 25], + ], + 6: [ + [0, 2], + [21, 23], + ], + 7: [ + [0, 2], + [21, 25], + ], + 8: [ + [0, 2], + [21, 26], + ], + 9: [[0, 2], [21, 24], 81, 82], + 10: [ + [0, 2], + [21, 27], + ], + 11: [ + [0, 2], + [21, 26], + ], + 12: [ + [0, 2], + [21, 28], + ], + 24: [0, 21, [24, 29]], + 26: [0, 21, [23, 30]], + 29: [0, 1, [21, 27]], + 30: [0, 1, [21, 27]], + }, + 63: { + 0: [0], + 1: [ + [0, 5], + [21, 23], + ], + 2: [0, 2, [21, 25]], + 21: [0, [21, 23], [26, 28]], + 22: [0, [21, 24]], + 23: [0, [21, 24]], + 25: [0, [21, 25]], + 26: [0, [21, 26]], + 27: [0, 1, [21, 26]], + 28: [ + [0, 2], + [21, 23], + ], + }, + 64: { + 0: [0], + 1: [0, 1, [4, 6], 21, 22, 81], + 2: [[0, 3], 5, [21, 23]], + 3: [[0, 3], [21, 24], 81], + 4: [ + [0, 2], + [21, 25], + ], + 5: [[0, 2], 21, 22], + }, + 65: { + 0: [0], + 1: [[0, 9], 21], + 2: [[0, 5]], + 21: [0, 1, 22, 23], + 22: [0, 1, 22, 23], + 23: [[0, 3], [23, 25], 27, 28], + 28: [0, 1, [22, 29]], + 29: [0, 1, [22, 29]], + 30: [0, 1, [22, 24]], + 31: [0, 1, [21, 31]], + 32: [0, 1, [21, 27]], + 40: [0, 2, 3, [21, 28]], + 42: [[0, 2], 21, [23, 26]], + 43: [0, 1, [21, 26]], + 90: [[0, 4]], + 27: [[0, 2], 22, 23], + }, + 71: { 0: [0] }, + 81: { 0: [0] }, + 82: { 0: [0] }, + }; + var provincial = parseInt(v.substr(0, 2), 10); + var prefectural = parseInt(v.substr(2, 2), 10); + var county = parseInt(v.substr(4, 2), 10); + if (!adminDivisionCodes[provincial] || !adminDivisionCodes[provincial][prefectural]) { + return { + meta: {}, + valid: false, + }; + } + var inRange = false; + var rangeDef = adminDivisionCodes[provincial][prefectural]; + var i; + for (i = 0; i < rangeDef.length; i++) { + if ((Array.isArray(rangeDef[i]) && rangeDef[i][0] <= county && county <= rangeDef[i][1]) || + (!Array.isArray(rangeDef[i]) && county === rangeDef[i])) { + inRange = true; + break; + } + } + if (!inRange) { + return { + meta: {}, + valid: false, + }; + } + // Check date of birth + var dob; + if (v.length === 18) { + dob = v.substr(6, 8); + } /* length == 15 */ + else { + dob = "19".concat(v.substr(6, 6)); + } + var year = parseInt(dob.substr(0, 4), 10); + var month = parseInt(dob.substr(4, 2), 10); + var day = parseInt(dob.substr(6, 2), 10); + if (!isValidDate$c(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Check checksum (18-digit system only) + if (v.length === 18) { + var weight = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; + var sum = 0; + for (i = 0; i < 17; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = (12 - (sum % 11)) % 11; + var checksum = v.charAt(17).toUpperCase() !== 'X' ? parseInt(v.charAt(17), 10) : 10; + return { + meta: {}, + valid: checksum === sum, + }; + } + return { + meta: {}, + valid: true, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Colombian identification number (NIT) + * @see https://es.wikipedia.org/wiki/N%C3%BAmero_de_Identificaci%C3%B3n_Tributaria + * @returns {ValidateResult} + */ + function coId(value) { + var v = value.replace(/\./g, '').replace('-', ''); + if (!/^\d{8,16}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var length = v.length; + var weight = [3, 7, 13, 17, 19, 23, 29, 37, 41, 43, 47, 53, 59, 67, 71]; + var sum = 0; + for (var i = length - 2; i >= 0; i--) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = sum % 11; + if (sum >= 2) { + sum = 11 - sum; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$b = core.utils.isValidDate; + /** + * Validate Czech national identification number (RC) + * + * @returns {ValidateResult} + */ + function czId(value) { + if (!/^\d{9,10}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var year = 1900 + parseInt(value.substr(0, 2), 10); + var month = (parseInt(value.substr(2, 2), 10) % 50) % 20; + var day = parseInt(value.substr(4, 2), 10); + if (value.length === 9) { + if (year >= 1980) { + year -= 100; + } + if (year > 1953) { + return { + meta: {}, + valid: false, + }; + } + } + else if (year < 1954) { + year += 100; + } + if (!isValidDate$b(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Check that the birth date is not in the future + if (value.length === 10) { + var check = parseInt(value.substr(0, 9), 10) % 11; + if (year < 1985) { + check = check % 10; + } + return { + meta: {}, + valid: "".concat(check) === value.substr(9, 1), + }; + } + return { + meta: {}, + valid: true, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$a = core.utils.isValidDate; + /** + * Validate Danish Personal Identification number (CPR) + * + * @see https://en.wikipedia.org/wiki/Personal_identification_number_(Denmark) + * @returns {ValidateResult} + */ + function dkId(value) { + if (!/^[0-9]{6}[-]{0,1}[0-9]{4}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/-/g, ''); + var day = parseInt(v.substr(0, 2), 10); + var month = parseInt(v.substr(2, 2), 10); + var year = parseInt(v.substr(4, 2), 10); + switch (true) { + case '5678'.indexOf(v.charAt(6)) !== -1 && year >= 58: + year += 1800; + break; + case '0123'.indexOf(v.charAt(6)) !== -1: + case '49'.indexOf(v.charAt(6)) !== -1 && year >= 37: + year += 1900; + break; + default: + year += 2000; + break; + } + return { + meta: {}, + valid: isValidDate$a(year, month, day), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Spanish personal identity code (DNI) + * Support DNI (for Spanish citizens), NIE (for foreign people) and CIF (for legal entities) + * + * @see https://en.wikipedia.org/wiki/National_identification_number#Spain + * @returns {ValidateResult} + */ + function esId(value) { + var isDNI = /^[0-9]{8}[-]{0,1}[A-HJ-NP-TV-Z]$/.test(value); + var isNIE = /^[XYZ][-]{0,1}[0-9]{7}[-]{0,1}[A-HJ-NP-TV-Z]$/.test(value); + var isCIF = /^[A-HNPQS][-]{0,1}[0-9]{7}[-]{0,1}[0-9A-J]$/.test(value); + if (!isDNI && !isNIE && !isCIF) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/-/g, ''); + var check; + var tpe; + var isValid = true; + if (isDNI || isNIE) { + tpe = 'DNI'; + var index = 'XYZ'.indexOf(v.charAt(0)); + if (index !== -1) { + // It is NIE number + v = index + v.substr(1) + ''; + tpe = 'NIE'; + } + check = parseInt(v.substr(0, 8), 10); + check = 'TRWAGMYFPDXBNJZSQVHLCKE'[check % 23]; + return { + meta: { + type: tpe, + }, + valid: check === v.substr(8, 1), + }; + } + else { + check = v.substr(1, 7); + tpe = 'CIF'; + var letter = v[0]; + var control = v.substr(-1); + var sum = 0; + // The digits in the even positions are added to the sum directly. + // The ones in the odd positions are multiplied by 2 and then added to the sum. + // If the result of multiplying by 2 is 10 or higher, add the two digits + // together and add that to the sum instead + for (var i = 0; i < check.length; i++) { + if (i % 2 !== 0) { + sum += parseInt(check[i], 10); + } + else { + var tmp = '' + parseInt(check[i], 10) * 2; + sum += parseInt(tmp[0], 10); + if (tmp.length === 2) { + sum += parseInt(tmp[1], 10); + } + } + } + // The control digit is calculated from the last digit of the sum. + // If that last digit is not 0, subtract it from 10 + var lastDigit = sum - Math.floor(sum / 10) * 10; + if (lastDigit !== 0) { + lastDigit = 10 - lastDigit; + } + if ('KQS'.indexOf(letter) !== -1) { + // If the CIF starts with a K, Q or S, the control digit must be a letter + isValid = control === 'JABCDEFGHI'[lastDigit]; + } + else if ('ABEH'.indexOf(letter) !== -1) { + // If it starts with A, B, E or H, it has to be a number + isValid = control === '' + lastDigit; + } + else { + // In any other case, it doesn't matter + isValid = control === '' + lastDigit || control === 'JABCDEFGHI'[lastDigit]; + } + return { + meta: { + type: tpe, + }, + valid: isValid, + }; + } + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$9 = core.utils.isValidDate; + /** + * Validate Finnish Personal Identity Code (HETU) + * + * @returns {ValidateResult} + */ + function fiId(value) { + if (!/^[0-9]{6}[-+A][0-9]{3}[0-9ABCDEFHJKLMNPRSTUVWXY]$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var day = parseInt(value.substr(0, 2), 10); + var month = parseInt(value.substr(2, 2), 10); + var year = parseInt(value.substr(4, 2), 10); + var centuries = { + '+': 1800, + '-': 1900, + A: 2000, + }; + year = centuries[value.charAt(6)] + year; + if (!isValidDate$9(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + var individual = parseInt(value.substr(7, 3), 10); + if (individual < 2) { + return { + meta: {}, + valid: false, + }; + } + var n = parseInt(value.substr(0, 6) + value.substr(7, 3) + '', 10); + return { + meta: {}, + valid: '0123456789ABCDEFHJKLMNPRSTUVWXY'.charAt(n % 31) === value.charAt(10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate French identification number (NIR) + * + * @see https://en.wikipedia.org/wiki/INSEE_code + * @see https://fr.wikipedia.org/wiki/Num%C3%A9ro_de_s%C3%A9curit%C3%A9_sociale_en_France + * @returns {ValidateResult} + */ + function frId(value) { + var v = value.toUpperCase(); + if (!/^(1|2)\d{2}\d{2}(\d{2}|\d[A-Z]|\d{3})\d{2,3}\d{3}\d{2}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + // The COG group can be 2 digits or 2A or 2B + var cog = v.substr(5, 2); + switch (true) { + case /^\d{2}$/.test(cog): + v = value; + break; + case cog === '2A': + v = "".concat(value.substr(0, 5), "19").concat(value.substr(7)); + break; + case cog === '2B': + v = "".concat(value.substr(0, 5), "18").concat(value.substr(7)); + break; + default: + return { + meta: {}, + valid: false, + }; + } + var mod = 97 - (parseInt(v.substr(0, 13), 10) % 97); + var prefixWithZero = mod < 10 ? "0".concat(mod) : "".concat(mod); + return { + meta: {}, + valid: prefixWithZero === v.substr(13), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Hong Kong identity card number (HKID) + * + * @see https://en.wikipedia.org/wiki/National_identification_number#Hong_Kong + * @returns {ValidateResult} + */ + function hkId(value) { + var v = value.toUpperCase(); + if (!/^[A-MP-Z]{1,2}[0-9]{6}[0-9A]$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; + var firstChar = v.charAt(0); + var secondChar = v.charAt(1); + var sum = 0; + var digitParts = v; + if (/^[A-Z]$/.test(secondChar)) { + sum += 9 * (10 + alphabet.indexOf(firstChar)); + sum += 8 * (10 + alphabet.indexOf(secondChar)); + digitParts = v.substr(2); + } + else { + sum += 9 * 36; + sum += 8 * (10 + alphabet.indexOf(firstChar)); + digitParts = v.substr(1); + } + var length = digitParts.length; + for (var i = 0; i < length - 1; i++) { + sum += (7 - i) * parseInt(digitParts.charAt(i), 10); + } + var remaining = sum % 11; + var checkDigit = remaining === 0 ? '0' : 11 - remaining === 10 ? 'A' : "".concat(11 - remaining); + return { + meta: {}, + valid: checkDigit === digitParts.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var mod11And10 = core.algorithms.mod11And10; + /** + * Validate Croatian personal identification number (OIB) + * + * @returns {ValidateResult} + */ + function hrId(value) { + return { + meta: {}, + valid: /^[0-9]{11}$/.test(value) && mod11And10(value), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var verhoeff = core.algorithms.verhoeff; + /** + * Validate Indian Aadhaar numbers + * @see https://en.wikipedia.org/wiki/Aadhaar + * @returns {ValidateResult} + */ + function idId(value) { + if (!/^[2-9]\d{11}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var converted = value.split('').map(function (item) { return parseInt(item, 10); }); + return { + meta: {}, + valid: verhoeff(converted), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Irish Personal Public Service Number (PPS) + * + * @see https://en.wikipedia.org/wiki/Personal_Public_Service_Number + * @returns {ValidateResult} + */ + function ieId(value) { + if (!/^\d{7}[A-W][AHWTX]?$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var getCheckDigit = function (v) { + var input = v; + while (input.length < 7) { + input = "0".concat(input); + } + var alphabet = 'WABCDEFGHIJKLMNOPQRSTUV'; + var sum = 0; + for (var i = 0; i < 7; i++) { + sum += parseInt(input.charAt(i), 10) * (8 - i); + } + sum += 9 * alphabet.indexOf(input.substr(7)); + return alphabet[sum % 23]; + }; + // 2013 format + var isValid = value.length === 9 && ('A' === value.charAt(8) || 'H' === value.charAt(8)) + ? value.charAt(7) === getCheckDigit(value.substr(0, 7) + value.substr(8) + '') + : // The old format + value.charAt(7) === getCheckDigit(value.substr(0, 7)); + return { + meta: {}, + valid: isValid, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn$2 = core.algorithms.luhn; + /** + * Validate Israeli identity number (Mispar Zehut) + * + * @see https://gist.github.com/freak4pc/6802be89d019bca57756a675d761c5a8 + * @see http://halemo.net/info/idcard/ + * @returns {ValidateResult} + */ + function ilId(value) { + if (!/^\d{1,9}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: luhn$2(value), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$8 = core.utils.isValidDate; + /** + * Validate Iceland national identification number (Kennitala) + * + * @see http://en.wikipedia.org/wiki/Kennitala + * @returns {ValidateResult} + */ + function isId(value) { + if (!/^[0-9]{6}[-]{0,1}[0-9]{4}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/-/g, ''); + var day = parseInt(v.substr(0, 2), 10); + var month = parseInt(v.substr(2, 2), 10); + var year = parseInt(v.substr(4, 2), 10); + var century = parseInt(v.charAt(9), 10); + year = century === 9 ? 1900 + year : (20 + century) * 100 + year; + if (!isValidDate$8(year, month, day, true)) { + return { + meta: {}, + valid: false, + }; + } + // Validate the check digit + var weight = [3, 2, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + return { + meta: {}, + valid: "".concat(sum) === v.charAt(8), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$7 = core.utils.isValidDate; + /** + * Validate Korean registration number (RRN) + * + * @see https://en.wikipedia.org/wiki/Resident_registration_number + * @returns {ValidateResult} + */ + function krId(value) { + var v = value.replace('-', ''); + if (!/^\d{13}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + // Check the date of birth + var sDigit = v.charAt(6); + var year = parseInt(v.substr(0, 2), 10); + var month = parseInt(v.substr(2, 2), 10); + var day = parseInt(v.substr(4, 2), 10); + switch (sDigit) { + case '1': + case '2': + case '5': + case '6': + year += 1900; + break; + case '3': + case '4': + case '7': + case '8': + year += 2000; + break; + default: + year += 1800; + break; + } + if (!isValidDate$7(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Calculate the check digit + var weight = [2, 3, 4, 5, 6, 7, 8, 9, 2, 3, 4, 5]; + var length = v.length; + var sum = 0; + for (var i = 0; i < length - 1; i++) { + sum += weight[i] * parseInt(v.charAt(i), 10); + } + var checkDigit = (11 - (sum % 11)) % 10; + return { + meta: {}, + valid: "".concat(checkDigit) === v.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$6 = core.utils.isValidDate; + /** + * Validate Lithuanian Personal Code (Asmens kodas) + * + * @see http://en.wikipedia.org/wiki/National_identification_number#Lithuania + * @see http://www.adomas.org/midi2007/pcode.html + * @returns {ValidateResult} + */ + function ltId(value) { + if (!/^[0-9]{11}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var gender = parseInt(value.charAt(0), 10); + var year = parseInt(value.substr(1, 2), 10); + var month = parseInt(value.substr(3, 2), 10); + var day = parseInt(value.substr(5, 2), 10); + var century = gender % 2 === 0 ? 17 + gender / 2 : 17 + (gender + 1) / 2; + year = century * 100 + year; + if (!isValidDate$6(year, month, day, true)) { + return { + meta: {}, + valid: false, + }; + } + // Validate the check digit + var weight = [1, 2, 3, 4, 5, 6, 7, 8, 9, 1]; + var sum = 0; + var i; + for (i = 0; i < 10; i++) { + sum += parseInt(value.charAt(i), 10) * weight[i]; + } + sum = sum % 11; + if (sum !== 10) { + return { + meta: {}, + valid: "".concat(sum) === value.charAt(10), + }; + } + // Re-calculate the check digit + sum = 0; + weight = [3, 4, 5, 6, 7, 8, 9, 1, 2, 3]; + for (i = 0; i < 10; i++) { + sum += parseInt(value.charAt(i), 10) * weight[i]; + } + sum = sum % 11; + if (sum === 10) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === value.charAt(10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$5 = core.utils.isValidDate; + /** + * Validate Latvian Personal Code (Personas kods) + * + * @see http://laacz.lv/2006/11/25/pk-parbaudes-algoritms/ + * @returns {ValidateResult} + */ + function lvId(value) { + if (!/^[0-9]{6}[-]{0,1}[0-9]{5}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/\D/g, ''); + // Check birth date + var day = parseInt(v.substr(0, 2), 10); + var month = parseInt(v.substr(2, 2), 10); + var year = parseInt(v.substr(4, 2), 10); + year = year + 1800 + parseInt(v.charAt(6), 10) * 100; + if (!isValidDate$5(year, month, day, true)) { + return { + meta: {}, + valid: false, + }; + } + // Check personal code + var sum = 0; + var weight = [10, 5, 8, 4, 2, 1, 6, 3, 7, 9]; + for (var i = 0; i < 10; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = ((sum + 1) % 11) % 10; + return { + meta: {}, + valid: "".concat(sum) === v.charAt(10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * @returns {ValidateResult} + */ + function meId(value) { + return { + meta: {}, + valid: jmbg(value, 'ME'), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * @returns {ValidateResult} + */ + function mkId(value) { + return { + meta: {}, + valid: jmbg(value, 'MK'), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$4 = core.utils.isValidDate; + /** + * Validate Mexican ID number (CURP) + * + * @see https://en.wikipedia.org/wiki/Unique_Population_Registry_Code + * @returns {ValidateResult} + */ + function mxId(value) { + var v = value.toUpperCase(); + if (!/^[A-Z]{4}\d{6}[A-Z]{6}[0-9A-Z]\d$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + // Check if the combination of initial names belongs to a back list + // See + // http://quemamadera.blogspot.com/2008/02/las-palabras-inconvenientes-del-curp.html + // https://www.reddit.com/r/mexico/comments/bo8cv/hoy_aprendi_que_existe_un_catalogo_de_palabras/ + var blacklistNames = [ + 'BACA', + 'BAKA', + 'BUEI', + 'BUEY', + 'CACA', + 'CACO', + 'CAGA', + 'CAGO', + 'CAKA', + 'CAKO', + 'COGE', + 'COGI', + 'COJA', + 'COJE', + 'COJI', + 'COJO', + 'COLA', + 'CULO', + 'FALO', + 'FETO', + 'GETA', + 'GUEI', + 'GUEY', + 'JETA', + 'JOTO', + 'KACA', + 'KACO', + 'KAGA', + 'KAGO', + 'KAKA', + 'KAKO', + 'KOGE', + 'KOGI', + 'KOJA', + 'KOJE', + 'KOJI', + 'KOJO', + 'KOLA', + 'KULO', + 'LILO', + 'LOCA', + 'LOCO', + 'LOKA', + 'LOKO', + 'MAME', + 'MAMO', + 'MEAR', + 'MEAS', + 'MEON', + 'MIAR', + 'MION', + 'MOCO', + 'MOKO', + 'MULA', + 'MULO', + 'NACA', + 'NACO', + 'PEDA', + 'PEDO', + 'PENE', + 'PIPI', + 'PITO', + 'POPO', + 'PUTA', + 'PUTO', + 'QULO', + 'RATA', + 'ROBA', + 'ROBE', + 'ROBO', + 'RUIN', + 'SENO', + 'TETA', + 'VACA', + 'VAGA', + 'VAGO', + 'VAKA', + 'VUEI', + 'VUEY', + 'WUEI', + 'WUEY', + ]; + var name = v.substr(0, 4); + if (blacklistNames.indexOf(name) >= 0) { + return { + meta: {}, + valid: false, + }; + } + // Check the date of birth + var year = parseInt(v.substr(4, 2), 10); + var month = parseInt(v.substr(6, 2), 10); + var day = parseInt(v.substr(6, 2), 10); + if (/^[0-9]$/.test(v.charAt(16))) { + year += 1900; + } + else { + year += 2000; + } + if (!isValidDate$4(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Check the gender + var gender = v.charAt(10); + if (gender !== 'H' && gender !== 'M') { + // H for male, M for female + return { + meta: {}, + valid: false, + }; + } + // Check the state + var state = v.substr(11, 2); + var states = [ + 'AS', + 'BC', + 'BS', + 'CC', + 'CH', + 'CL', + 'CM', + 'CS', + 'DF', + 'DG', + 'GR', + 'GT', + 'HG', + 'JC', + 'MC', + 'MN', + 'MS', + 'NE', + 'NL', + 'NT', + 'OC', + 'PL', + 'QR', + 'QT', + 'SL', + 'SP', + 'SR', + 'TC', + 'TL', + 'TS', + 'VZ', + 'YN', + 'ZS', + ]; + if (states.indexOf(state) === -1) { + return { + meta: {}, + valid: false, + }; + } + // Calculate the check digit + var alphabet = '0123456789ABCDEFGHIJKLMN&OPQRSTUVWXYZ'; + var sum = 0; + var length = v.length; + for (var i = 0; i < length - 1; i++) { + sum += (18 - i) * alphabet.indexOf(v.charAt(i)); + } + sum = (10 - (sum % 10)) % 10; + return { + meta: {}, + valid: "".concat(sum) === v.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$3 = core.utils.isValidDate; + /** + * Validate Malaysian identity card number + * + * @see https://en.wikipedia.org/wiki/Malaysian_identity_card + * @returns {ValidateResult} + */ + function myId(value) { + if (!/^\d{12}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + // Validate date of birth + var year = parseInt(value.substr(0, 2), 10); + var month = parseInt(value.substr(2, 2), 10); + var day = parseInt(value.substr(4, 2), 10); + if (!isValidDate$3(year + 1900, month, day) && !isValidDate$3(year + 2000, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Validate place of birth + var placeOfBirth = value.substr(6, 2); + var notAvailablePlaces = ['17', '18', '19', '20', '69', '70', '73', '80', '81', '94', '95', '96', '97']; + return { + meta: {}, + valid: notAvailablePlaces.indexOf(placeOfBirth) === -1, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Dutch national identification number (BSN) + * + * @see https://nl.wikipedia.org/wiki/Burgerservicenummer + * @returns {ValidateResult} + */ + function nlId(value) { + if (value.length < 8) { + return { + meta: {}, + valid: false, + }; + } + var v = value; + if (v.length === 8) { + v = "0".concat(v); + } + if (!/^[0-9]{4}[.]{0,1}[0-9]{2}[.]{0,1}[0-9]{3}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + v = v.replace(/\./g, ''); + if (parseInt(v, 10) === 0) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var length = v.length; + for (var i = 0; i < length - 1; i++) { + sum += (9 - i) * parseInt(v.charAt(i), 10); + } + sum = sum % 11; + if (sum === 10) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Norwegian identity number (Fødselsnummer) + * + * @see https://no.wikipedia.org/wiki/F%C3%B8dselsnummer + * @returns {ValidateResult} + */ + function noId(value) { + if (!/^\d{11}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + // Calculate the first check digit + var firstCd = function (v) { + var weight = [3, 7, 6, 1, 8, 9, 4, 5, 2]; + var sum = 0; + for (var i = 0; i < 9; i++) { + sum += weight[i] * parseInt(v.charAt(i), 10); + } + return 11 - (sum % 11); + }; + // Calculate the second check digit + var secondCd = function (v) { + var weight = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 10; i++) { + sum += weight[i] * parseInt(v.charAt(i), 10); + } + return 11 - (sum % 11); + }; + return { + meta: {}, + valid: "".concat(firstCd(value)) === value.substr(-2, 1) && "".concat(secondCd(value)) === value.substr(-1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Peruvian identity number (CUI) + * + * @see https://es.wikipedia.org/wiki/Documento_Nacional_de_Identidad_(Per%C3%BA) + * @returns {ValidateResult} + */ + function peId(value) { + if (!/^\d{8}[0-9A-Z]*$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + if (value.length === 8) { + return { + meta: {}, + valid: true, + }; + } + var weight = [3, 2, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += weight[i] * parseInt(value.charAt(i), 10); + } + var cd = sum % 11; + var checkDigit = [6, 5, 4, 3, 2, 1, 1, 0, 9, 8, 7][cd]; + var checkChar = 'KJIHGFEDCBA'.charAt(cd); + return { + meta: {}, + valid: value.charAt(8) === "".concat(checkDigit) || value.charAt(8) === checkChar, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Poland citizen number (PESEL) + * + * @see http://en.wikipedia.org/wiki/National_identification_number#Poland + * @see http://en.wikipedia.org/wiki/PESEL + * @returns {ValidateResult} + */ + function plId(value) { + if (!/^[0-9]{11}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var length = value.length; + var weight = [1, 3, 7, 9, 1, 3, 7, 9, 1, 3, 7]; + for (var i = 0; i < length - 1; i++) { + sum += weight[i] * parseInt(value.charAt(i), 10); + } + sum = sum % 10; + if (sum === 0) { + sum = 10; + } + sum = 10 - sum; + return { + meta: {}, + valid: "".concat(sum) === value.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$2 = core.utils.isValidDate; + /** + * Validate Romanian numerical personal code (CNP) + * + * @see http://en.wikipedia.org/wiki/National_identification_number#Romania + * @returns {ValidateResult} + */ + function roId(value) { + if (!/^[0-9]{13}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var gender = parseInt(value.charAt(0), 10); + if (gender === 0 || gender === 7 || gender === 8) { + return { + meta: {}, + valid: false, + }; + } + // Determine the date of birth + var year = parseInt(value.substr(1, 2), 10); + var month = parseInt(value.substr(3, 2), 10); + var day = parseInt(value.substr(5, 2), 10); + // The year of date is determined base on the gender + var centuries = { + 1: 1900, + 2: 1900, + 3: 1800, + 4: 1800, + 5: 2000, + 6: 2000, // Female born after 2000 + }; + if (day > 31 && month > 12) { + return { + meta: {}, + valid: false, + }; + } + if (gender !== 9) { + year = centuries[gender + ''] + year; + if (!isValidDate$2(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + } + // Validate the check digit + var sum = 0; + var weight = [2, 7, 9, 1, 4, 6, 3, 5, 8, 2, 7, 9]; + var length = value.length; + for (var i = 0; i < length - 1; i++) { + sum += parseInt(value.charAt(i), 10) * weight[i]; + } + sum = sum % 11; + if (sum === 10) { + sum = 1; + } + return { + meta: {}, + valid: "".concat(sum) === value.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * @returns {ValidateResult} + */ + function rsId(value) { + return { + meta: {}, + valid: jmbg(value, 'RS'), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn$1 = core.algorithms.luhn; + var isValidDate$1 = core.utils.isValidDate; + /** + * Validate Swedish personal identity number (personnummer) + * + * @see http://en.wikipedia.org/wiki/Personal_identity_number_(Sweden) + * @returns {ValidateResult} + */ + function seId(value) { + if (!/^[0-9]{10}$/.test(value) && !/^[0-9]{6}[-|+][0-9]{4}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var v = value.replace(/[^0-9]/g, ''); + var year = parseInt(v.substr(0, 2), 10) + 1900; + var month = parseInt(v.substr(2, 2), 10); + var day = parseInt(v.substr(4, 2), 10); + if (!isValidDate$1(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Validate the last check digit + return { + meta: {}, + valid: luhn$1(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * @returns {ValidateResult} + */ + function siId(value) { + return { + meta: {}, + valid: jmbg(value, 'SI'), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate San Marino citizen number + * + * @see http://en.wikipedia.org/wiki/National_identification_number#San_Marino + * @returns {ValidateResult} + */ + function smId(value) { + return { + meta: {}, + valid: /^\d{5}$/.test(value), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Thailand citizen number + * + * @see http://en.wikipedia.org/wiki/National_identification_number#Thailand + * @returns {ValidateResult} + */ + function thId(value) { + if (value.length !== 13) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + for (var i = 0; i < 12; i++) { + sum += parseInt(value.charAt(i), 10) * (13 - i); + } + return { + meta: {}, + valid: (11 - (sum % 11)) % 10 === parseInt(value.charAt(12), 10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Turkish Identification Number + * + * @see https://en.wikipedia.org/wiki/Turkish_Identification_Number + * @returns {ValidateResult} + */ + function trId(value) { + if (value.length !== 11) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + for (var i = 0; i < 10; i++) { + sum += parseInt(value.charAt(i), 10); + } + return { + meta: {}, + valid: sum % 10 === parseInt(value.charAt(10), 10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Taiwan identity card number + * + * @see https://en.wikipedia.org/wiki/National_identification_number#Taiwan + * @returns {ValidateResult} + */ + function twId(value) { + var v = value.toUpperCase(); + if (!/^[A-Z][12][0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var length = v.length; + var alphabet = 'ABCDEFGHJKLMNPQRSTUVXYWZIO'; + var letterIndex = alphabet.indexOf(v.charAt(0)) + 10; + var letterValue = Math.floor(letterIndex / 10) + (letterIndex % 10) * (length - 1); + var sum = 0; + for (var i = 1; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * (length - 1 - i); + } + return { + meta: {}, + valid: (letterValue + sum + parseInt(v.charAt(length - 1), 10)) % 10 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Uruguayan identity document + * + * @see https://en.wikipedia.org/wiki/Identity_document#Uruguay + * @returns {ValidateResult} + */ + function uyId(value) { + if (!/^\d{8}$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [2, 9, 8, 7, 6, 3, 4]; + var sum = 0; + for (var i = 0; i < 7; i++) { + sum += parseInt(value.charAt(i), 10) * weight[i]; + } + sum = sum % 10; + if (sum > 0) { + sum = 10 - sum; + } + return { + meta: {}, + valid: "".concat(sum) === value.charAt(7), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn = core.algorithms.luhn; + var isValidDate = core.utils.isValidDate; + /** + * Validate South African ID + * + * @see http://en.wikipedia.org/wiki/National_identification_number#South_Africa + * @returns {ValidateResult} + */ + function zaId(value) { + if (!/^[0-9]{10}[0|1][8|9][0-9]$/.test(value)) { + return { + meta: {}, + valid: false, + }; + } + var year = parseInt(value.substr(0, 2), 10); + var currentYear = new Date().getFullYear() % 100; + var month = parseInt(value.substr(2, 2), 10); + var day = parseInt(value.substr(4, 2), 10); + year = year >= currentYear ? year + 1900 : year + 2000; + if (!isValidDate(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Validate the last check digit + return { + meta: {}, + valid: luhn(value), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function id() { + // Supported country codes + var COUNTRY_CODES = [ + 'AR', + 'BA', + 'BG', + 'BR', + 'CH', + 'CL', + 'CN', + 'CO', + 'CZ', + 'DK', + 'EE', + 'ES', + 'FI', + 'FR', + 'HK', + 'HR', + 'ID', + 'IE', + 'IL', + 'IS', + 'KR', + 'LT', + 'LV', + 'ME', + 'MK', + 'MX', + 'MY', + 'NL', + 'NO', + 'PE', + 'PL', + 'RO', + 'RS', + 'SE', + 'SI', + 'SK', + 'SM', + 'TH', + 'TR', + 'TW', + 'UY', + 'ZA', + ]; + return { + /** + * Validate identification number in different countries + * @see http://en.wikipedia.org/wiki/National_identification_number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { message: '' }, removeUndefined(input.options)); + var country = input.value.substr(0, 2); + if ('function' === typeof opts.country) { + country = opts.country.call(this); + } + else { + country = opts.country; + } + if (COUNTRY_CODES.indexOf(country) === -1) { + return { valid: true }; + } + var result = { + meta: {}, + valid: true, + }; + switch (country.toLowerCase()) { + case 'ar': + result = arId(input.value); + break; + case 'ba': + result = baId(input.value); + break; + case 'bg': + result = bgId(input.value); + break; + case 'br': + result = brId(input.value); + break; + case 'ch': + result = chId(input.value); + break; + case 'cl': + result = clId(input.value); + break; + case 'cn': + result = cnId(input.value); + break; + case 'co': + result = coId(input.value); + break; + case 'cz': + result = czId(input.value); + break; + case 'dk': + result = dkId(input.value); + break; + // Validate Estonian Personal Identification Code (isikukood) + // Use the same format as Lithuanian Personal Code + // See http://et.wikipedia.org/wiki/Isikukood + case 'ee': + result = ltId(input.value); + break; + case 'es': + result = esId(input.value); + break; + case 'fi': + result = fiId(input.value); + break; + case 'fr': + result = frId(input.value); + break; + case 'hk': + result = hkId(input.value); + break; + case 'hr': + result = hrId(input.value); + break; + case 'id': + result = idId(input.value); + break; + case 'ie': + result = ieId(input.value); + break; + case 'il': + result = ilId(input.value); + break; + case 'is': + result = isId(input.value); + break; + case 'kr': + result = krId(input.value); + break; + case 'lt': + result = ltId(input.value); + break; + case 'lv': + result = lvId(input.value); + break; + case 'me': + result = meId(input.value); + break; + case 'mk': + result = mkId(input.value); + break; + case 'mx': + result = mxId(input.value); + break; + case 'my': + result = myId(input.value); + break; + case 'nl': + result = nlId(input.value); + break; + case 'no': + result = noId(input.value); + break; + case 'pe': + result = peId(input.value); + break; + case 'pl': + result = plId(input.value); + break; + case 'ro': + result = roId(input.value); + break; + case 'rs': + result = rsId(input.value); + break; + case 'se': + result = seId(input.value); + break; + case 'si': + result = siId(input.value); + break; + // Validate Slovak national identifier number (RC) + // Slovakia uses the same format as Czech Republic + case 'sk': + result = czId(input.value); + break; + case 'sm': + result = smId(input.value); + break; + case 'th': + result = thId(input.value); + break; + case 'tr': + result = trId(input.value); + break; + case 'tw': + result = twId(input.value); + break; + case 'uy': + result = uyId(input.value); + break; + case 'za': + result = zaId(input.value); + break; + } + var message = format(input.l10n && input.l10n.id ? opts.message || input.l10n.id.country : opts.message, input.l10n && input.l10n.id && input.l10n.id.countries + ? input.l10n.id.countries[country.toUpperCase()] + : country.toUpperCase()); + return Object.assign({}, { message: message }, result); + }, + }; + } + + return id; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-id/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-id/index.min.js new file mode 100644 index 0000000..c9181ea --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-id/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-id + * @version 2.4.0 + */ + +!function(a,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((a="undefined"!=typeof globalThis?globalThis:a||self).FormValidation=a.FormValidation||{},a.FormValidation.validators=a.FormValidation.validators||{},a.FormValidation.validators.id=t(a.FormValidation))}(this,(function(a){"use strict";function t(a,t){if(!/^\d{13}$/.test(a))return!1;var r=parseInt(a.substr(0,2),10),e=parseInt(a.substr(2,2),10),s=parseInt(a.substr(7,2),10),n=parseInt(a.substr(12,1),10);if(r>31||e>12)return!1;for(var i=0,u=0;u<6;u++)i+=(7-u)*(parseInt(a.charAt(u),10)+parseInt(a.charAt(u+6),10));if(10!==(i=11-i%11)&&11!==i||(i=0),i!==n)return!1;switch(t.toUpperCase()){case"BA":return 10<=s&&s<=19;case"MK":return 41<=s&&s<=49;case"ME":return 20<=s&&s<=29;case"RS":return 70<=s&&s<=99;case"SI":return 50<=s&&s<=59;default:return!0}}var r=a.utils.isValidDate;var e=a.utils.isValidDate;var s=a.utils.isValidDate;function n(a){if(!/^\d{9,10}$/.test(a))return{meta:{},valid:!1};var t=1900+parseInt(a.substr(0,2),10),r=parseInt(a.substr(2,2),10)%50%20,e=parseInt(a.substr(4,2),10);if(9===a.length){if(t>=1980&&(t-=100),t>1953)return{meta:{},valid:!1}}else t<1954&&(t+=100);if(!s(t,r,e))return{meta:{},valid:!1};if(10===a.length){var n=parseInt(a.substr(0,9),10)%11;return t<1985&&(n%=10),{meta:{},valid:"".concat(n)===a.substr(9,1)}}return{meta:{},valid:!0}}var i=a.utils.isValidDate;var u=a.utils.isValidDate;var c=a.algorithms.mod11And10;var l=a.algorithms.verhoeff;var v=a.algorithms.luhn;var d=a.utils.isValidDate;var f=a.utils.isValidDate;var o=a.utils.isValidDate;function A(a){if(!/^[0-9]{11}$/.test(a))return{meta:{},valid:!1};var t=parseInt(a.charAt(0),10),r=parseInt(a.substr(1,2),10),e=parseInt(a.substr(3,2),10),s=parseInt(a.substr(5,2),10);if(!o(r=100*(t%2==0?17+t/2:17+(t+1)/2)+r,e,s,!0))return{meta:{},valid:!1};var n,i=[1,2,3,4,5,6,7,8,9,1],u=0;for(n=0;n<10;n++)u+=parseInt(a.charAt(n),10)*i[n];if(10!==(u%=11))return{meta:{},valid:"".concat(u)===a.charAt(10)};for(u=0,i=[3,4,5,6,7,8,9,1,2,3],n=0;n<10;n++)u+=parseInt(a.charAt(n),10)*i[n];return 10===(u%=11)&&(u=0),{meta:{},valid:"".concat(u)===a.charAt(10)}}var p=a.utils.isValidDate;var b=a.utils.isValidDate;var m=a.utils.isValidDate;var I=a.utils.isValidDate;var h=a.algorithms.luhn,O=a.utils.isValidDate;var C=a.algorithms.luhn,k=a.utils.isValidDate;var g=a.utils.format,E=a.utils.removeUndefined;return function(){var a=["AR","BA","BG","BR","CH","CL","CN","CO","CZ","DK","EE","ES","FI","FR","HK","HR","ID","IE","IL","IS","KR","LT","LV","ME","MK","MX","MY","NL","NO","PE","PL","RO","RS","SE","SI","SK","SM","TH","TR","TW","UY","ZA"];return{validate:function(s){if(""===s.value)return{valid:!0};var o=Object.assign({},{message:""},E(s.options)),$=s.value.substr(0,2);if($="function"==typeof o.country?o.country.call(this):o.country,-1===a.indexOf($))return{valid:!0};var K,M,V={meta:{},valid:!0};switch($.toLowerCase()){case"ar":K=s.value,M=K.replace(/\./g,""),V={meta:{},valid:/^\d{7,8}$/.test(M)};break;case"ba":V=function(a){return{meta:{},valid:t(a,"BA")}}(s.value);break;case"bg":V=function(a){if(!/^\d{10}$/.test(a)&&!/^\d{6}\s\d{3}\s\d{1}$/.test(a))return{meta:{},valid:!1};var t=a.replace(/\s/g,""),e=parseInt(t.substr(0,2),10)+1900,s=parseInt(t.substr(2,2),10),n=parseInt(t.substr(4,2),10);if(s>40?(e+=100,s-=40):s>20&&(e-=100,s-=20),!r(e,s,n))return{meta:{},valid:!1};for(var i=0,u=[2,4,8,5,10,9,7,3,6],c=0;c<9;c++)i+=parseInt(t.charAt(c),10)*u[c];return{meta:{},valid:"".concat(i=i%11%10)===t.substr(9,1)}}(s.value);break;case"br":V=function(a){var t=a.replace(/\D/g,"");if(!/^\d{11}$/.test(t)||/^1{11}|2{11}|3{11}|4{11}|5{11}|6{11}|7{11}|8{11}|9{11}|0{11}$/.test(t))return{meta:{},valid:!1};var r,e=0;for(r=0;r<9;r++)e+=(10-r)*parseInt(t.charAt(r),10);if(10!=(e=11-e%11)&&11!==e||(e=0),"".concat(e)!==t.charAt(9))return{meta:{},valid:!1};var s=0;for(r=0;r<10;r++)s+=(11-r)*parseInt(t.charAt(r),10);return 10!=(s=11-s%11)&&11!==s||(s=0),{meta:{},valid:"".concat(s)===t.charAt(10)}}(s.value);break;case"ch":V=function(a){if(!/^756[.]{0,1}[0-9]{4}[.]{0,1}[0-9]{4}[.]{0,1}[0-9]{2}$/.test(a))return{meta:{},valid:!1};for(var t=a.replace(/\D/g,"").substr(3),r=t.length,e=8===r?[3,1]:[1,3],s=0,n=0;n=0;n--)s+=parseInt(t.charAt(n),10)*e[n];return(s%=11)>=2&&(s=11-s),{meta:{},valid:"".concat(s)===t.substr(r-1)}}(s.value);break;case"cz":case"sk":V=n(s.value);break;case"dk":V=function(a){if(!/^[0-9]{6}[-]{0,1}[0-9]{4}$/.test(a))return{meta:{},valid:!1};var t=a.replace(/-/g,""),r=parseInt(t.substr(0,2),10),e=parseInt(t.substr(2,2),10),s=parseInt(t.substr(4,2),10);switch(!0){case-1!=="5678".indexOf(t.charAt(6))&&s>=58:s+=1800;break;case-1!=="0123".indexOf(t.charAt(6)):case-1!=="49".indexOf(t.charAt(6))&&s>=37:s+=1900;break;default:s+=2e3}return{meta:{},valid:i(s,e,r)}}(s.value);break;case"ee":case"lt":V=A(s.value);break;case"es":V=function(a){var t=/^[0-9]{8}[-]{0,1}[A-HJ-NP-TV-Z]$/.test(a),r=/^[XYZ][-]{0,1}[0-9]{7}[-]{0,1}[A-HJ-NP-TV-Z]$/.test(a),e=/^[A-HNPQS][-]{0,1}[0-9]{7}[-]{0,1}[0-9A-J]$/.test(a);if(!t&&!r&&!e)return{meta:{},valid:!1};var s,n,i=a.replace(/-/g,"");if(t||r){n="DNI";var u="XYZ".indexOf(i.charAt(0));return-1!==u&&(i=u+i.substr(1)+"",n="NIE"),{meta:{type:n},valid:(s="TRWAGMYFPDXBNJZSQVHLCKE"[(s=parseInt(i.substr(0,8),10))%23])===i.substr(8,1)}}s=i.substr(1,7),n="CIF";for(var c=i[0],l=i.substr(-1),v=0,d=0;d=0)return{meta:{},valid:!1};var e=parseInt(t.substr(4,2),10),s=parseInt(t.substr(6,2),10),n=parseInt(t.substr(6,2),10);if(/^[0-9]$/.test(t.charAt(16))?e+=1900:e+=2e3,!b(e,s,n))return{meta:{},valid:!1};var i=t.charAt(10);if("H"!==i&&"M"!==i)return{meta:{},valid:!1};var u=t.substr(11,2);if(-1===["AS","BC","BS","CC","CH","CL","CM","CS","DF","DG","GR","GT","HG","JC","MC","MN","MS","NE","NL","NT","OC","PL","QR","QT","SL","SP","SR","TC","TL","TS","VZ","YN","ZS"].indexOf(u))return{meta:{},valid:!1};for(var c=0,l=t.length,v=0;v31&&e>12)return{meta:{},valid:!1};if(9!==t&&!I(r={1:1900,2:1900,3:1800,4:1800,5:2e3,6:2e3}[t+""]+r,e,s))return{meta:{},valid:!1};for(var n=0,i=[2,7,9,1,4,6,3,5,8,2,7,9],u=a.length,c=0;c0&&(r=10-r),{meta:{},valid:"".concat(r)===a.charAt(7)}}(s.value);break;case"za":V=function(a){if(!/^[0-9]{10}[0|1][8|9][0-9]$/.test(a))return{meta:{},valid:!1};var t=parseInt(a.substr(0,2),10),r=(new Date).getFullYear()%100,e=parseInt(a.substr(2,2),10),s=parseInt(a.substr(4,2),10);return k(t=t>=r?t+1900:t+2e3,e,s)?{meta:{},valid:C(a)}:{meta:{},valid:!1}}(s.value)}var D=g(s.l10n&&s.l10n.id?o.message||s.l10n.id.country:o.message,s.l10n&&s.l10n.id&&s.l10n.id.countries?s.l10n.id.countries[$.toUpperCase()]:$.toUpperCase());return Object.assign({},{message:D},V)}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.js new file mode 100644 index 0000000..f136538 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.js @@ -0,0 +1,27 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.identical = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function identical() { + return { + validate: function (input) { + var compareWith = 'function' === typeof input.options.compare + ? input.options.compare.call(this) + : input.options.compare; + return { + valid: compareWith === '' || input.value === compareWith, + }; + }, + }; + } + + return identical; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.min.js new file mode 100644 index 0000000..00404c8 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-identical/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-identical + * @version 2.4.0 + */ + +!function(o,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.validators=o.FormValidation.validators||{},o.FormValidation.validators.identical=i())}(this,(function(){"use strict";return function(){return{validate:function(o){var i="function"==typeof o.options.compare?o.options.compare.call(this):o.options.compare;return{valid:""===i||o.value===i}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.js new file mode 100644 index 0000000..c5c6a9a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.js @@ -0,0 +1,42 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.imei = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn = core.algorithms.luhn; + function imei() { + return { + /** + * Validate IMEI (International Mobile Station Equipment Identity) + * @see http://en.wikipedia.org/wiki/International_Mobile_Station_Equipment_Identity + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + switch (true) { + case /^\d{15}$/.test(input.value): + case /^\d{2}-\d{6}-\d{6}-\d{1}$/.test(input.value): + case /^\d{2}\s\d{6}\s\d{6}\s\d{1}$/.test(input.value): + return { valid: luhn(input.value.replace(/[^0-9]/g, '')) }; + case /^\d{14}$/.test(input.value): + case /^\d{16}$/.test(input.value): + case /^\d{2}-\d{6}-\d{6}(|-\d{2})$/.test(input.value): + case /^\d{2}\s\d{6}\s\d{6}(|\s\d{2})$/.test(input.value): + return { valid: true }; + default: + return { valid: false }; + } + }, + }; + } + + return imei; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.min.js new file mode 100644 index 0000000..4f28bbb --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imei/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-imei + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.imei=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.algorithms.luhn;return function(){return{validate:function(e){if(""===e.value)return{valid:!0};switch(!0){case/^\d{15}$/.test(e.value):case/^\d{2}-\d{6}-\d{6}-\d{1}$/.test(e.value):case/^\d{2}\s\d{6}\s\d{6}\s\d{1}$/.test(e.value):return{valid:a(e.value.replace(/[^0-9]/g,""))};case/^\d{14}$/.test(e.value):case/^\d{16}$/.test(e.value):case/^\d{2}-\d{6}-\d{6}(|-\d{2})$/.test(e.value):case/^\d{2}\s\d{6}\s\d{6}(|\s\d{2})$/.test(e.value):return{valid:!0};default:return{valid:!1}}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.js new file mode 100644 index 0000000..1512cae --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.js @@ -0,0 +1,38 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.imo = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function imo() { + return { + /** + * Validate IMO (International Maritime Organization) + * @see http://en.wikipedia.org/wiki/IMO_Number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + if (!/^IMO \d{7}$/i.test(input.value)) { + return { valid: false }; + } + // Grab just the digits + var digits = input.value.replace(/^.*(\d{7})$/, '$1'); + var sum = 0; + for (var i = 6; i >= 1; i--) { + sum += parseInt(digits.slice(6 - i, -i), 10) * (i + 1); + } + return { valid: sum % 10 === parseInt(digits.charAt(6), 10) }; + }, + }; + } + + return imo; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.min.js new file mode 100644 index 0000000..b5e94f6 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-imo/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-imo + * @version 2.4.0 + */ + +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.imo=i())}(this,(function(){"use strict";return function(){return{validate:function(e){if(""===e.value)return{valid:!0};if(!/^IMO \d{7}$/i.test(e.value))return{valid:!1};for(var i=e.value.replace(/^.*(\d{7})$/,"$1"),t=0,a=6;a>=1;a--)t+=parseInt(i.slice(6-a,-a),10)*(a+1);return{valid:t%10===parseInt(i.charAt(6),10)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.js new file mode 100644 index 0000000..732b092 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.js @@ -0,0 +1,47 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.integer = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + function integer() { + return { + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { + decimalSeparator: '.', + thousandsSeparator: '', + }, removeUndefined(input.options)); + var decimalSeparator = opts.decimalSeparator === '.' ? '\\.' : opts.decimalSeparator; + var thousandsSeparator = opts.thousandsSeparator === '.' ? '\\.' : opts.thousandsSeparator; + var testRegexp = new RegExp("^-?[0-9]{1,3}(".concat(thousandsSeparator, "[0-9]{3})*(").concat(decimalSeparator, "[0-9]+)?$")); + var thousandsReplacer = new RegExp(thousandsSeparator, 'g'); + var v = "".concat(input.value); + if (!testRegexp.test(v)) { + return { valid: false }; + } + // Replace thousands separator with blank + if (thousandsSeparator) { + v = v.replace(thousandsReplacer, ''); + } + // Replace decimal separator with a dot + if (decimalSeparator) { + v = v.replace(decimalSeparator, '.'); + } + var n = parseFloat(v); + return { valid: !isNaN(n) && isFinite(n) && Math.floor(n) === n }; + }, + }; + } + + return integer; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.min.js new file mode 100644 index 0000000..2cc9c1c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-integer/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-integer + * @version 2.4.0 + */ + +!function(a,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((a="undefined"!=typeof globalThis?globalThis:a||self).FormValidation=a.FormValidation||{},a.FormValidation.validators=a.FormValidation.validators||{},a.FormValidation.validators.integer=e(a.FormValidation))}(this,(function(a){"use strict";var e=a.utils.removeUndefined;return function(){return{validate:function(a){if(""===a.value)return{valid:!0};var o=Object.assign({},{decimalSeparator:".",thousandsSeparator:""},e(a.options)),t="."===o.decimalSeparator?"\\.":o.decimalSeparator,i="."===o.thousandsSeparator?"\\.":o.thousandsSeparator,r=new RegExp("^-?[0-9]{1,3}(".concat(i,"[0-9]{3})*(").concat(t,"[0-9]+)?$")),n=new RegExp(i,"g"),d="".concat(a.value);if(!r.test(d))return{valid:!1};i&&(d=d.replace(n,"")),t&&(d=d.replace(t,"."));var l=parseFloat(d);return{valid:!isNaN(l)&&isFinite(l)&&Math.floor(l)===l}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.js new file mode 100644 index 0000000..ea97c7c --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.js @@ -0,0 +1,52 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.ip = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + function ip() { + return { + /** + * Return true if the input value is a IP address. + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { + ipv4: true, + ipv6: true, + }, removeUndefined(input.options)); + var ipv4Regex = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\/([0-9]|[1-2][0-9]|3[0-2]))?$/; + var ipv6Regex = /^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*(\/(\d|\d\d|1[0-1]\d|12[0-8]))?$/; + switch (true) { + case opts.ipv4 && !opts.ipv6: + return { + message: input.l10n ? opts.message || input.l10n.ip.ipv4 : opts.message, + valid: ipv4Regex.test(input.value), + }; + case !opts.ipv4 && opts.ipv6: + return { + message: input.l10n ? opts.message || input.l10n.ip.ipv6 : opts.message, + valid: ipv6Regex.test(input.value), + }; + case opts.ipv4 && opts.ipv6: + default: + return { + message: input.l10n ? opts.message || input.l10n.ip.default : opts.message, + valid: ipv4Regex.test(input.value) || ipv6Regex.test(input.value), + }; + } + }, + }; + } + + return ip; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.min.js new file mode 100644 index 0000000..704bfc3 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ip/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-ip + * @version 2.4.0 + */ + +!function(d,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((d="undefined"!=typeof globalThis?globalThis:d||self).FormValidation=d.FormValidation||{},d.FormValidation.validators=d.FormValidation.validators||{},d.FormValidation.validators.ip=a(d.FormValidation))}(this,(function(d){"use strict";var a=d.utils.removeUndefined;return function(){return{validate:function(d){if(""===d.value)return{valid:!0};var e=Object.assign({},{ipv4:!0,ipv6:!0},a(d.options)),i=/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\/([0-9]|[1-2][0-9]|3[0-2]))?$/,t=/^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*(\/(\d|\d\d|1[0-1]\d|12[0-8]))?$/;switch(!0){case e.ipv4&&!e.ipv6:return{message:d.l10n?e.message||d.l10n.ip.ipv4:e.message,valid:i.test(d.value)};case!e.ipv4&&e.ipv6:return{message:d.l10n?e.message||d.l10n.ip.ipv6:e.message,valid:t.test(d.value)};case e.ipv4&&e.ipv6:default:return{message:d.l10n?e.message||d.l10n.ip.default:e.message,valid:i.test(d.value)||t.test(d.value)}}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.js new file mode 100644 index 0000000..5ed9279 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.js @@ -0,0 +1,96 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.isbn = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function isbn() { + return { + /** + * Return true if the input value is a valid ISBN 10 or ISBN 13 number + * @see http://en.wikipedia.org/wiki/International_Standard_Book_Number + */ + validate: function (input) { + if (input.value === '') { + return { + meta: { + type: null, + }, + valid: true, + }; + } + // http://en.wikipedia.org/wiki/International_Standard_Book_Number#Overview + // Groups are separated by a hyphen or a space + var tpe; + switch (true) { + case /^\d{9}[\dX]$/.test(input.value): + case input.value.length === 13 && /^(\d+)-(\d+)-(\d+)-([\dX])$/.test(input.value): + case input.value.length === 13 && /^(\d+)\s(\d+)\s(\d+)\s([\dX])$/.test(input.value): + tpe = 'ISBN10'; + break; + case /^(978|979)\d{9}[\dX]$/.test(input.value): + case input.value.length === 17 && /^(978|979)-(\d+)-(\d+)-(\d+)-([\dX])$/.test(input.value): + case input.value.length === 17 && /^(978|979)\s(\d+)\s(\d+)\s(\d+)\s([\dX])$/.test(input.value): + tpe = 'ISBN13'; + break; + default: + return { + meta: { + type: null, + }, + valid: false, + }; + } + // Replace all special characters except digits and X + var chars = input.value.replace(/[^0-9X]/gi, '').split(''); + var length = chars.length; + var sum = 0; + var i; + var checksum; + switch (tpe) { + case 'ISBN10': + sum = 0; + for (i = 0; i < length - 1; i++) { + sum += parseInt(chars[i], 10) * (10 - i); + } + checksum = 11 - (sum % 11); + if (checksum === 11) { + checksum = 0; + } + else if (checksum === 10) { + checksum = 'X'; + } + return { + meta: { + type: tpe, + }, + valid: "".concat(checksum) === chars[length - 1], + }; + case 'ISBN13': + sum = 0; + for (i = 0; i < length - 1; i++) { + sum += i % 2 === 0 ? parseInt(chars[i], 10) : parseInt(chars[i], 10) * 3; + } + checksum = 10 - (sum % 10); + if (checksum === 10) { + checksum = '0'; + } + return { + meta: { + type: tpe, + }, + valid: "".concat(checksum) === chars[length - 1], + }; + } + }, + }; + } + + return isbn; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.min.js new file mode 100644 index 0000000..8af70b6 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isbn/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-isbn + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.isbn=t())}(this,(function(){"use strict";return function(){return{validate:function(e){if(""===e.value)return{meta:{type:null},valid:!0};var t;switch(!0){case/^\d{9}[\dX]$/.test(e.value):case 13===e.value.length&&/^(\d+)-(\d+)-(\d+)-([\dX])$/.test(e.value):case 13===e.value.length&&/^(\d+)\s(\d+)\s(\d+)\s([\dX])$/.test(e.value):t="ISBN10";break;case/^(978|979)\d{9}[\dX]$/.test(e.value):case 17===e.value.length&&/^(978|979)-(\d+)-(\d+)-(\d+)-([\dX])$/.test(e.value):case 17===e.value.length&&/^(978|979)\s(\d+)\s(\d+)\s(\d+)\s([\dX])$/.test(e.value):t="ISBN13";break;default:return{meta:{type:null},valid:!1}}var a,d,l=e.value.replace(/[^0-9X]/gi,"").split(""),n=l.length,s=0;switch(t){case"ISBN10":for(s=0,a=0;a + */ + function isin() { + // Available country codes + // See http://isin.net/country-codes/ + var COUNTRY_CODES = 'AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|' + + 'BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CD|CK|CR|CI|HR|CU|CW|CY|CZ|DK|DJ|DM|DO|EC|EG|' + + 'SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|' + + 'IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KP|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|' + + 'MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|' + + 'PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|' + + 'SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|US|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|' + + 'YE|ZM|ZW'; + return { + /** + * Validate an ISIN (International Securities Identification Number) + * @see http://en.wikipedia.org/wiki/International_Securities_Identifying_Number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var v = input.value.toUpperCase(); + var regex = new RegExp('^(' + COUNTRY_CODES + ')[0-9A-Z]{10}$'); + if (!regex.test(input.value)) { + return { valid: false }; + } + var length = v.length; + var converted = ''; + var i; + // Convert letters to number + for (i = 0; i < length - 1; i++) { + var c = v.charCodeAt(i); + converted += c > 57 ? (c - 55).toString() : v.charAt(i); + } + var digits = ''; + var n = converted.length; + var group = n % 2 !== 0 ? 0 : 1; + for (i = 0; i < n; i++) { + digits += parseInt(converted[i], 10) * (i % 2 === group ? 2 : 1) + ''; + } + var sum = 0; + for (i = 0; i < digits.length; i++) { + sum += parseInt(digits.charAt(i), 10); + } + sum = (10 - (sum % 10)) % 10; + return { valid: "".concat(sum) === v.charAt(length - 1) }; + }, + }; + } + + return isin; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isin/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isin/index.min.js new file mode 100644 index 0000000..d0c0cd8 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-isin/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-isin + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.isin=e())}(this,(function(){"use strict";return function(){return{validate:function(t){if(""===t.value)return{valid:!0};var e=t.value.toUpperCase();if(!new RegExp("^(AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CD|CK|CR|CI|HR|CU|CW|CY|CZ|DK|DJ|DM|DO|EC|EG|SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KP|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|US|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|YE|ZM|ZW)[0-9A-Z]{10}$").test(t.value))return{valid:!1};var a,M=e.length,r="";for(a=0;a57?(i-55).toString():e.charAt(a)}var n="",o=r.length,S=o%2!=0?0:1;for(a=0;a + */ + function ismn() { + return { + /** + * Validate ISMN (International Standard Music Number) + * @see http://en.wikipedia.org/wiki/International_Standard_Music_Number + */ + validate: function (input) { + if (input.value === '') { + return { + meta: null, + valid: true, + }; + } + // Groups are separated by a hyphen or a space + var tpe; + switch (true) { + case /^M\d{9}$/.test(input.value): + case /^M-\d{4}-\d{4}-\d{1}$/.test(input.value): + case /^M\s\d{4}\s\d{4}\s\d{1}$/.test(input.value): + tpe = 'ISMN10'; + break; + case /^9790\d{9}$/.test(input.value): + case /^979-0-\d{4}-\d{4}-\d{1}$/.test(input.value): + case /^979\s0\s\d{4}\s\d{4}\s\d{1}$/.test(input.value): + tpe = 'ISMN13'; + break; + default: + return { + meta: null, + valid: false, + }; + } + var v = input.value; + if ('ISMN10' === tpe) { + v = "9790".concat(v.substr(1)); + } + // Replace all special characters except digits + v = v.replace(/[^0-9]/gi, ''); + var sum = 0; + var length = v.length; + var weight = [1, 3]; + for (var i = 0; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i % 2]; + } + sum = (10 - (sum % 10)) % 10; + return { + meta: { + type: tpe, + }, + valid: "".concat(sum) === v.charAt(length - 1), + }; + }, + }; + } + + return ismn; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ismn/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ismn/index.min.js new file mode 100644 index 0000000..81b1a0b --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-ismn/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-ismn + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.ismn=t())}(this,(function(){"use strict";return function(){return{validate:function(e){if(""===e.value)return{meta:null,valid:!0};var t;switch(!0){case/^M\d{9}$/.test(e.value):case/^M-\d{4}-\d{4}-\d{1}$/.test(e.value):case/^M\s\d{4}\s\d{4}\s\d{1}$/.test(e.value):t="ISMN10";break;case/^9790\d{9}$/.test(e.value):case/^979-0-\d{4}-\d{4}-\d{1}$/.test(e.value):case/^979\s0\s\d{4}\s\d{4}\s\d{1}$/.test(e.value):t="ISMN13";break;default:return{meta:null,valid:!1}}var a=e.value;"ISMN10"===t&&(a="9790".concat(a.substr(1)));for(var d=0,i=(a=a.replace(/[^0-9]/gi,"")).length,s=[1,3],l=0;l + */ + function issn() { + return { + /** + * Validate ISSN (International Standard Serial Number) + * @see http://en.wikipedia.org/wiki/International_Standard_Serial_Number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + // Groups are separated by a hyphen or a space + if (!/^\d{4}-\d{3}[\dX]$/.test(input.value)) { + return { valid: false }; + } + // Replace all special characters except digits and X + var chars = input.value.replace(/[^0-9X]/gi, '').split(''); + var length = chars.length; + var sum = 0; + if (chars[7] === 'X') { + chars[7] = '10'; + } + for (var i = 0; i < length; i++) { + sum += parseInt(chars[i], 10) * (8 - i); + } + return { valid: sum % 11 === 0 }; + }, + }; + } + + return issn; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-issn/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-issn/index.min.js new file mode 100644 index 0000000..b8a80d1 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-issn/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-issn + * @version 2.4.0 + */ + +!function(i,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.issn=e())}(this,(function(){"use strict";return function(){return{validate:function(i){if(""===i.value)return{valid:!0};if(!/^\d{4}-\d{3}[\dX]$/.test(i.value))return{valid:!1};var e=i.value.replace(/[^0-9X]/gi,"").split(""),t=e.length,a=0;"X"===e[7]&&(e[7]="10");for(var n=0;n + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function lessThan() { + return { + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { inclusive: true, message: '' }, removeUndefined(input.options)); + var maxValue = parseFloat("".concat(opts.max).replace(',', '.')); + return opts.inclusive + ? { + message: format(input.l10n ? opts.message || input.l10n.lessThan.default : opts.message, "".concat(maxValue)), + valid: parseFloat(input.value) <= maxValue, + } + : { + message: format(input.l10n ? opts.message || input.l10n.lessThan.notInclusive : opts.message, "".concat(maxValue)), + valid: parseFloat(input.value) < maxValue, + }; + }, + }; + } + + return lessThan; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-less-than/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-less-than/index.min.js new file mode 100644 index 0000000..68cce42 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-less-than/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-less-than + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.lessThan=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.format,i=e.utils.removeUndefined;return function(){return{validate:function(e){if(""===e.value)return{valid:!0};var o=Object.assign({},{inclusive:!0,message:""},i(e.options)),n=parseFloat("".concat(o.max).replace(",","."));return o.inclusive?{message:a(e.l10n?o.message||e.l10n.lessThan.default:o.message,"".concat(n)),valid:parseFloat(e.value)<=n}:{message:a(e.l10n?o.message||e.l10n.lessThan.notInclusive:o.message,"".concat(n)),valid:parseFloat(e.value) + */ + function mac() { + return { + /** + * Return true if the input value is a MAC address. + */ + validate: function (input) { + return { + valid: input.value === '' || + /^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$/.test(input.value) || + /^([0-9A-Fa-f]{4}\.){2}([0-9A-Fa-f]{4})$/.test(input.value), + }; + }, + }; + } + + return mac; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-mac/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-mac/index.min.js new file mode 100644 index 0000000..551abb5 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-mac/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-mac + * @version 2.4.0 + */ + +!function(t,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a():"function"==typeof define&&define.amd?define(a):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.mac=a())}(this,(function(){"use strict";return function(){return{validate:function(t){return{valid:""===t.value||/^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$/.test(t.value)||/^([0-9A-Fa-f]{4}\.){2}([0-9A-Fa-f]{4})$/.test(t.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.js new file mode 100644 index 0000000..b384246 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.js @@ -0,0 +1,64 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.meid = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn = core.algorithms.luhn; + function meid() { + return { + /** + * Validate MEID (Mobile Equipment Identifier) + * @see http://en.wikipedia.org/wiki/Mobile_equipment_identifier + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var v = input.value; + if (/^[0-9A-F]{15}$/i.test(v) || + /^[0-9A-F]{2}[- ][0-9A-F]{6}[- ][0-9A-F]{6}[- ][0-9A-F]$/i.test(v) || + /^\d{19}$/.test(v) || + /^\d{5}[- ]\d{5}[- ]\d{4}[- ]\d{4}[- ]\d$/.test(v)) { + var cd = v.charAt(v.length - 1).toUpperCase(); + v = v.replace(/[- ]/g, ''); + if (v.match(/^\d*$/i)) { + return { valid: luhn(v) }; + } + v = v.slice(0, -1); + var checkDigit = ''; + var i = void 0; + for (i = 1; i <= 13; i += 2) { + checkDigit += (parseInt(v.charAt(i), 16) * 2).toString(16); + } + var sum = 0; + for (i = 0; i < checkDigit.length; i++) { + sum += parseInt(checkDigit.charAt(i), 16); + } + return { + valid: sum % 10 === 0 + ? cd === '0' + : // Subtract it from the next highest 10s number (64 goes to 70) and subtract the sum + // Double it and turn it into a hex char + cd === ((Math.floor((sum + 10) / 10) * 10 - sum) * 2).toString(16).toUpperCase(), + }; + } + if (/^[0-9A-F]{14}$/i.test(v) || + /^[0-9A-F]{2}[- ][0-9A-F]{6}[- ][0-9A-F]{6}$/i.test(v) || + /^\d{18}$/.test(v) || + /^\d{5}[- ]\d{5}[- ]\d{4}[- ]\d{4}$/.test(v)) { + return { valid: true }; + } + return { valid: false }; + }, + }; + } + + return meid; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.min.js new file mode 100644 index 0000000..506cf6e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-meid/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-meid + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.meid=e(t.FormValidation))}(this,(function(t){"use strict";var e=t.algorithms.luhn;return function(){return{validate:function(t){if(""===t.value)return{valid:!0};var i=t.value;if(/^[0-9A-F]{15}$/i.test(i)||/^[0-9A-F]{2}[- ][0-9A-F]{6}[- ][0-9A-F]{6}[- ][0-9A-F]$/i.test(i)||/^\d{19}$/.test(i)||/^\d{5}[- ]\d{5}[- ]\d{4}[- ]\d{4}[- ]\d$/.test(i)){var a=i.charAt(i.length-1).toUpperCase();if((i=i.replace(/[- ]/g,"")).match(/^\d*$/i))return{valid:e(i)};i=i.slice(0,-1);var r="",o=void 0;for(o=1;o<=13;o+=2)r+=(2*parseInt(i.charAt(o),16)).toString(16);var d=0;for(o=0;o + */ + function notEmpty() { + return { + validate: function (input) { + var trim = !!input.options && !!input.options.trim; + var value = input.value; + return { + valid: (!trim && value !== '') || (trim && value !== '' && value.trim() !== ''), + }; + }, + }; + } + + return notEmpty; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-not-empty/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-not-empty/index.min.js new file mode 100644 index 0000000..79d9042 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-not-empty/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-not-empty + * @version 2.4.0 + */ + +!function(o,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.validators=o.FormValidation.validators||{},o.FormValidation.validators.notEmpty=i())}(this,(function(){"use strict";return function(){return{validate:function(o){var i=!!o.options&&!!o.options.trim,t=o.value;return{valid:!i&&""!==t||i&&""!==t&&""!==t.trim()}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.js new file mode 100644 index 0000000..9fac922 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.js @@ -0,0 +1,54 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.numeric = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + function numeric() { + return { + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { + decimalSeparator: '.', + thousandsSeparator: '', + }, removeUndefined(input.options)); + var v = "".concat(input.value); + // Support preceding zero numbers such as .5, -.5 + if (v.substr(0, 1) === opts.decimalSeparator) { + v = "0".concat(opts.decimalSeparator).concat(v.substr(1)); + } + else if (v.substr(0, 2) === "-".concat(opts.decimalSeparator)) { + v = "-0".concat(opts.decimalSeparator).concat(v.substr(2)); + } + var decimalSeparator = opts.decimalSeparator === '.' ? '\\.' : opts.decimalSeparator; + var thousandsSeparator = opts.thousandsSeparator === '.' ? '\\.' : opts.thousandsSeparator; + var testRegexp = new RegExp("^-?[0-9]{1,3}(".concat(thousandsSeparator, "[0-9]{3})*(").concat(decimalSeparator, "[0-9]+)?$")); + var thousandsReplacer = new RegExp(thousandsSeparator, 'g'); + if (!testRegexp.test(v)) { + return { valid: false }; + } + // Replace thousands separator with blank + if (thousandsSeparator) { + v = v.replace(thousandsReplacer, ''); + } + // Replace decimal separator with a dot + if (decimalSeparator) { + v = v.replace(decimalSeparator, '.'); + } + var n = parseFloat(v); + return { valid: !isNaN(n) && isFinite(n) }; + }, + }; + } + + return numeric; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.min.js new file mode 100644 index 0000000..5ad968e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-numeric/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-numeric + * @version 2.4.0 + */ + +!function(a,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((a="undefined"!=typeof globalThis?globalThis:a||self).FormValidation=a.FormValidation||{},a.FormValidation.validators=a.FormValidation.validators||{},a.FormValidation.validators.numeric=e(a.FormValidation))}(this,(function(a){"use strict";var e=a.utils.removeUndefined;return function(){return{validate:function(a){if(""===a.value)return{valid:!0};var t=Object.assign({},{decimalSeparator:".",thousandsSeparator:""},e(a.options)),o="".concat(a.value);o.substr(0,1)===t.decimalSeparator?o="0".concat(t.decimalSeparator).concat(o.substr(1)):o.substr(0,2)==="-".concat(t.decimalSeparator)&&(o="-0".concat(t.decimalSeparator).concat(o.substr(2)));var r="."===t.decimalSeparator?"\\.":t.decimalSeparator,i="."===t.thousandsSeparator?"\\.":t.thousandsSeparator,n=new RegExp("^-?[0-9]{1,3}(".concat(i,"[0-9]{3})*(").concat(r,"[0-9]+)?$")),d=new RegExp(i,"g");if(!n.test(o))return{valid:!1};i&&(o=o.replace(d,"")),r&&(o=o.replace(r,"."));var c=parseFloat(o);return{valid:!isNaN(c)&&isFinite(c)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.js new file mode 100644 index 0000000..166096a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.js @@ -0,0 +1,188 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.phone = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function phone() { + // The supported countries + var COUNTRY_CODES = [ + 'AE', + 'BG', + 'BR', + 'CN', + 'CZ', + 'DE', + 'DK', + 'ES', + 'FR', + 'GB', + 'IN', + 'MA', + 'NL', + 'PK', + 'RO', + 'RU', + 'SK', + 'TH', + 'US', + 'VE', + ]; + return { + /** + * Return true if the input value contains a valid phone number for the country + * selected in the options + */ + validate: function (input) { + if (input.value === '') { + return { + valid: true, + }; + } + var opts = Object.assign({}, { message: '' }, removeUndefined(input.options)); + var v = input.value.trim(); + var country = v.substr(0, 2); + if ('function' === typeof opts.country) { + country = opts.country.call(this); + } + else { + country = opts.country; + } + if (!country || COUNTRY_CODES.indexOf(country.toUpperCase()) === -1) { + return { + valid: true, + }; + } + var isValid = true; + switch (country.toUpperCase()) { + case 'AE': + // http://regexr.com/39tak + isValid = + /^(((\+|00)?971[\s.-]?(\(0\)[\s.-]?)?|0)(\(5(0|2|5|6)\)|5(0|2|5|6)|2|3|4|6|7|9)|60)([\s.-]?[0-9]){7}$/.test(v); + break; + case 'BG': + // https://regex101.com/r/yE6vN4/1 + // See http://en.wikipedia.org/wiki/Telephone_numbers_in_Bulgaria + isValid = + /^(0|359|00)(((700|900)[0-9]{5}|((800)[0-9]{5}|(800)[0-9]{4}))|(87|88|89)([0-9]{7})|((2[0-9]{7})|(([3-9][0-9])(([0-9]{6})|([0-9]{5})))))$/.test(v.replace(/\+|\s|-|\/|\(|\)/gi, '')); + break; + case 'BR': + // http://regexr.com/399m1 + isValid = + /^(([\d]{4}[-.\s]{1}[\d]{2,3}[-.\s]{1}[\d]{2}[-.\s]{1}[\d]{2})|([\d]{4}[-.\s]{1}[\d]{3}[-.\s]{1}[\d]{4})|((\(?\+?[0-9]{2}\)?\s?)?(\(?\d{2}\)?\s?)?\d{4,5}[-.\s]?\d{4}))$/.test(v); + break; + case 'CN': + // http://regexr.com/39dq4 + isValid = + /^((00|\+)?(86(?:-| )))?((\d{11})|(\d{3}[- ]{1}\d{4}[- ]{1}\d{4})|((\d{2,4}[- ]){1}(\d{7,8}|(\d{3,4}[- ]{1}\d{4}))([- ]{1}\d{1,4})?))$/.test(v); + break; + case 'CZ': + // http://regexr.com/39hhl + isValid = /^(((00)([- ]?)|\+)(420)([- ]?))?((\d{3})([- ]?)){2}(\d{3})$/.test(v); + break; + case 'DE': + // http://regexr.com/39pkg + isValid = + /^(((((((00|\+)49[ \-/]?)|0)[1-9][0-9]{1,4})[ \-/]?)|((((00|\+)49\()|\(0)[1-9][0-9]{1,4}\)[ \-/]?))[0-9]{1,7}([ \-/]?[0-9]{1,5})?)$/.test(v); + break; + case 'DK': + // Mathing DK phone numbers with country code in 1 of 3 formats and an + // 8 digit phone number not starting with a 0 or 1. Can have 1 space + // between each character except inside the country code. + // http://regex101.com/r/sS8fO4/1 + isValid = /^(\+45|0045|\(45\))?\s?[2-9](\s?\d){7}$/.test(v); + break; + case 'ES': + // http://regex101.com/r/rB9mA9/1 + // Telephone numbers in Spain go like this: + // 9: Landline phones and special prefixes. + // 6, 7: Mobile phones. + // 5: VoIP lines. + // 8: Premium-rate services. + // There are also special 5-digit and 3-digit numbers, but + // maybe it would be overkill to include them all. + isValid = /^(?:(?:(?:\+|00)34\D?))?(?:5|6|7|8|9)(?:\d\D?){8}$/.test(v); + break; + case 'FR': + // http://regexr.com/39a2p + isValid = /^(?:(?:(?:\+|00)33[ ]?(?:\(0\)[ ]?)?)|0){1}[1-9]{1}([ .-]?)(?:\d{2}\1?){3}\d{2}$/.test(v); + break; + case 'GB': + // http://aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers#Match_GB_telephone_number_in_any_format + // http://regexr.com/38uhv + isValid = + /^\(?(?:(?:0(?:0|11)\)?[\s-]?\(?|\+)44\)?[\s-]?\(?(?:0\)?[\s-]?\(?)?|0)(?:\d{2}\)?[\s-]?\d{4}[\s-]?\d{4}|\d{3}\)?[\s-]?\d{3}[\s-]?\d{3,4}|\d{4}\)?[\s-]?(?:\d{5}|\d{3}[\s-]?\d{3})|\d{5}\)?[\s-]?\d{4,5}|8(?:00[\s-]?11[\s-]?11|45[\s-]?46[\s-]?4\d))(?:(?:[\s-]?(?:x|ext\.?\s?|#)\d+)?)$/.test(v); + break; + case 'IN': + // http://stackoverflow.com/questions/18351553/regular-expression-validation-for-indian-phone-number-and-mobile-number + // http://regex101.com/r/qL6eZ5/1 + // May begin with +91. Supports mobile and land line numbers + isValid = /((\+?)((0[ -]+)*|(91 )*)(\d{12}|\d{10}))|\d{5}([- ]*)\d{6}/.test(v); + break; + case 'MA': + // http://en.wikipedia.org/wiki/Telephone_numbers_in_Morocco + // http://regexr.com/399n8 + isValid = + /^(?:(?:(?:\+|00)212[\s]?(?:[\s]?\(0\)[\s]?)?)|0){1}(?:5[\s.-]?[2-3]|6[\s.-]?[13-9]){1}[0-9]{1}(?:[\s.-]?\d{2}){3}$/.test(v); + break; + case 'NL': + // http://en.wikipedia.org/wiki/Telephone_numbers_in_the_Netherlands + // http://regexr.com/3aevr + isValid = + /^((\+|00(\s|\s?-\s?)?)31(\s|\s?-\s?)?(\(0\)[-\s]?)?|0)[1-9]((\s|\s?-\s?)?[0-9])((\s|\s?-\s?)?[0-9])((\s|\s?-\s?)?[0-9])\s?[0-9]\s?[0-9]\s?[0-9]\s?[0-9]\s?[0-9]$/gm.test(v); + break; + case 'PK': + // http://regex101.com/r/yH8aV9/2 + isValid = /^0?3[0-9]{2}[0-9]{7}$/.test(v); + break; + case 'RO': + // All mobile network and land line + // http://regexr.com/39fv1 + isValid = + /^(\+4|)?(07[0-8]{1}[0-9]{1}|02[0-9]{2}|03[0-9]{2}){1}?(\s|\.|-)?([0-9]{3}(\s|\.|-|)){2}$/g.test(v); + break; + case 'RU': + // http://regex101.com/r/gW7yT5/5 + isValid = /^((8|\+7|007)[-./ ]?)?([(/.]?\d{3}[)/.]?[-./ ]?)?[\d\-./ ]{7,10}$/g.test(v); + break; + case 'SK': + // http://regexr.com/3a95f + isValid = /^(((00)([- ]?)|\+)(421)([- ]?))?((\d{3})([- ]?)){2}(\d{3})$/.test(v); + break; + case 'TH': + // http://regex101.com/r/vM5mZ4/2 + isValid = /^0\(?([6|8-9]{2})*-([0-9]{3})*-([0-9]{4})$/.test(v); + break; + case 'VE': + // http://regex101.com/r/eM2yY0/6 + isValid = + /^0(?:2(?:12|4[0-9]|5[1-9]|6[0-9]|7[0-8]|8[1-35-8]|9[1-5]|3[45789])|4(?:1[246]|2[46]))\d{7}$/.test(v); + break; + case 'US': + default: + // Make sure US phone numbers have 10 digits + // May start with 1, +1, or 1-; should discard + // Area code may be delimited with (), & sections may be delimited with . or - + // http://regexr.com/38mqi + isValid = /^(?:(1-?)|(\+1 ?))?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}$/.test(v); + break; + } + return { + message: format(input.l10n && input.l10n.phone ? opts.message || input.l10n.phone.country : opts.message, input.l10n && input.l10n.phone && input.l10n.phone.countries + ? input.l10n.phone.countries[country] + : country), + valid: isValid, + }; + }, + }; + } + + return phone; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.min.js new file mode 100644 index 0000000..7092692 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-phone/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-phone + * @version 2.4.0 + */ + +!function(s,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((s="undefined"!=typeof globalThis?globalThis:s||self).FormValidation=s.FormValidation||{},s.FormValidation.validators=s.FormValidation.validators||{},s.FormValidation.validators.phone=e(s.FormValidation))}(this,(function(s){"use strict";var e=s.utils.format,t=s.utils.removeUndefined;return function(){var s=["AE","BG","BR","CN","CZ","DE","DK","ES","FR","GB","IN","MA","NL","PK","RO","RU","SK","TH","US","VE"];return{validate:function(a){if(""===a.value)return{valid:!0};var d=Object.assign({},{message:""},t(a.options)),r=a.value.trim(),o=r.substr(0,2);if(!(o="function"==typeof d.country?d.country.call(this):d.country)||-1===s.indexOf(o.toUpperCase()))return{valid:!0};var n=!0;switch(o.toUpperCase()){case"AE":n=/^(((\+|00)?971[\s.-]?(\(0\)[\s.-]?)?|0)(\(5(0|2|5|6)\)|5(0|2|5|6)|2|3|4|6|7|9)|60)([\s.-]?[0-9]){7}$/.test(r);break;case"BG":n=/^(0|359|00)(((700|900)[0-9]{5}|((800)[0-9]{5}|(800)[0-9]{4}))|(87|88|89)([0-9]{7})|((2[0-9]{7})|(([3-9][0-9])(([0-9]{6})|([0-9]{5})))))$/.test(r.replace(/\+|\s|-|\/|\(|\)/gi,""));break;case"BR":n=/^(([\d]{4}[-.\s]{1}[\d]{2,3}[-.\s]{1}[\d]{2}[-.\s]{1}[\d]{2})|([\d]{4}[-.\s]{1}[\d]{3}[-.\s]{1}[\d]{4})|((\(?\+?[0-9]{2}\)?\s?)?(\(?\d{2}\)?\s?)?\d{4,5}[-.\s]?\d{4}))$/.test(r);break;case"CN":n=/^((00|\+)?(86(?:-| )))?((\d{11})|(\d{3}[- ]{1}\d{4}[- ]{1}\d{4})|((\d{2,4}[- ]){1}(\d{7,8}|(\d{3,4}[- ]{1}\d{4}))([- ]{1}\d{1,4})?))$/.test(r);break;case"CZ":n=/^(((00)([- ]?)|\+)(420)([- ]?))?((\d{3})([- ]?)){2}(\d{3})$/.test(r);break;case"DE":n=/^(((((((00|\+)49[ \-/]?)|0)[1-9][0-9]{1,4})[ \-/]?)|((((00|\+)49\()|\(0)[1-9][0-9]{1,4}\)[ \-/]?))[0-9]{1,7}([ \-/]?[0-9]{1,5})?)$/.test(r);break;case"DK":n=/^(\+45|0045|\(45\))?\s?[2-9](\s?\d){7}$/.test(r);break;case"ES":n=/^(?:(?:(?:\+|00)34\D?))?(?:5|6|7|8|9)(?:\d\D?){8}$/.test(r);break;case"FR":n=/^(?:(?:(?:\+|00)33[ ]?(?:\(0\)[ ]?)?)|0){1}[1-9]{1}([ .-]?)(?:\d{2}\1?){3}\d{2}$/.test(r);break;case"GB":n=/^\(?(?:(?:0(?:0|11)\)?[\s-]?\(?|\+)44\)?[\s-]?\(?(?:0\)?[\s-]?\(?)?|0)(?:\d{2}\)?[\s-]?\d{4}[\s-]?\d{4}|\d{3}\)?[\s-]?\d{3}[\s-]?\d{3,4}|\d{4}\)?[\s-]?(?:\d{5}|\d{3}[\s-]?\d{3})|\d{5}\)?[\s-]?\d{4,5}|8(?:00[\s-]?11[\s-]?11|45[\s-]?46[\s-]?4\d))(?:(?:[\s-]?(?:x|ext\.?\s?|#)\d+)?)$/.test(r);break;case"IN":n=/((\+?)((0[ -]+)*|(91 )*)(\d{12}|\d{10}))|\d{5}([- ]*)\d{6}/.test(r);break;case"MA":n=/^(?:(?:(?:\+|00)212[\s]?(?:[\s]?\(0\)[\s]?)?)|0){1}(?:5[\s.-]?[2-3]|6[\s.-]?[13-9]){1}[0-9]{1}(?:[\s.-]?\d{2}){3}$/.test(r);break;case"NL":n=/^((\+|00(\s|\s?-\s?)?)31(\s|\s?-\s?)?(\(0\)[-\s]?)?|0)[1-9]((\s|\s?-\s?)?[0-9])((\s|\s?-\s?)?[0-9])((\s|\s?-\s?)?[0-9])\s?[0-9]\s?[0-9]\s?[0-9]\s?[0-9]\s?[0-9]$/gm.test(r);break;case"PK":n=/^0?3[0-9]{2}[0-9]{7}$/.test(r);break;case"RO":n=/^(\+4|)?(07[0-8]{1}[0-9]{1}|02[0-9]{2}|03[0-9]{2}){1}?(\s|\.|-)?([0-9]{3}(\s|\.|-|)){2}$/g.test(r);break;case"RU":n=/^((8|\+7|007)[-./ ]?)?([(/.]?\d{3}[)/.]?[-./ ]?)?[\d\-./ ]{7,10}$/g.test(r);break;case"SK":n=/^(((00)([- ]?)|\+)(421)([- ]?))?((\d{3})([- ]?)){2}(\d{3})$/.test(r);break;case"TH":n=/^0\(?([6|8-9]{2})*-([0-9]{3})*-([0-9]{4})$/.test(r);break;case"VE":n=/^0(?:2(?:12|4[0-9]|5[1-9]|6[0-9]|7[0-8]|8[1-35-8]|9[1-5]|3[45789])|4(?:1[246]|2[46]))\d{7}$/.test(r);break;default:n=/^(?:(1-?)|(\+1 ?))?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}$/.test(r)}return{message:e(a.l10n&&a.l10n.phone?d.message||a.l10n.phone.country:d.message,a.l10n&&a.l10n.phone&&a.l10n.phone.countries?a.l10n.phone.countries[o]:o),valid:n}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.js new file mode 100644 index 0000000..92eb568 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.js @@ -0,0 +1,51 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.promise = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var call = core.utils.call; + function promise() { + return { + /** + * The following example demonstrates how to use a promise validator to requires both width and height + * of an image to be less than 300 px + * ``` + * const p = new Promise((resolve, reject) => { + * const img = new Image() + * img.addEventListener('load', function() { + * const w = this.width + * const h = this.height + * resolve({ + * valid: w <= 300 && h <= 300 + * meta: { + * source: img.src // So, you can reuse it later if you want + * } + * }) + * }) + * img.addEventListener('error', function() { + * reject({ + * valid: false, + * message: Please choose an image + * }) + * }) + * }) + * ``` + * + * @param input + * @return {Promise} + */ + validate: function (input) { + return call(input.options.promise, [input]); + }, + }; + } + + return promise; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.min.js new file mode 100644 index 0000000..ce2e4ca --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-promise/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-promise + * @version 2.4.0 + */ + +!function(o,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],i):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.validators=o.FormValidation.validators||{},o.FormValidation.validators.promise=i(o.FormValidation))}(this,(function(o){"use strict";var i=o.utils.call;return function(){return{validate:function(o){return i(o.options.promise,[o])}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.js new file mode 100644 index 0000000..f3a2985 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.js @@ -0,0 +1,36 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.regexp = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function regexp() { + return { + /** + * Check if the element value matches given regular expression + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var reg = input.options.regexp; + if (reg instanceof RegExp) { + return { valid: reg.test(input.value) }; + } + else { + var pattern = reg.toString(); + var exp = input.options.flags ? new RegExp(pattern, input.options.flags) : new RegExp(pattern); + return { valid: exp.test(input.value) }; + } + }, + }; + } + + return regexp; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.min.js new file mode 100644 index 0000000..958390a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-regexp/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-regexp + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.regexp=t())}(this,(function(){"use strict";return function(){return{validate:function(e){if(""===e.value)return{valid:!0};var t=e.options.regexp;if(t instanceof RegExp)return{valid:t.test(e.value)};var i=t.toString();return{valid:(e.options.flags?new RegExp(i,e.options.flags):new RegExp(i)).test(e.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.js new file mode 100644 index 0000000..b462584 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.js @@ -0,0 +1,67 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.remote = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var fetch = core.utils.fetch, removeUndefined = core.utils.removeUndefined; + function remote() { + var DEFAULT_OPTIONS = { + crossDomain: false, + data: {}, + headers: {}, + method: 'GET', + validKey: 'valid', + }; + return { + validate: function (input) { + if (input.value === '') { + return Promise.resolve({ + valid: true, + }); + } + var opts = Object.assign({}, DEFAULT_OPTIONS, removeUndefined(input.options)); + var data = opts.data; + // Support dynamic data + if ('function' === typeof opts.data) { + data = opts.data.call(this, input); + } + // Parse string data from HTML5 attribute + if ('string' === typeof data) { + data = JSON.parse(data); + } + data[opts.name || input.field] = input.value; + // Support dynamic url + var url = 'function' === typeof opts.url + ? opts.url.call(this, input) + : opts.url; + return fetch(url, { + crossDomain: opts.crossDomain, + headers: opts.headers, + method: opts.method, + params: data, + }) + .then(function (response) { + return Promise.resolve({ + message: response['message'], + meta: response, + valid: "".concat(response[opts.validKey]) === 'true', + }); + }) + .catch(function (_reason) { + return Promise.reject({ + valid: false, + }); + }); + }, + }; + } + + return remote; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.min.js new file mode 100644 index 0000000..4b12e01 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-remote/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-remote + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.remote=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.fetch,o=e.utils.removeUndefined;return function(){var e={crossDomain:!1,data:{},headers:{},method:"GET",validKey:"valid"};return{validate:function(t){if(""===t.value)return Promise.resolve({valid:!0});var i=Object.assign({},e,o(t.options)),r=i.data;"function"==typeof i.data&&(r=i.data.call(this,t)),"string"==typeof r&&(r=JSON.parse(r)),r[i.name||t.field]=t.value;var n="function"==typeof i.url?i.url.call(this,t):i.url;return a(n,{crossDomain:i.crossDomain,headers:i.headers,method:i.method,params:r}).then((function(e){return Promise.resolve({message:e.message,meta:e,valid:"true"==="".concat(e[i.validKey])})})).catch((function(e){return Promise.reject({valid:!1})}))}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.js new file mode 100644 index 0000000..e66683e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.js @@ -0,0 +1,39 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.rtn = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function rtn() { + return { + /** + * Validate a RTN (Routing transit number) + * @see http://en.wikipedia.org/wiki/Routing_transit_number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + if (!/^\d{9}$/.test(input.value)) { + return { valid: false }; + } + var sum = 0; + for (var i = 0; i < input.value.length; i += 3) { + sum += + parseInt(input.value.charAt(i), 10) * 3 + + parseInt(input.value.charAt(i + 1), 10) * 7 + + parseInt(input.value.charAt(i + 2), 10); + } + return { valid: sum !== 0 && sum % 10 === 0 }; + }, + }; + } + + return rtn; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.min.js new file mode 100644 index 0000000..08c658a --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-rtn/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-rtn + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.rtn=e())}(this,(function(){"use strict";return function(){return{validate:function(t){if(""===t.value)return{valid:!0};if(!/^\d{9}$/.test(t.value))return{valid:!1};for(var e=0,a=0;a + */ + function sedol() { + return { + /** + * Validate a SEDOL (Stock Exchange Daily Official List) + * @see http://en.wikipedia.org/wiki/SEDOL + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var v = input.value.toUpperCase(); + if (!/^[0-9A-Z]{7}$/.test(v)) { + return { valid: false }; + } + var weight = [1, 3, 1, 7, 3, 9, 1]; + var length = v.length; + var sum = 0; + for (var i = 0; i < length - 1; i++) { + sum += weight[i] * parseInt(v.charAt(i), 36); + } + sum = (10 - (sum % 10)) % 10; + return { valid: "".concat(sum) === v.charAt(length - 1) }; + }, + }; + } + + return sedol; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-sedol/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-sedol/index.min.js new file mode 100644 index 0000000..a091f21 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-sedol/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-sedol + * @version 2.4.0 + */ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.sedol=e())}(this,(function(){"use strict";return function(){return{validate:function(t){if(""===t.value)return{valid:!0};var e=t.value.toUpperCase();if(!/^[0-9A-Z]{7}$/.test(e))return{valid:!1};for(var a=[1,3,1,7,3,9,1],i=e.length,o=0,n=0;n + */ + var luhn = core.algorithms.luhn; + function siren() { + return { + /** + * Check if a string is a siren number + */ + validate: function (input) { + return { + valid: input.value === '' || (/^\d{9}$/.test(input.value) && luhn(input.value)), + }; + }, + }; + } + + return siren; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siren/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siren/index.min.js new file mode 100644 index 0000000..f33155d --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siren/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-siren + * @version 2.4.0 + */ + +!function(i,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],o):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.siren=o(i.FormValidation))}(this,(function(i){"use strict";var o=i.algorithms.luhn;return function(){return{validate:function(i){return{valid:""===i.value||/^\d{9}$/.test(i.value)&&o(i.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.js new file mode 100644 index 0000000..a53b9c1 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.js @@ -0,0 +1,41 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.siret = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function siret() { + return { + /** + * Check if a string is a siret number + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var length = input.value.length; + var sum = 0; + var tmp; + for (var i = 0; i < length; i++) { + tmp = parseInt(input.value.charAt(i), 10); + if (i % 2 === 0) { + tmp = tmp * 2; + if (tmp > 9) { + tmp -= 9; + } + } + sum += tmp; + } + return { valid: sum % 10 === 0 }; + }, + }; + } + + return siret; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.min.js new file mode 100644 index 0000000..c94ec84 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-siret/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-siret + * @version 2.4.0 + */ + +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.siret=i())}(this,(function(){"use strict";return function(){return{validate:function(e){if(""===e.value)return{valid:!0};for(var i,t=e.value.length,o=0,a=0;a9&&(i-=9),o+=i;return{valid:o%10==0}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.js new file mode 100644 index 0000000..f3fa0cd --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.js @@ -0,0 +1,66 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.step = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format; + function step() { + var round = function (input, precision) { + var m = Math.pow(10, precision); + var x = input * m; + var sign; + switch (true) { + case x === 0: + sign = 0; + break; + case x > 0: + sign = 1; + break; + case x < 0: + sign = -1; + break; + } + var isHalf = x % 1 === 0.5 * sign; + return isHalf ? (Math.floor(x) + (sign > 0 ? 1 : 0)) / m : Math.round(x) / m; + }; + var floatMod = function (x, y) { + if (y === 0.0) { + return 1.0; + } + var dotX = "".concat(x).split('.'); + var dotY = "".concat(y).split('.'); + var precision = (dotX.length === 1 ? 0 : dotX[1].length) + (dotY.length === 1 ? 0 : dotY[1].length); + return round(x - y * Math.floor(x / y), precision); + }; + return { + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var v = parseFloat(input.value); + if (isNaN(v) || !isFinite(v)) { + return { valid: false }; + } + var opts = Object.assign({}, { + baseValue: 0, + message: '', + step: 1, + }, input.options); + var mod = floatMod(v - opts.baseValue, opts.step); + return { + message: format(input.l10n ? opts.message || input.l10n.step.default : opts.message, "".concat(opts.step)), + valid: mod === 0.0 || mod === opts.step, + }; + }, + }; + } + + return step; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.min.js new file mode 100644 index 0000000..2efa3fe --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-step/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-step + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.step=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.format;return function(){var e=function(e,a){if(0===a)return 1;var t="".concat(e).split("."),i="".concat(a).split("."),o=(1===t.length?0:t[1].length)+(1===i.length?0:i[1].length);return function(e,a){var t,i=Math.pow(10,a),o=e*i;switch(!0){case 0===o:t=0;break;case o>0:t=1;break;case o<0:t=-1}return o%1==.5*t?(Math.floor(o)+(t>0?1:0))/i:Math.round(o)/i}(e-a*Math.floor(e/a),o)};return{validate:function(t){if(""===t.value)return{valid:!0};var i=parseFloat(t.value);if(isNaN(i)||!isFinite(i))return{valid:!1};var o=Object.assign({},{baseValue:0,message:"",step:1},t.options),n=e(i-o.baseValue,o.step);return{message:a(t.l10n?o.message||t.l10n.step.default:o.message,"".concat(o.step)),valid:0===n||n===o.step}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.js new file mode 100644 index 0000000..e7cc68e --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.js @@ -0,0 +1,41 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.stringCase = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + function stringCase() { + return { + /** + * Check if a string is a lower or upper case one + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { case: 'lower' }, removeUndefined(input.options)); + var caseOpt = (opts.case || 'lower').toLowerCase(); + return { + message: opts.message || + (input.l10n + ? 'upper' === caseOpt + ? input.l10n.stringCase.upper + : input.l10n.stringCase.default + : opts.message), + valid: 'upper' === caseOpt + ? input.value === input.value.toUpperCase() + : input.value === input.value.toLowerCase(), + }; + }, + }; + } + + return stringCase; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.min.js new file mode 100644 index 0000000..c1af24b --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-case/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-string-case + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.stringCase=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.removeUndefined;return function(){return{validate:function(e){if(""===e.value)return{valid:!0};var o=Object.assign({},{case:"lower"},a(e.options)),i=(o.case||"lower").toLowerCase();return{message:o.message||(e.l10n?"upper"===i?e.l10n.stringCase.upper:e.l10n.stringCase.default:o.message),valid:"upper"===i?e.value===e.value.toUpperCase():e.value===e.value.toLowerCase()}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.js new file mode 100644 index 0000000..47a10ac --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.js @@ -0,0 +1,78 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.stringLength = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + // Credit to http://stackoverflow.com/a/23329386 (@lovasoa) for UTF-8 byte length code + var utf8Length = function (str) { + var s = str.length; + for (var i = str.length - 1; i >= 0; i--) { + var code = str.charCodeAt(i); + if (code > 0x7f && code <= 0x7ff) { + s++; + } + else if (code > 0x7ff && code <= 0xffff) { + s += 2; + } + if (code >= 0xdc00 && code <= 0xdfff) { + i--; + } + } + return s; + }; + function stringLength() { + return { + /** + * Check if the length of element value is less or more than given number + */ + validate: function (input) { + var opts = Object.assign({}, { + message: '', + trim: false, + utf8Bytes: false, + }, removeUndefined(input.options)); + var v = opts.trim === true || "".concat(opts.trim) === 'true' ? input.value.trim() : input.value; + if (v === '') { + return { valid: true }; + } + // TODO: `min`, `max` can be dynamic options + var min = opts.min ? "".concat(opts.min) : ''; + var max = opts.max ? "".concat(opts.max) : ''; + var length = opts.utf8Bytes ? utf8Length(v) : v.length; + var isValid = true; + var msg = input.l10n ? opts.message || input.l10n.stringLength.default : opts.message; + if ((min && length < parseInt(min, 10)) || (max && length > parseInt(max, 10))) { + isValid = false; + } + switch (true) { + case !!min && !!max: + msg = format(input.l10n ? opts.message || input.l10n.stringLength.between : opts.message, [ + min, + max, + ]); + break; + case !!min: + msg = format(input.l10n ? opts.message || input.l10n.stringLength.more : opts.message, "".concat(parseInt(min, 10))); + break; + case !!max: + msg = format(input.l10n ? opts.message || input.l10n.stringLength.less : opts.message, "".concat(parseInt(max, 10))); + break; + } + return { + message: msg, + valid: isValid, + }; + }, + }; + } + + return stringLength; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.min.js new file mode 100644 index 0000000..e074e8d --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-string-length/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-string-length + * @version 2.4.0 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.stringLength=t(e.FormValidation))}(this,(function(e){"use strict";var t=e.utils.format,n=e.utils.removeUndefined;return function(){return{validate:function(e){var a=Object.assign({},{message:"",trim:!1,utf8Bytes:!1},n(e.options)),i=!0===a.trim||"true"==="".concat(a.trim)?e.value.trim():e.value;if(""===i)return{valid:!0};var r=a.min?"".concat(a.min):"",s=a.max?"".concat(a.max):"",o=a.utf8Bytes?function(e){for(var t=e.length,n=e.length-1;n>=0;n--){var a=e.charCodeAt(n);a>127&&a<=2047?t++:a>2047&&a<=65535&&(t+=2),a>=56320&&a<=57343&&n--}return t}(i):i.length,l=!0,m=e.l10n?a.message||e.l10n.stringLength.default:a.message;switch((r&&oparseInt(s,10))&&(l=!1),!0){case!!r&&!!s:m=t(e.l10n?a.message||e.l10n.stringLength.between:a.message,[r,s]);break;case!!r:m=t(e.l10n?a.message||e.l10n.stringLength.more:a.message,"".concat(parseInt(r,10)));break;case!!s:m=t(e.l10n?a.message||e.l10n.stringLength.less:a.message,"".concat(parseInt(s,10)))}return{message:m,valid:l}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.js new file mode 100644 index 0000000..4142740 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.js @@ -0,0 +1,110 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.uri = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var removeUndefined = core.utils.removeUndefined; + function uri() { + var DEFAULT_OPTIONS = { + allowEmptyProtocol: false, + allowLocal: false, + protocol: 'http, https, ftp', + }; + return { + /** + * Return true if the input value is a valid URL + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, DEFAULT_OPTIONS, removeUndefined(input.options)); + // Credit to https://gist.github.com/dperini/729294 + // + // Regular Expression for URL validation + // + // Author: Diego Perini + // Updated: 2010/12/05 + // + // the regular expression composed & commented + // could be easily tweaked for RFC compliance, + // it was expressly modified to fit & satisfy + // these test for an URL shortener: + // + // http://mathiasbynens.be/demo/url-regex + // + // Notes on possible differences from a standard/generic validation: + // + // - utf-8 char class take in consideration the full Unicode range + // - TLDs are mandatory unless `allowLocal` is true + // - protocols have been restricted to ftp, http and https only as requested + // + // Changes: + // + // - IP address dotted notation validation, range: 1.0.0.0 - 223.255.255.255 + // first and last IP address of each class is considered invalid + // (since they are broadcast/network addresses) + // + // - Added exclusion of private, reserved and/or local networks ranges + // unless `allowLocal` is true + // + // - Added possibility of choosing a custom protocol + // + // - Add option to validate without protocol + // + var allowLocal = opts.allowLocal === true || "".concat(opts.allowLocal) === 'true'; + var allowEmptyProtocol = opts.allowEmptyProtocol === true || "".concat(opts.allowEmptyProtocol) === 'true'; + var protocol = opts.protocol.split(',').join('|').replace(/\s/g, ''); + var urlExp = new RegExp('^' + + // protocol identifier + '(?:(?:' + + protocol + + ')://)' + + // allow empty protocol + (allowEmptyProtocol ? '?' : '') + + // user:pass authentication + '(?:\\S+(?::\\S*)?@)?' + + '(?:' + + // IP address exclusion + // private & local networks + (allowLocal + ? '' + : '(?!(?:10|127)(?:\\.\\d{1,3}){3})' + + '(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})' + + '(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})') + + // IP address dotted notation octets + // excludes loopback network 0.0.0.0 + // excludes reserved space >= 224.0.0.0 + // excludes network & broadcast addresses + // (first & last IP address of each class) + '(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])' + + '(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}' + + '(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))' + + '|' + + // host name + '(?:(?:[a-z\\u00a1-\\uffff0-9]-?)*[a-z\\u00a1-\\uffff0-9]+)' + + // domain name + '(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-?)*[a-z\\u00a1-\\uffff0-9])*' + + // TLD identifier + '(?:\\.(?:[a-z\\u00a1-\\uffff]{2,}))' + + // Allow intranet sites (no TLD) if `allowLocal` is true + (allowLocal ? '?' : '') + + ')' + + // port number + '(?::\\d{2,5})?' + + // resource path + '(?:/[^\\s]*)?$', 'i'); + return { valid: urlExp.test(input.value) }; + }, + }; + } + + return uri; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.min.js new file mode 100644 index 0000000..affcb92 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uri/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-uri + * @version 2.4.0 + */ + +!function(o,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((o="undefined"!=typeof globalThis?globalThis:o||self).FormValidation=o.FormValidation||{},o.FormValidation.validators=o.FormValidation.validators||{},o.FormValidation.validators.uri=a(o.FormValidation))}(this,(function(o){"use strict";var a=o.utils.removeUndefined;return function(){var o={allowEmptyProtocol:!1,allowLocal:!1,protocol:"http, https, ftp"};return{validate:function(t){if(""===t.value)return{valid:!0};var i=Object.assign({},o,a(t.options)),l=!0===i.allowLocal||"true"==="".concat(i.allowLocal),e=!0===i.allowEmptyProtocol||"true"==="".concat(i.allowEmptyProtocol),d=i.protocol.split(",").join("|").replace(/\s/g,"");return{valid:new RegExp("^(?:(?:"+d+")://)"+(e?"?":"")+"(?:\\S+(?::\\S*)?@)?(?:"+(l?"":"(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})")+"(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]-?)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-?)*[a-z\\u00a1-\\uffff0-9])*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,}))"+(l?"?":"")+")(?::\\d{2,5})?(?:/[^\\s]*)?$","i").test(t.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.js new file mode 100644 index 0000000..e0a0bfc --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.js @@ -0,0 +1,46 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.uuid = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function uuid() { + return { + /** + * Return true if and only if the input value is a valid UUID string + * @see http://en.wikipedia.org/wiki/Universally_unique_identifier + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { message: '' }, removeUndefined(input.options)); + // See the format at http://en.wikipedia.org/wiki/Universally_unique_identifier#Variants_and_versions + var patterns = { + 3: /^[0-9A-F]{8}-[0-9A-F]{4}-3[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i, + 4: /^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, + 5: /^[0-9A-F]{8}-[0-9A-F]{4}-5[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, + all: /^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i, + }; + var version = opts.version ? "".concat(opts.version) : 'all'; + return { + message: opts.version + ? format(input.l10n ? opts.message || input.l10n.uuid.version : opts.message, opts.version) + : input.l10n + ? input.l10n.uuid.default + : opts.message, + valid: null === patterns[version] ? true : patterns[version].test(input.value), + }; + }, + }; + } + + return uuid; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.min.js new file mode 100644 index 0000000..e64c159 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-uuid/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-uuid + * @version 2.4.0 + */ + +!function(i,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],e):((i="undefined"!=typeof globalThis?globalThis:i||self).FormValidation=i.FormValidation||{},i.FormValidation.validators=i.FormValidation.validators||{},i.FormValidation.validators.uuid=e(i.FormValidation))}(this,(function(i){"use strict";var e=i.utils.format,o=i.utils.removeUndefined;return function(){return{validate:function(i){if(""===i.value)return{valid:!0};var a=Object.assign({},{message:""},o(i.options)),n={3:/^[0-9A-F]{8}-[0-9A-F]{4}-3[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i,4:/^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,5:/^[0-9A-F]{8}-[0-9A-F]{4}-5[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,all:/^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i},t=a.version?"".concat(a.version):"all";return{message:a.version?e(i.l10n?a.message||i.l10n.uuid.version:a.message,a.version):i.l10n?i.l10n.uuid.default:a.message,valid:null===n[t]||n[t].test(i.value)}}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.js new file mode 100644 index 0000000..25b8fdd --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.js @@ -0,0 +1,1908 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('@form-validation/core')) : + typeof define === 'function' && define.amd ? define(['@form-validation/core'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.vat = factory(global.FormValidation))); +})(this, (function (core) { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Argentinian VAT number + * + * @see https://es.wikipedia.org/wiki/Clave_%C3%9Anica_de_Identificaci%C3%B3n_Tributaria + * @returns {ValidateResult} + */ + function arVat(value) { + // Replace `-` with empty + var v = value.replace('-', ''); + if (/^AR[0-9]{11}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{11}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 10; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + if (sum === 11) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Austrian VAT number + * + * @returns {ValidateResult} + */ + function atVat(value) { + var v = value; + if (/^ATU[0-9]{8}$/.test(v)) { + v = v.substr(2); + } + if (!/^U[0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + v = v.substr(1); + var weight = [1, 2, 1, 2, 1, 2, 1]; + var sum = 0; + var temp = 0; + for (var i = 0; i < 7; i++) { + temp = parseInt(v.charAt(i), 10) * weight[i]; + if (temp > 9) { + temp = Math.floor(temp / 10) + (temp % 10); + } + sum += temp; + } + sum = 10 - ((sum + 4) % 10); + if (sum === 10) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(7, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Belgian VAT number + * + * @returns {ValidateResult} + */ + function beVat(value) { + var v = value; + if (/^BE[0]?[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0]?[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + if (v.length === 9) { + v = "0".concat(v); + } + if (v.substr(1, 1) === '0') { + return { + meta: {}, + valid: false, + }; + } + var sum = parseInt(v.substr(0, 8), 10) + parseInt(v.substr(8, 2), 10); + return { + meta: {}, + valid: sum % 97 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$2 = core.utils.isValidDate; + /** + * Validate Bulgarian VAT number + * + * @returns {ValidateResult} + */ + function bgVat(value) { + var v = value; + if (/^BG[0-9]{9,10}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9,10}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var i = 0; + // Legal entities + if (v.length === 9) { + for (i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * (i + 1); + } + sum = sum % 11; + if (sum === 10) { + sum = 0; + for (i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * (i + 3); + } + sum = sum % 11; + } + sum = sum % 10; + return { + meta: {}, + valid: "".concat(sum) === v.substr(8), + }; + } + else { + // Physical persons, foreigners and others + // Validate Bulgarian national identification numbers + var isEgn = function (input) { + // Check the birth date + var year = parseInt(input.substr(0, 2), 10) + 1900; + var month = parseInt(input.substr(2, 2), 10); + var day = parseInt(input.substr(4, 2), 10); + if (month > 40) { + year += 100; + month -= 40; + } + else if (month > 20) { + year -= 100; + month -= 20; + } + if (!isValidDate$2(year, month, day)) { + return false; + } + var weight = [2, 4, 8, 5, 10, 9, 7, 3, 6]; + var s = 0; + for (var j = 0; j < 9; j++) { + s += parseInt(input.charAt(j), 10) * weight[j]; + } + s = (s % 11) % 10; + return "".concat(s) === input.substr(9, 1); + }; + // Validate Bulgarian personal number of a foreigner + var isPnf = function (input) { + var weight = [21, 19, 17, 13, 11, 9, 7, 3, 1]; + var s = 0; + for (var j = 0; j < 9; j++) { + s += parseInt(input.charAt(j), 10) * weight[j]; + } + s = s % 10; + return "".concat(s) === input.substr(9, 1); + }; + // Finally, consider it as a VAT number + var isVat = function (input) { + var weight = [4, 3, 2, 7, 6, 5, 4, 3, 2]; + var s = 0; + for (var j = 0; j < 9; j++) { + s += parseInt(input.charAt(j), 10) * weight[j]; + } + s = 11 - (s % 11); + if (s === 10) { + return false; + } + if (s === 11) { + s = 0; + } + return "".concat(s) === input.substr(9, 1); + }; + return { + meta: {}, + valid: isEgn(v) || isPnf(v) || isVat(v), + }; + } + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Brazilian VAT number (CNPJ) + * + * @returns {ValidateResult} + */ + function brVat(value) { + if (value === '') { + return { + meta: {}, + valid: true, + }; + } + var cnpj = value.replace(/[^\d]+/g, ''); + if (cnpj === '' || cnpj.length !== 14) { + return { + meta: {}, + valid: false, + }; + } + // Remove invalids CNPJs + if (cnpj === '00000000000000' || + cnpj === '11111111111111' || + cnpj === '22222222222222' || + cnpj === '33333333333333' || + cnpj === '44444444444444' || + cnpj === '55555555555555' || + cnpj === '66666666666666' || + cnpj === '77777777777777' || + cnpj === '88888888888888' || + cnpj === '99999999999999') { + return { + meta: {}, + valid: false, + }; + } + // Validate verification digits + var length = cnpj.length - 2; + var numbers = cnpj.substring(0, length); + var digits = cnpj.substring(length); + var sum = 0; + var pos = length - 7; + var i; + for (i = length; i >= 1; i--) { + sum += parseInt(numbers.charAt(length - i), 10) * pos--; + if (pos < 2) { + pos = 9; + } + } + var result = sum % 11 < 2 ? 0 : 11 - (sum % 11); + if (result !== parseInt(digits.charAt(0), 10)) { + return { + meta: {}, + valid: false, + }; + } + length = length + 1; + numbers = cnpj.substring(0, length); + sum = 0; + pos = length - 7; + for (i = length; i >= 1; i--) { + sum += parseInt(numbers.charAt(length - i), 10) * pos--; + if (pos < 2) { + pos = 9; + } + } + result = sum % 11 < 2 ? 0 : 11 - (sum % 11); + return { + meta: {}, + valid: result === parseInt(digits.charAt(1), 10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Swiss VAT number + * + * @returns {ValidateResult} + */ + function chVat(value) { + var v = value; + if (/^CHE[0-9]{9}(MWST|TVA|IVA|TPV)?$/.test(v)) { + v = v.substr(2); + } + if (!/^E[0-9]{9}(MWST|TVA|IVA|TPV)?$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + v = v.substr(1); + var weight = [5, 4, 3, 2, 7, 6, 5, 4]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + if (sum === 10) { + return { + meta: {}, + valid: false, + }; + } + if (sum === 11) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(8, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Cypriot VAT number + * + * @returns {ValidateResult} + */ + function cyVat(value) { + var v = value; + if (/^CY[0-5|9][0-9]{7}[A-Z]$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-5|9][0-9]{7}[A-Z]$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + // Do not allow to start with "12" + if (v.substr(0, 2) === '12') { + return { + meta: {}, + valid: false, + }; + } + // Extract the next digit and multiply by the counter. + var sum = 0; + var translation = { + 0: 1, + 1: 0, + 2: 5, + 3: 7, + 4: 9, + 5: 13, + 6: 15, + 7: 17, + 8: 19, + 9: 21, + }; + for (var i = 0; i < 8; i++) { + var temp = parseInt(v.charAt(i), 10); + if (i % 2 === 0) { + temp = translation["".concat(temp)]; + } + sum += temp; + } + return { + meta: {}, + valid: "".concat('ABCDEFGHIJKLMNOPQRSTUVWXYZ'[sum % 26]) === v.substr(8, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate$1 = core.utils.isValidDate; + /** + * Validate Czech Republic VAT number + * + * @returns {ValidateResult} + */ + function czVat(value) { + var v = value; + if (/^CZ[0-9]{8,10}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{8,10}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var i = 0; + if (v.length === 8) { + // Do not allow to start with '9' + if ("".concat(v.charAt(0)) === '9') { + return { + meta: {}, + valid: false, + }; + } + sum = 0; + for (i = 0; i < 7; i++) { + sum += parseInt(v.charAt(i), 10) * (8 - i); + } + sum = 11 - (sum % 11); + if (sum === 10) { + sum = 0; + } + if (sum === 11) { + sum = 1; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(7, 1), + }; + } + else if (v.length === 9 && "".concat(v.charAt(0)) === '6') { + sum = 0; + // Skip the first (which is 6) + for (i = 0; i < 7; i++) { + sum += parseInt(v.charAt(i + 1), 10) * (8 - i); + } + sum = 11 - (sum % 11); + if (sum === 10) { + sum = 0; + } + if (sum === 11) { + sum = 1; + } + sum = [8, 7, 6, 5, 4, 3, 2, 1, 0, 9, 10][sum - 1]; + return { + meta: {}, + valid: "".concat(sum) === v.substr(8, 1), + }; + } + else if (v.length === 9 || v.length === 10) { + // Validate Czech birth number (Rodné číslo), which is also national identifier + var year = 1900 + parseInt(v.substr(0, 2), 10); + var month = (parseInt(v.substr(2, 2), 10) % 50) % 20; + var day = parseInt(v.substr(4, 2), 10); + if (v.length === 9) { + if (year >= 1980) { + year -= 100; + } + if (year > 1953) { + return { + meta: {}, + valid: false, + }; + } + } + else if (year < 1954) { + year += 100; + } + if (!isValidDate$1(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Check that the birth date is not in the future + if (v.length === 10) { + var check = parseInt(v.substr(0, 9), 10) % 11; + if (year < 1985) { + check = check % 10; + } + return { + meta: {}, + valid: "".concat(check) === v.substr(9, 1), + }; + } + return { + meta: {}, + valid: true, + }; + } + return { + meta: {}, + valid: false, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var mod11And10$1 = core.algorithms.mod11And10; + /** + * Validate German VAT number + * + * @returns {ValidateResult} + */ + function deVat(value) { + var v = value; + if (/^DE[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[1-9][0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: mod11And10$1(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Danish VAT number + * + * @returns {ValidateResult} + */ + function dkVat(value) { + var v = value; + if (/^DK[0-9]{8}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var weight = [2, 7, 6, 5, 4, 3, 2, 1]; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + return { + meta: {}, + valid: sum % 11 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Estonian VAT number + * + * @returns {ValidateResult} + */ + function eeVat(value) { + var v = value; + if (/^EE[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var weight = [3, 7, 1, 3, 7, 1, 3, 7, 1]; + for (var i = 0; i < 9; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + return { + meta: {}, + valid: sum % 10 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Spanish VAT number (NIF - Número de Identificación Fiscal) + * Can be: + * i) DNI (Documento nacional de identidad), for Spaniards + * ii) NIE (Número de Identificación de Extranjeros), for foreigners + * iii) CIF (Certificado de Identificación Fiscal), for legal entities and others + * + * @returns {ValidateResult} + */ + function esVat(value) { + var v = value; + if (/^ES[0-9A-Z][0-9]{7}[0-9A-Z]$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9A-Z][0-9]{7}[0-9A-Z]$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var dni = function (input) { + var check = parseInt(input.substr(0, 8), 10); + return "".concat('TRWAGMYFPDXBNJZSQVHLCKE'[check % 23]) === input.substr(8, 1); + }; + var nie = function (input) { + var check = ['XYZ'.indexOf(input.charAt(0)), input.substr(1)].join(''); + var cd = 'TRWAGMYFPDXBNJZSQVHLCKE'[parseInt(check, 10) % 23]; + return "".concat(cd) === input.substr(8, 1); + }; + var cif = function (input) { + var firstChar = input.charAt(0); + var check; + if ('KLM'.indexOf(firstChar) !== -1) { + // K: Spanish younger than 14 year old + // L: Spanish living outside Spain without DNI + // M: Granted the tax to foreigners who have no NIE + check = parseInt(input.substr(1, 8), 10); + check = 'TRWAGMYFPDXBNJZSQVHLCKE'[check % 23]; + return "".concat(check) === input.substr(8, 1); + } + else if ('ABCDEFGHJNPQRSUVW'.indexOf(firstChar) !== -1) { + var weight = [2, 1, 2, 1, 2, 1, 2]; + var sum = 0; + var temp = 0; + for (var i = 0; i < 7; i++) { + temp = parseInt(input.charAt(i + 1), 10) * weight[i]; + if (temp > 9) { + temp = Math.floor(temp / 10) + (temp % 10); + } + sum += temp; + } + sum = 10 - (sum % 10); + if (sum === 10) { + sum = 0; + } + return "".concat(sum) === input.substr(8, 1) || 'JABCDEFGHI'[sum] === input.substr(8, 1); + } + return false; + }; + var first = v.charAt(0); + if (/^[0-9]$/.test(first)) { + return { + meta: { + type: 'DNI', + }, + valid: dni(v), + }; + } + else if (/^[XYZ]$/.test(first)) { + return { + meta: { + type: 'NIE', + }, + valid: nie(v), + }; + } + else { + return { + meta: { + type: 'CIF', + }, + valid: cif(v), + }; + } + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Finnish VAT number + * + * @returns {ValidateResult} + */ + function fiVat(value) { + var v = value; + if (/^FI[0-9]{8}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [7, 9, 10, 5, 8, 4, 2, 1]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + return { + meta: {}, + valid: sum % 11 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn$2 = core.algorithms.luhn; + /** + * Validate French VAT number (TVA - taxe sur la valeur ajoutée) + * It's constructed by a SIREN number, prefixed by two characters. + * + * @returns {ValidateResult} + */ + function frVat(value) { + var v = value; + if (/^FR[0-9A-Z]{2}[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9A-Z]{2}[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + if (v.substr(2, 4) !== '000') { + return { + meta: {}, + valid: luhn$2(v.substr(2)), + }; + } + if (/^[0-9]{2}$/.test(v.substr(0, 2))) { + // First two characters are digits + return { + meta: {}, + valid: v.substr(0, 2) === "".concat(parseInt(v.substr(2) + '12', 10) % 97), + }; + } + else { + // The first characters cann't be O and I + var alphabet = '0123456789ABCDEFGHJKLMNPQRSTUVWXYZ'; + var check = void 0; + // First one is digit + if (/^[0-9]$/.test(v.charAt(0))) { + check = alphabet.indexOf(v.charAt(0)) * 24 + alphabet.indexOf(v.charAt(1)) - 10; + } + else { + check = alphabet.indexOf(v.charAt(0)) * 34 + alphabet.indexOf(v.charAt(1)) - 100; + } + return { + meta: {}, + valid: (parseInt(v.substr(2), 10) + 1 + Math.floor(check / 11)) % 11 === check % 11, + }; + } + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate United Kingdom VAT number + * + * @returns {ValidateResult} + */ + function gbVat(value) { + var v = value; + if (/^GB[0-9]{9}$/.test(v) /* Standard */ || + /^GB[0-9]{12}$/.test(v) /* Branches */ || + /^GBGD[0-9]{3}$/.test(v) /* Government department */ || + /^GBHA[0-9]{3}$/.test(v) /* Health authority */ || + /^GB(GD|HA)8888[0-9]{5}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}$/.test(v) && + !/^[0-9]{12}$/.test(v) && + !/^GD[0-9]{3}$/.test(v) && + !/^HA[0-9]{3}$/.test(v) && + !/^(GD|HA)8888[0-9]{5}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var length = v.length; + if (length === 5) { + var firstTwo = v.substr(0, 2); + var lastThree = parseInt(v.substr(2), 10); + return { + meta: {}, + valid: ('GD' === firstTwo && lastThree < 500) || ('HA' === firstTwo && lastThree >= 500), + }; + } + else if (length === 11 && ('GD8888' === v.substr(0, 6) || 'HA8888' === v.substr(0, 6))) { + if (('GD' === v.substr(0, 2) && parseInt(v.substr(6, 3), 10) >= 500) || + ('HA' === v.substr(0, 2) && parseInt(v.substr(6, 3), 10) < 500)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: parseInt(v.substr(6, 3), 10) % 97 === parseInt(v.substr(9, 2), 10), + }; + } + else if (length === 9 || length === 12) { + var weight = [8, 7, 6, 5, 4, 3, 2, 10, 1]; + var sum = 0; + for (var i = 0; i < 9; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = sum % 97; + var isValid = parseInt(v.substr(0, 3), 10) >= 100 ? sum === 0 || sum === 42 || sum === 55 : sum === 0; + return { + meta: {}, + valid: isValid, + }; + } + return { + meta: {}, + valid: true, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Greek VAT number + * + * @returns {ValidateResult} + */ + function grVat(value) { + var v = value; + if (/^(GR|EL)[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + if (v.length === 8) { + v = "0".concat(v); + } + var weight = [256, 128, 64, 32, 16, 8, 4, 2]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = (sum % 11) % 10; + return { + meta: {}, + valid: "".concat(sum) === v.substr(8, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var mod11And10 = core.algorithms.mod11And10; + /** + * Validate Croatian VAT number + * + * @returns {ValidateResult} + */ + function hrVat(value) { + var v = value; + if (/^HR[0-9]{11}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{11}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: mod11And10(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Hungarian VAT number + * + * @returns {ValidateResult} + */ + function huVat(value) { + var v = value; + if (/^HU[0-9]{8}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [9, 7, 3, 1, 9, 7, 3, 1]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + return { + meta: {}, + valid: sum % 10 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Irish VAT number + * + * @returns {ValidateResult} + */ + function ieVat(value) { + var v = value; + if (/^IE[0-9][0-9A-Z*+][0-9]{5}[A-Z]{1,2}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9][0-9A-Z*+][0-9]{5}[A-Z]{1,2}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var getCheckDigit = function (inp) { + var input = inp; + while (input.length < 7) { + input = "0".concat(input); + } + var alphabet = 'WABCDEFGHIJKLMNOPQRSTUV'; + var sum = 0; + for (var i = 0; i < 7; i++) { + sum += parseInt(input.charAt(i), 10) * (8 - i); + } + sum += 9 * alphabet.indexOf(input.substr(7)); + return alphabet[sum % 23]; + }; + // The first 7 characters are digits + if (/^[0-9]+$/.test(v.substr(0, 7))) { + // New system + return { + meta: {}, + valid: v.charAt(7) === getCheckDigit("".concat(v.substr(0, 7)).concat(v.substr(8))), + }; + } + else if ('ABCDEFGHIJKLMNOPQRSTUVWXYZ+*'.indexOf(v.charAt(1)) !== -1) { + // Old system + return { + meta: {}, + valid: v.charAt(7) === getCheckDigit("".concat(v.substr(2, 5)).concat(v.substr(0, 1))), + }; + } + return { + meta: {}, + valid: true, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Icelandic VAT (VSK) number + * + * @returns {ValidateResult} + */ + function isVat(value) { + var v = value; + if (/^IS[0-9]{5,6}$/.test(v)) { + v = v.substr(2); + } + return { + meta: {}, + valid: /^[0-9]{5,6}$/.test(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn$1 = core.algorithms.luhn; + /** + * Validate Italian VAT number, which consists of 11 digits. + * - First 7 digits are a company identifier + * - Next 3 are the province of residence + * - The last one is a check digit + * + * @returns {ValidateResult} + */ + function itVat(value) { + var v = value; + if (/^IT[0-9]{11}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{11}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + if (parseInt(v.substr(0, 7), 10) === 0) { + return { + meta: {}, + valid: false, + }; + } + var lastThree = parseInt(v.substr(7, 3), 10); + if (lastThree < 1 || (lastThree > 201 && lastThree !== 999 && lastThree !== 888)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: luhn$1(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Lithuanian VAT number + * It can be: + * - 9 digits, for legal entities + * - 12 digits, for temporarily registered taxpayers + * + * @returns {ValidateResult} + */ + function ltVat(value) { + var v = value; + if (/^LT([0-9]{7}1[0-9]|[0-9]{10}1[0-9])$/.test(v)) { + v = v.substr(2); + } + if (!/^([0-9]{7}1[0-9]|[0-9]{10}1[0-9])$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var length = v.length; + var sum = 0; + var i; + for (i = 0; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * (1 + (i % 9)); + } + var check = sum % 11; + if (check === 10) { + // FIXME: Why we need calculation because `sum` isn't used anymore + sum = 0; + for (i = 0; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * (1 + ((i + 2) % 9)); + } + } + check = (check % 11) % 10; + return { + meta: {}, + valid: "".concat(check) === v.charAt(length - 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Luxembourg VAT number + * + * @returns {ValidateResult} + */ + function luVat(value) { + var v = value; + if (/^LU[0-9]{8}$/.test(v)) { + v = v.substring(2); + } + if (!/^[0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: parseInt(v.substring(0, 6), 10) % 89 === parseInt(v.substring(6, 8), 10), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var isValidDate = core.utils.isValidDate; + /** + * Validate Latvian VAT number + * + * @returns {ValidateResult} + */ + function lvVat(value) { + var v = value; + if (/^LV[0-9]{11}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{11}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var first = parseInt(v.charAt(0), 10); + var length = v.length; + var sum = 0; + var weight = []; + var i; + if (first > 3) { + // Legal entity + sum = 0; + weight = [9, 1, 4, 8, 3, 10, 2, 5, 7, 6, 1]; + for (i = 0; i < length; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = sum % 11; + return { + meta: {}, + valid: sum === 3, + }; + } + else { + // Check birth date + var day = parseInt(v.substr(0, 2), 10); + var month = parseInt(v.substr(2, 2), 10); + var year = parseInt(v.substr(4, 2), 10); + year = year + 1800 + parseInt(v.charAt(6), 10) * 100; + if (!isValidDate(year, month, day)) { + return { + meta: {}, + valid: false, + }; + } + // Check personal code + sum = 0; + weight = [10, 5, 8, 4, 2, 1, 6, 3, 7, 9]; + for (i = 0; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = ((sum + 1) % 11) % 10; + return { + meta: {}, + valid: "".concat(sum) === v.charAt(length - 1), + }; + } + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Maltese VAT number + * + * @returns {ValidateResult} + */ + function mtVat(value) { + var v = value; + if (/^MT[0-9]{8}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{8}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [3, 4, 6, 7, 8, 9, 10, 1]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + return { + meta: {}, + valid: sum % 37 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var mod97And10 = core.algorithms.mod97And10; + /** + * Validate Dutch national identification number (BSN) + * + * @see https://nl.wikipedia.org/wiki/Burgerservicenummer + * @returns {ValidateResult} + */ + function nlId(value) { + if (value.length < 8) { + return { + meta: {}, + valid: false, + }; + } + var v = value; + if (v.length === 8) { + v = "0".concat(v); + } + if (!/^[0-9]{4}[.]{0,1}[0-9]{2}[.]{0,1}[0-9]{3}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + v = v.replace(/\./g, ''); + if (parseInt(v, 10) === 0) { + return { + meta: {}, + valid: false, + }; + } + var sum = 0; + var length = v.length; + for (var i = 0; i < length - 1; i++) { + sum += (9 - i) * parseInt(v.charAt(i), 10); + } + sum = sum % 11; + if (sum === 10) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.charAt(length - 1), + }; + } + /** + * Validate Dutch VAT number + * + * @returns {ValidateResult} + */ + function nlVat(value) { + var v = value; + if (/^NL[0-9]{9}B[0-9]{2}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}B[0-9]{2}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var id = v.substr(0, 9); + return { + meta: {}, + valid: nlId(id).valid || mod97And10("NL".concat(v)), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Norwegian VAT number + * + * @see http://www.brreg.no/english/coordination/number.html + * @returns {ValidateResult} + */ + function noVat(value) { + var v = value; + if (/^NO[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [3, 2, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + if (sum === 11) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(8, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Polish VAT number + * + * @returns {ValidateResult} + */ + function plVat(value) { + var v = value; + if (/^PL[0-9]{10}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{10}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [6, 5, 7, 2, 3, 4, 5, 6, 7, -1]; + var sum = 0; + for (var i = 0; i < 10; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + return { + meta: {}, + valid: sum % 11 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Portuguese VAT number + * + * @returns {ValidateResult} + */ + function ptVat(value) { + var v = value; + if (/^PT[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var weight = [9, 8, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + if (sum > 9) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(8, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Romanian VAT number + * + * @returns {ValidateResult} + */ + function roVat(value) { + var v = value; + if (/^RO[1-9][0-9]{1,9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[1-9][0-9]{1,9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var length = v.length; + var weight = [7, 5, 3, 2, 1, 7, 5, 3, 2].slice(10 - length); + var sum = 0; + for (var i = 0; i < length - 1; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = ((10 * sum) % 11) % 10; + return { + meta: {}, + valid: "".concat(sum) === v.substr(length - 1, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Serbian VAT number + * + * @returns {ValidateResult} + */ + function rsVat(value) { + var v = value; + if (/^RS[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var sum = 10; + var temp = 0; + for (var i = 0; i < 8; i++) { + temp = (parseInt(v.charAt(i), 10) + sum) % 10; + if (temp === 0) { + temp = 10; + } + sum = (2 * temp) % 11; + } + return { + meta: {}, + valid: (sum + parseInt(v.substr(8, 1), 10)) % 10 === 1, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Russian VAT number (Taxpayer Identification Number - INN) + * + * @returns {ValidateResult} + */ + function ruVat(value) { + var v = value; + if (/^RU([0-9]{10}|[0-9]{12})$/.test(v)) { + v = v.substr(2); + } + if (!/^([0-9]{10}|[0-9]{12})$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var i = 0; + if (v.length === 10) { + var weight = [2, 4, 10, 3, 5, 9, 4, 6, 8, 0]; + var sum = 0; + for (i = 0; i < 10; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = sum % 11; + if (sum > 9) { + sum = sum % 10; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(9, 1), + }; + } + else if (v.length === 12) { + var weight1 = [7, 2, 4, 10, 3, 5, 9, 4, 6, 8, 0]; + var weight2 = [3, 7, 2, 4, 10, 3, 5, 9, 4, 6, 8, 0]; + var sum1 = 0; + var sum2 = 0; + for (i = 0; i < 11; i++) { + sum1 += parseInt(v.charAt(i), 10) * weight1[i]; + sum2 += parseInt(v.charAt(i), 10) * weight2[i]; + } + sum1 = sum1 % 11; + if (sum1 > 9) { + sum1 = sum1 % 10; + } + sum2 = sum2 % 11; + if (sum2 > 9) { + sum2 = sum2 % 10; + } + return { + meta: {}, + valid: "".concat(sum1) === v.substr(10, 1) && "".concat(sum2) === v.substr(11, 1), + }; + } + return { + meta: {}, + valid: true, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var luhn = core.algorithms.luhn; + /** + * Validate Swiss VAT number + * + * @returns {ValidateResult} + */ + function seVat(value) { + var v = value; + if (/^SE[0-9]{10}01$/.test(v)) { + v = v.substr(2); + } + if (!/^[0-9]{10}01$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + v = v.substr(0, 10); + return { + meta: {}, + valid: luhn(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Slovenian VAT number + * + * @returns {ValidateResult} + */ + function siVat(value) { + // The Slovenian VAT numbers don't start with zero + var res = value.match(/^(SI)?([1-9][0-9]{7})$/); + if (!res) { + return { + meta: {}, + valid: false, + }; + } + var v = res[1] ? value.substr(2) : value; + var weight = [8, 7, 6, 5, 4, 3, 2]; + var sum = 0; + for (var i = 0; i < 7; i++) { + sum += parseInt(v.charAt(i), 10) * weight[i]; + } + sum = 11 - (sum % 11); + if (sum === 10) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(7, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Slovak VAT number + * + * @returns {ValidateResult} + */ + function skVat(value) { + var v = value; + if (/^SK[1-9][0-9][(2-4)|(6-9)][0-9]{7}$/.test(v)) { + v = v.substr(2); + } + if (!/^[1-9][0-9][(2-4)|(6-9)][0-9]{7}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + return { + meta: {}, + valid: parseInt(v, 10) % 11 === 0, + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate Venezuelan VAT number (RIF) + * + * @returns {ValidateResult} + */ + function veVat(value) { + var v = value; + if (/^VE[VEJPG][0-9]{9}$/.test(v)) { + v = v.substr(2); + } + if (!/^[VEJPG][0-9]{9}$/.test(v)) { + return { + meta: {}, + valid: false, + }; + } + var types = { + E: 8, + G: 20, + J: 12, + P: 16, + V: 4, + }; + var weight = [3, 2, 7, 6, 5, 4, 3, 2]; + var sum = types[v.charAt(0)]; + for (var i = 0; i < 8; i++) { + sum += parseInt(v.charAt(i + 1), 10) * weight[i]; + } + sum = 11 - (sum % 11); + if (sum === 11 || sum === 10) { + sum = 0; + } + return { + meta: {}, + valid: "".concat(sum) === v.substr(9, 1), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + /** + * Validate South African VAT number + * + * @returns {ValidateResult} + */ + function zaVat(value) { + var v = value; + if (/^ZA4[0-9]{9}$/.test(v)) { + v = v.substr(2); + } + return { + meta: {}, + valid: /^4[0-9]{9}$/.test(v), + }; + } + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function vat() { + // Supported country codes + var COUNTRY_CODES = [ + 'AR', + 'AT', + 'BE', + 'BG', + 'BR', + 'CH', + 'CY', + 'CZ', + 'DE', + 'DK', + 'EE', + 'EL', + 'ES', + 'FI', + 'FR', + 'GB', + 'GR', + 'HR', + 'HU', + 'IE', + 'IS', + 'IT', + 'LT', + 'LU', + 'LV', + 'MT', + 'NL', + 'NO', + 'PL', + 'PT', + 'RO', + 'RU', + 'RS', + 'SE', + 'SK', + 'SI', + 'VE', + 'ZA', + ]; + return { + /** + * Validate an European VAT number + */ + validate: function (input) { + var value = input.value; + if (value === '') { + return { valid: true }; + } + var opts = Object.assign({}, { message: '' }, removeUndefined(input.options)); + var country = value.substr(0, 2); + if ('function' === typeof opts.country) { + country = opts.country.call(this); + } + else { + country = opts.country; + } + if (COUNTRY_CODES.indexOf(country) === -1) { + return { valid: true }; + } + var result = { + meta: {}, + valid: true, + }; + switch (country.toLowerCase()) { + case 'ar': + result = arVat(value); + break; + case 'at': + result = atVat(value); + break; + case 'be': + result = beVat(value); + break; + case 'bg': + result = bgVat(value); + break; + case 'br': + result = brVat(value); + break; + case 'ch': + result = chVat(value); + break; + case 'cy': + result = cyVat(value); + break; + case 'cz': + result = czVat(value); + break; + case 'de': + result = deVat(value); + break; + case 'dk': + result = dkVat(value); + break; + case 'ee': + result = eeVat(value); + break; + // EL is traditionally prefix of Greek VAT numbers + case 'el': + result = grVat(value); + break; + case 'es': + result = esVat(value); + break; + case 'fi': + result = fiVat(value); + break; + case 'fr': + result = frVat(value); + break; + case 'gb': + result = gbVat(value); + break; + case 'gr': + result = grVat(value); + break; + case 'hr': + result = hrVat(value); + break; + case 'hu': + result = huVat(value); + break; + case 'ie': + result = ieVat(value); + break; + case 'is': + result = isVat(value); + break; + case 'it': + result = itVat(value); + break; + case 'lt': + result = ltVat(value); + break; + case 'lu': + result = luVat(value); + break; + case 'lv': + result = lvVat(value); + break; + case 'mt': + result = mtVat(value); + break; + case 'nl': + result = nlVat(value); + break; + case 'no': + result = noVat(value); + break; + case 'pl': + result = plVat(value); + break; + case 'pt': + result = ptVat(value); + break; + case 'ro': + result = roVat(value); + break; + case 'rs': + result = rsVat(value); + break; + case 'ru': + result = ruVat(value); + break; + case 'se': + result = seVat(value); + break; + case 'si': + result = siVat(value); + break; + case 'sk': + result = skVat(value); + break; + case 've': + result = veVat(value); + break; + case 'za': + result = zaVat(value); + break; + } + var message = format(input.l10n && input.l10n.vat ? opts.message || input.l10n.vat.country : opts.message, input.l10n && input.l10n.vat && input.l10n.vat.countries + ? input.l10n.vat.countries[country.toUpperCase()] + : country.toUpperCase()); + return Object.assign({}, { message: message }, result); + }, + }; + } + + return vat; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.min.js new file mode 100644 index 0000000..e1755c4 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vat/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-vat + * @version 2.4.0 + */ + +!function(t,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],r):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.vat=r(t.FormValidation))}(this,(function(t){"use strict";var r=t.utils.isValidDate;var a=t.utils.isValidDate;var e=t.algorithms.mod11And10;var s=t.algorithms.luhn;function n(t){var r=t;if(/^(GR|EL)[0-9]{9}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{9}$/.test(r))return{meta:{},valid:!1};8===r.length&&(r="0".concat(r));for(var a=[256,128,64,32,16,8,4,2],e=0,s=0;s<8;s++)e+=parseInt(r.charAt(s),10)*a[s];return{meta:{},valid:"".concat(e=e%11%10)===r.substr(8,1)}}var i=t.algorithms.mod11And10;var u=t.algorithms.luhn;var c=t.utils.isValidDate;var v=t.algorithms.mod97And10;function o(t){if(t.length<8)return{meta:{},valid:!1};var r=t;if(8===r.length&&(r="0".concat(r)),!/^[0-9]{4}[.]{0,1}[0-9]{2}[.]{0,1}[0-9]{3}$/.test(r))return{meta:{},valid:!1};if(r=r.replace(/\./g,""),0===parseInt(r,10))return{meta:{},valid:!1};for(var a=0,e=r.length,s=0;s9&&(s=Math.floor(s/10)+s%10),e+=s;return 10==(e=10-(e+4)%10)&&(e=0),{meta:{},valid:"".concat(e)===r.substr(7,1)}}(m);break;case"be":p=function(t){var r=t;return/^BE[0]?[0-9]{9}$/.test(r)&&(r=r.substr(2)),/^[0]?[0-9]{9}$/.test(r)?(9===r.length&&(r="0".concat(r)),"0"===r.substr(1,1)?{meta:{},valid:!1}:{meta:{},valid:(parseInt(r.substr(0,8),10)+parseInt(r.substr(8,2),10))%97==0}):{meta:{},valid:!1}}(m);break;case"bg":p=function(t){var a=t;if(/^BG[0-9]{9,10}$/.test(a)&&(a=a.substr(2)),!/^[0-9]{9,10}$/.test(a))return{meta:{},valid:!1};var e=0,s=0;if(9===a.length){for(s=0;s<8;s++)e+=parseInt(a.charAt(s),10)*(s+1);if(10==(e%=11)){for(e=0,s=0;s<8;s++)e+=parseInt(a.charAt(s),10)*(s+3);e%=11}return{meta:{},valid:"".concat(e%=10)===a.substr(8)}}return{meta:{},valid:function(t){var a=parseInt(t.substr(0,2),10)+1900,e=parseInt(t.substr(2,2),10),s=parseInt(t.substr(4,2),10);if(e>40?(a+=100,e-=40):e>20&&(a-=100,e-=20),!r(a,e,s))return!1;for(var n=[2,4,8,5,10,9,7,3,6],i=0,u=0;u<9;u++)i+=parseInt(t.charAt(u),10)*n[u];return"".concat(i=i%11%10)===t.substr(9,1)}(a)||function(t){for(var r=[21,19,17,13,11,9,7,3,1],a=0,e=0;e<9;e++)a+=parseInt(t.charAt(e),10)*r[e];return"".concat(a%=10)===t.substr(9,1)}(a)||function(t){for(var r=[4,3,2,7,6,5,4,3,2],a=0,e=0;e<9;e++)a+=parseInt(t.charAt(e),10)*r[e];return 10!=(a=11-a%11)&&(11===a&&(a=0),"".concat(a)===t.substr(9,1))}(a)}}(m);break;case"br":p=function(t){if(""===t)return{meta:{},valid:!0};var r=t.replace(/[^\d]+/g,"");if(""===r||14!==r.length)return{meta:{},valid:!1};if("00000000000000"===r||"11111111111111"===r||"22222222222222"===r||"33333333333333"===r||"44444444444444"===r||"55555555555555"===r||"66666666666666"===r||"77777777777777"===r||"88888888888888"===r||"99999999999999"===r)return{meta:{},valid:!1};var a,e=r.length-2,s=r.substring(0,e),n=r.substring(e),i=0,u=e-7;for(a=e;a>=1;a--)i+=parseInt(s.charAt(e-a),10)*u--,u<2&&(u=9);var c=i%11<2?0:11-i%11;if(c!==parseInt(n.charAt(0),10))return{meta:{},valid:!1};for(e+=1,s=r.substring(0,e),i=0,u=e-7,a=e;a>=1;a--)i+=parseInt(s.charAt(e-a),10)*u--,u<2&&(u=9);return{meta:{},valid:(c=i%11<2?0:11-i%11)===parseInt(n.charAt(1),10)}}(m);break;case"ch":p=function(t){var r=t;if(/^CHE[0-9]{9}(MWST|TVA|IVA|TPV)?$/.test(r)&&(r=r.substr(2)),!/^E[0-9]{9}(MWST|TVA|IVA|TPV)?$/.test(r))return{meta:{},valid:!1};r=r.substr(1);for(var a=[5,4,3,2,7,6,5,4],e=0,s=0;s<8;s++)e+=parseInt(r.charAt(s),10)*a[s];return 10==(e=11-e%11)?{meta:{},valid:!1}:(11===e&&(e=0),{meta:{},valid:"".concat(e)===r.substr(8,1)})}(m);break;case"cy":p=function(t){var r=t;if(/^CY[0-5|9][0-9]{7}[A-Z]$/.test(r)&&(r=r.substr(2)),!/^[0-5|9][0-9]{7}[A-Z]$/.test(r))return{meta:{},valid:!1};if("12"===r.substr(0,2))return{meta:{},valid:!1};for(var a=0,e={0:1,1:0,2:5,3:7,4:9,5:13,6:15,7:17,8:19,9:21},s=0;s<8;s++){var n=parseInt(r.charAt(s),10);s%2==0&&(n=e["".concat(n)]),a+=n}return{meta:{},valid:"".concat("ABCDEFGHIJKLMNOPQRSTUVWXYZ"[a%26])===r.substr(8,1)}}(m);break;case"cz":p=function(t){var r=t;if(/^CZ[0-9]{8,10}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{8,10}$/.test(r))return{meta:{},valid:!1};var e=0,s=0;if(8===r.length){if("9"==="".concat(r.charAt(0)))return{meta:{},valid:!1};for(e=0,s=0;s<7;s++)e+=parseInt(r.charAt(s),10)*(8-s);return 10==(e=11-e%11)&&(e=0),11===e&&(e=1),{meta:{},valid:"".concat(e)===r.substr(7,1)}}if(9===r.length&&"6"==="".concat(r.charAt(0))){for(e=0,s=0;s<7;s++)e+=parseInt(r.charAt(s+1),10)*(8-s);return 10==(e=11-e%11)&&(e=0),11===e&&(e=1),{meta:{},valid:"".concat(e=[8,7,6,5,4,3,2,1,0,9,10][e-1])===r.substr(8,1)}}if(9===r.length||10===r.length){var n=1900+parseInt(r.substr(0,2),10),i=parseInt(r.substr(2,2),10)%50%20,u=parseInt(r.substr(4,2),10);if(9===r.length){if(n>=1980&&(n-=100),n>1953)return{meta:{},valid:!1}}else n<1954&&(n+=100);if(!a(n,i,u))return{meta:{},valid:!1};if(10===r.length){var c=parseInt(r.substr(0,9),10)%11;return n<1985&&(c%=10),{meta:{},valid:"".concat(c)===r.substr(9,1)}}return{meta:{},valid:!0}}return{meta:{},valid:!1}}(m);break;case"de":p=function(t){var r=t;return/^DE[0-9]{9}$/.test(r)&&(r=r.substr(2)),/^[1-9][0-9]{8}$/.test(r)?{meta:{},valid:e(r)}:{meta:{},valid:!1}}(m);break;case"dk":p=function(t){var r=t;if(/^DK[0-9]{8}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{8}$/.test(r))return{meta:{},valid:!1};for(var a=0,e=[2,7,6,5,4,3,2,1],s=0;s<8;s++)a+=parseInt(r.charAt(s),10)*e[s];return{meta:{},valid:a%11==0}}(m);break;case"ee":p=function(t){var r=t;if(/^EE[0-9]{9}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{9}$/.test(r))return{meta:{},valid:!1};for(var a=0,e=[3,7,1,3,7,1,3,7,1],s=0;s<9;s++)a+=parseInt(r.charAt(s),10)*e[s];return{meta:{},valid:a%10==0}}(m);break;case"el":case"gr":p=n(m);break;case"es":p=function(t){var r=t;if(/^ES[0-9A-Z][0-9]{7}[0-9A-Z]$/.test(r)&&(r=r.substr(2)),!/^[0-9A-Z][0-9]{7}[0-9A-Z]$/.test(r))return{meta:{},valid:!1};var a,e,s=r.charAt(0);return/^[0-9]$/.test(s)?{meta:{type:"DNI"},valid:(a=r,e=parseInt(a.substr(0,8),10),"".concat("TRWAGMYFPDXBNJZSQVHLCKE"[e%23])===a.substr(8,1))}:/^[XYZ]$/.test(s)?{meta:{type:"NIE"},valid:function(t){var r=["XYZ".indexOf(t.charAt(0)),t.substr(1)].join(""),a="TRWAGMYFPDXBNJZSQVHLCKE"[parseInt(r,10)%23];return"".concat(a)===t.substr(8,1)}(r)}:{meta:{type:"CIF"},valid:function(t){var r,a=t.charAt(0);if(-1!=="KLM".indexOf(a))return r=parseInt(t.substr(1,8),10),"".concat(r="TRWAGMYFPDXBNJZSQVHLCKE"[r%23])===t.substr(8,1);if(-1!=="ABCDEFGHJNPQRSUVW".indexOf(a)){for(var e=[2,1,2,1,2,1,2],s=0,n=0,i=0;i<7;i++)(n=parseInt(t.charAt(i+1),10)*e[i])>9&&(n=Math.floor(n/10)+n%10),s+=n;return 10==(s=10-s%10)&&(s=0),"".concat(s)===t.substr(8,1)||"JABCDEFGHI"[s]===t.substr(8,1)}return!1}(r)}}(m);break;case"fi":p=function(t){var r=t;if(/^FI[0-9]{8}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{8}$/.test(r))return{meta:{},valid:!1};for(var a=[7,9,10,5,8,4,2,1],e=0,s=0;s<8;s++)e+=parseInt(r.charAt(s),10)*a[s];return{meta:{},valid:e%11==0}}(m);break;case"fr":p=function(t){var r=t;if(/^FR[0-9A-Z]{2}[0-9]{9}$/.test(r)&&(r=r.substr(2)),!/^[0-9A-Z]{2}[0-9]{9}$/.test(r))return{meta:{},valid:!1};if("000"!==r.substr(2,4))return{meta:{},valid:s(r.substr(2))};if(/^[0-9]{2}$/.test(r.substr(0,2)))return{meta:{},valid:r.substr(0,2)==="".concat(parseInt(r.substr(2)+"12",10)%97)};var a="0123456789ABCDEFGHJKLMNPQRSTUVWXYZ",e=void 0;return e=/^[0-9]$/.test(r.charAt(0))?24*a.indexOf(r.charAt(0))+a.indexOf(r.charAt(1))-10:34*a.indexOf(r.charAt(0))+a.indexOf(r.charAt(1))-100,{meta:{},valid:(parseInt(r.substr(2),10)+1+Math.floor(e/11))%11==e%11}}(m);break;case"gb":p=function(t){var r=t;if((/^GB[0-9]{9}$/.test(r)||/^GB[0-9]{12}$/.test(r)||/^GBGD[0-9]{3}$/.test(r)||/^GBHA[0-9]{3}$/.test(r)||/^GB(GD|HA)8888[0-9]{5}$/.test(r))&&(r=r.substr(2)),!(/^[0-9]{9}$/.test(r)||/^[0-9]{12}$/.test(r)||/^GD[0-9]{3}$/.test(r)||/^HA[0-9]{3}$/.test(r)||/^(GD|HA)8888[0-9]{5}$/.test(r)))return{meta:{},valid:!1};var a=r.length;if(5===a){var e=r.substr(0,2),s=parseInt(r.substr(2),10);return{meta:{},valid:"GD"===e&&s<500||"HA"===e&&s>=500}}if(11===a&&("GD8888"===r.substr(0,6)||"HA8888"===r.substr(0,6)))return"GD"===r.substr(0,2)&&parseInt(r.substr(6,3),10)>=500||"HA"===r.substr(0,2)&&parseInt(r.substr(6,3),10)<500?{meta:{},valid:!1}:{meta:{},valid:parseInt(r.substr(6,3),10)%97===parseInt(r.substr(9,2),10)};if(9===a||12===a){for(var n=[8,7,6,5,4,3,2,10,1],i=0,u=0;u<9;u++)i+=parseInt(r.charAt(u),10)*n[u];return i%=97,{meta:{},valid:parseInt(r.substr(0,3),10)>=100?0===i||42===i||55===i:0===i}}return{meta:{},valid:!0}}(m);break;case"hr":p=function(t){var r=t;return/^HR[0-9]{11}$/.test(r)&&(r=r.substr(2)),/^[0-9]{11}$/.test(r)?{meta:{},valid:i(r)}:{meta:{},valid:!1}}(m);break;case"hu":p=function(t){var r=t;if(/^HU[0-9]{8}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{8}$/.test(r))return{meta:{},valid:!1};for(var a=[9,7,3,1,9,7,3,1],e=0,s=0;s<8;s++)e+=parseInt(r.charAt(s),10)*a[s];return{meta:{},valid:e%10==0}}(m);break;case"ie":p=function(t){var r=t;if(/^IE[0-9][0-9A-Z*+][0-9]{5}[A-Z]{1,2}$/.test(r)&&(r=r.substr(2)),!/^[0-9][0-9A-Z*+][0-9]{5}[A-Z]{1,2}$/.test(r))return{meta:{},valid:!1};var a=function(t){for(var r=t;r.length<7;)r="0".concat(r);for(var a="WABCDEFGHIJKLMNOPQRSTUV",e=0,s=0;s<7;s++)e+=parseInt(r.charAt(s),10)*(8-s);return e+=9*a.indexOf(r.substr(7)),a[e%23]};return/^[0-9]+$/.test(r.substr(0,7))?{meta:{},valid:r.charAt(7)===a("".concat(r.substr(0,7)).concat(r.substr(8)))}:-1!=="ABCDEFGHIJKLMNOPQRSTUVWXYZ+*".indexOf(r.charAt(1))?{meta:{},valid:r.charAt(7)===a("".concat(r.substr(2,5)).concat(r.substr(0,1)))}:{meta:{},valid:!0}}(m);break;case"is":p=function(t){var r=t;return/^IS[0-9]{5,6}$/.test(r)&&(r=r.substr(2)),{meta:{},valid:/^[0-9]{5,6}$/.test(r)}}(m);break;case"it":p=function(t){var r=t;if(/^IT[0-9]{11}$/.test(r)&&(r=r.substr(2)),!/^[0-9]{11}$/.test(r))return{meta:{},valid:!1};if(0===parseInt(r.substr(0,7),10))return{meta:{},valid:!1};var a=parseInt(r.substr(7,3),10);return a<1||a>201&&999!==a&&888!==a?{meta:{},valid:!1}:{meta:{},valid:u(r)}}(m);break;case"lt":p=function(t){var r=t;if(/^LT([0-9]{7}1[0-9]|[0-9]{10}1[0-9])$/.test(r)&&(r=r.substr(2)),!/^([0-9]{7}1[0-9]|[0-9]{10}1[0-9])$/.test(r))return{meta:{},valid:!1};var a,e=r.length,s=0;for(a=0;a3){for(n=0,i=[9,1,4,8,3,10,2,5,7,6,1],a=0;a9&&(e=0),{meta:{},valid:"".concat(e)===r.substr(8,1)}}(m);break;case"ro":p=function(t){var r=t;if(/^RO[1-9][0-9]{1,9}$/.test(r)&&(r=r.substr(2)),!/^[1-9][0-9]{1,9}$/.test(r))return{meta:{},valid:!1};for(var a=r.length,e=[7,5,3,2,1,7,5,3,2].slice(10-a),s=0,n=0;n9&&(s%=10),{meta:{},valid:"".concat(s)===r.substr(9,1)}}if(12===r.length){var n=[7,2,4,10,3,5,9,4,6,8,0],i=[3,7,2,4,10,3,5,9,4,6,8,0],u=0,c=0;for(a=0;a<11;a++)u+=parseInt(r.charAt(a),10)*n[a],c+=parseInt(r.charAt(a),10)*i[a];return(u%=11)>9&&(u%=10),(c%=11)>9&&(c%=10),{meta:{},valid:"".concat(u)===r.substr(10,1)&&"".concat(c)===r.substr(11,1)}}return{meta:{},valid:!0}}(m);break;case"se":p=function(t){var r=t;return/^SE[0-9]{10}01$/.test(r)&&(r=r.substr(2)),/^[0-9]{10}01$/.test(r)?(r=r.substr(0,10),{meta:{},valid:l(r)}):{meta:{},valid:!1}}(m);break;case"si":p=function(t){var r=t.match(/^(SI)?([1-9][0-9]{7})$/);if(!r)return{meta:{},valid:!1};for(var a=r[1]?t.substr(2):t,e=[8,7,6,5,4,3,2],s=0,n=0;n<7;n++)s+=parseInt(a.charAt(n),10)*e[n];return 10==(s=11-s%11)&&(s=0),{meta:{},valid:"".concat(s)===a.substr(7,1)}}(m);break;case"sk":p=function(t){var r=t;return/^SK[1-9][0-9][(2-4)|(6-9)][0-9]{7}$/.test(r)&&(r=r.substr(2)),/^[1-9][0-9][(2-4)|(6-9)][0-9]{7}$/.test(r)?{meta:{},valid:parseInt(r,10)%11==0}:{meta:{},valid:!1}}(m);break;case"ve":p=function(t){var r=t;if(/^VE[VEJPG][0-9]{9}$/.test(r)&&(r=r.substr(2)),!/^[VEJPG][0-9]{9}$/.test(r))return{meta:{},valid:!1};for(var a=[3,2,7,6,5,4,3,2],e={E:8,G:20,J:12,P:16,V:4}[r.charAt(0)],s=0;s<8;s++)e+=parseInt(r.charAt(s+1),10)*a[s];return 11!=(e=11-e%11)&&10!==e||(e=0),{meta:{},valid:"".concat(e)===r.substr(9,1)}}(m);break;case"za":p=function(t){var r=t;return/^ZA4[0-9]{9}$/.test(r)&&(r=r.substr(2)),{meta:{},valid:/^4[0-9]{9}$/.test(r)}}(m)}var I=f(d.l10n&&d.l10n.vat?h.message||d.l10n.vat.country:h.message,d.l10n&&d.l10n.vat&&d.l10n.vat.countries?d.l10n.vat.countries[A.toUpperCase()]:A.toUpperCase());return Object.assign({},{message:I},p)}}}})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.js new file mode 100644 index 0000000..49b8dfa --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.js @@ -0,0 +1,78 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.FormValidation = global.FormValidation || {}, global.FormValidation.validators = global.FormValidation.validators || {}, global.FormValidation.validators.vin = factory())); +})(this, (function () { 'use strict'; + + /** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + */ + function vin() { + return { + /** + * Validate an US VIN (Vehicle Identification Number) + */ + validate: function (input) { + if (input.value === '') { + return { valid: true }; + } + // Don't accept I, O, Q characters + if (!/^[a-hj-npr-z0-9]{8}[0-9xX][a-hj-npr-z0-9]{8}$/i.test(input.value)) { + return { valid: false }; + } + var v = input.value.toUpperCase(); + var chars = { + A: 1, + B: 2, + C: 3, + D: 4, + E: 5, + F: 6, + G: 7, + H: 8, + J: 1, + K: 2, + L: 3, + M: 4, + N: 5, + P: 7, + R: 9, + S: 2, + T: 3, + U: 4, + V: 5, + W: 6, + X: 7, + Y: 8, + Z: 9, + 0: 0, + 1: 1, + 2: 2, + 3: 3, + 4: 4, + 5: 5, + 6: 6, + 7: 7, + 8: 8, + 9: 9, + }; + var weights = [8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2]; + var length = v.length; + var sum = 0; + for (var i = 0; i < length; i++) { + sum += chars["".concat(v.charAt(i))] * weights[i]; + } + var reminder = "".concat(sum % 11); + if (reminder === '10') { + reminder = 'X'; + } + return { valid: reminder === v.charAt(8) }; + }, + }; + } + + return vin; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.min.js new file mode 100644 index 0000000..362997b --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-vin/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-vin + * @version 2.4.0 + */ + +!function(t,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a():"function"==typeof define&&define.amd?define(a):((t="undefined"!=typeof globalThis?globalThis:t||self).FormValidation=t.FormValidation||{},t.FormValidation.validators=t.FormValidation.validators||{},t.FormValidation.validators.vin=a())}(this,(function(){"use strict";return function(){return{validate:function(t){if(""===t.value)return{valid:!0};if(!/^[a-hj-npr-z0-9]{8}[0-9xX][a-hj-npr-z0-9]{8}$/i.test(t.value))return{valid:!1};for(var a=t.value.toUpperCase(),i={A:1,B:2,C:3,D:4,E:5,F:6,G:7,H:8,J:1,K:2,L:3,M:4,N:5,P:7,R:9,S:2,T:3,U:4,V:5,W:6,X:7,Y:8,Z:9,0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9},e=[8,7,6,5,4,3,2,10,0,9,8,7,6,5,4,3,2],n=a.length,o=0,r=0;r + */ + var format = core.utils.format, removeUndefined = core.utils.removeUndefined; + function zipCode() { + var COUNTRY_CODES = [ + 'AT', + 'BG', + 'BR', + 'CA', + 'CH', + 'CZ', + 'DE', + 'DK', + 'ES', + 'FR', + 'GB', + 'IE', + 'IN', + 'IT', + 'MA', + 'NL', + 'PL', + 'PT', + 'RO', + 'RU', + 'SE', + 'SG', + 'SK', + 'US', + ]; + /** + * Validate United Kingdom postcode + * @returns {boolean} + */ + var gb = function (value) { + var firstChar = '[ABCDEFGHIJKLMNOPRSTUWYZ]'; // Does not accept QVX + var secondChar = '[ABCDEFGHKLMNOPQRSTUVWXY]'; // Does not accept IJZ + var thirdChar = '[ABCDEFGHJKPMNRSTUVWXY]'; + var fourthChar = '[ABEHMNPRVWXY]'; + var fifthChar = '[ABDEFGHJLNPQRSTUWXYZ]'; + var regexps = [ + // AN NAA, ANN NAA, AAN NAA, AANN NAA format + new RegExp("^(".concat(firstChar, "{1}").concat(secondChar, "?[0-9]{1,2})(\\s*)([0-9]{1}").concat(fifthChar, "{2})$"), 'i'), + // ANA NAA + new RegExp("^(".concat(firstChar, "{1}[0-9]{1}").concat(thirdChar, "{1})(\\s*)([0-9]{1}").concat(fifthChar, "{2})$"), 'i'), + // AANA NAA + new RegExp("^(".concat(firstChar, "{1}").concat(secondChar, "{1}?[0-9]{1}").concat(fourthChar, "{1})(\\s*)([0-9]{1}").concat(fifthChar, "{2})$"), 'i'), + // BFPO postcodes + new RegExp('^(BF1)(\\s*)([0-6]{1}[ABDEFGHJLNPQRST]{1}[ABDEFGHJLNPQRSTUWZYZ]{1})$', 'i'), + /^(GIR)(\s*)(0AA)$/i, + /^(BFPO)(\s*)([0-9]{1,4})$/i, + /^(BFPO)(\s*)(c\/o\s*[0-9]{1,3})$/i, + /^([A-Z]{4})(\s*)(1ZZ)$/i, + /^(AI-2640)$/i, // Anguilla + ]; + for (var _i = 0, regexps_1 = regexps; _i < regexps_1.length; _i++) { + var reg = regexps_1[_i]; + if (reg.test(value)) { + return true; + } + } + return false; + }; + return { + /** + * Return true if and only if the input value is a valid country zip code + */ + validate: function (input) { + var opts = Object.assign({}, { message: '' }, removeUndefined(input.options)); + if (input.value === '' || !opts.country) { + return { valid: true }; + } + var country = input.value.substr(0, 2); + if ('function' === typeof opts.country) { + country = opts.country.call(this); + } + else { + country = opts.country; + } + if (!country || COUNTRY_CODES.indexOf(country.toUpperCase()) === -1) { + return { valid: true }; + } + var isValid = false; + country = country.toUpperCase(); + switch (country) { + // http://en.wikipedia.org/wiki/List_of_postal_codes_in_Austria + case 'AT': + isValid = /^([1-9]{1})(\d{3})$/.test(input.value); + break; + case 'BG': + isValid = /^([1-9]{1}[0-9]{3})$/.test(input.value); + break; + case 'BR': + isValid = /^(\d{2})([.]?)(\d{3})([-]?)(\d{3})$/.test(input.value); + break; + case 'CA': + isValid = + /^(?:A|B|C|E|G|H|J|K|L|M|N|P|R|S|T|V|X|Y){1}[0-9]{1}(?:A|B|C|E|G|H|J|K|L|M|N|P|R|S|T|V|W|X|Y|Z){1}\s?[0-9]{1}(?:A|B|C|E|G|H|J|K|L|M|N|P|R|S|T|V|W|X|Y|Z){1}[0-9]{1}$/i.test(input.value); + break; + case 'CH': + isValid = /^([1-9]{1})(\d{3})$/.test(input.value); + break; + case 'CZ': + // Test: http://regexr.com/39hhr + isValid = /^(\d{3})([ ]?)(\d{2})$/.test(input.value); + break; + // http://stackoverflow.com/questions/7926687/regular-expression-german-zip-codes + case 'DE': + isValid = /^(?!01000|99999)(0[1-9]\d{3}|[1-9]\d{4})$/.test(input.value); + break; + case 'DK': + isValid = /^(DK(-|\s)?)?\d{4}$/i.test(input.value); + break; + // Zip codes in Spain go from 01XXX to 52XXX. + // Test: http://refiddle.com/1ufo + case 'ES': + isValid = /^(?:0[1-9]|[1-4][0-9]|5[0-2])\d{3}$/.test(input.value); + break; + // http://en.wikipedia.org/wiki/Postal_codes_in_France + case 'FR': + isValid = /^[0-9]{5}$/i.test(input.value); + break; + case 'GB': + isValid = gb(input.value); + break; + // Indian PIN (Postal Index Number) validation + // http://en.wikipedia.org/wiki/Postal_Index_Number + // Test: http://regex101.com/r/kV0vH3/1 + case 'IN': + isValid = /^\d{3}\s?\d{3}$/.test(input.value); + break; + // http://www.eircode.ie/docs/default-source/Common/ + // prepare-your-business-for-eircode---published-v2.pdf?sfvrsn=2 + // Test: http://refiddle.com/1kpl + case 'IE': + isValid = /^(D6W|[ACDEFHKNPRTVWXY]\d{2})\s[0-9ACDEFHKNPRTVWXY]{4}$/.test(input.value); + break; + // http://en.wikipedia.org/wiki/List_of_postal_codes_in_Italy + case 'IT': + isValid = /^(I-|IT-)?\d{5}$/i.test(input.value); + break; + // http://en.wikipedia.org/wiki/List_of_postal_codes_in_Morocco + case 'MA': + isValid = /^[1-9][0-9]{4}$/i.test(input.value); + break; + // http://en.wikipedia.org/wiki/Postal_codes_in_the_Netherlands + case 'NL': + isValid = /^[1-9][0-9]{3} ?(?!sa|sd|ss)[a-z]{2}$/i.test(input.value); + break; + // http://en.wikipedia.org/wiki/List_of_postal_codes_in_Poland + case 'PL': + isValid = /^[0-9]{2}-[0-9]{3}$/.test(input.value); + break; + // Test: http://refiddle.com/1l2t + case 'PT': + isValid = /^[1-9]\d{3}-\d{3}$/.test(input.value); + break; + case 'RO': + isValid = /^(0[1-8]{1}|[1-9]{1}[0-5]{1})?[0-9]{4}$/i.test(input.value); + break; + case 'RU': + isValid = /^[0-9]{6}$/i.test(input.value); + break; + case 'SE': + isValid = /^(S-)?\d{3}\s?\d{2}$/i.test(input.value); + break; + case 'SG': + isValid = /^([0][1-9]|[1-6][0-9]|[7]([0-3]|[5-9])|[8][0-2])(\d{4})$/i.test(input.value); + break; + case 'SK': + // Test: http://regexr.com/39hhr + isValid = /^(\d{3})([ ]?)(\d{2})$/.test(input.value); + break; + case 'US': + default: + isValid = /^\d{4,5}([-]?\d{4})?$/.test(input.value); + break; + } + return { + message: format(input.l10n && input.l10n.zipCode ? opts.message || input.l10n.zipCode.country : opts.message, input.l10n && input.l10n.zipCode && input.l10n.zipCode.countries + ? input.l10n.zipCode.countries[country] + : country), + valid: isValid, + }; + }, + }; + } + + return zipCode; + +})); diff --git a/resources/_keenthemes/src/plugins/@form-validation/umd/validator-zip-code/index.min.js b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-zip-code/index.min.js new file mode 100644 index 0000000..01d8236 --- /dev/null +++ b/resources/_keenthemes/src/plugins/@form-validation/umd/validator-zip-code/index.min.js @@ -0,0 +1,11 @@ +/** + * FormValidation (https://formvalidation.io) + * The best validation library for JavaScript + * (c) 2013 - 2023 Nguyen Huu Phuoc + * + * @license https://formvalidation.io/license + * @package @form-validation/validator-zip-code + * @version 2.4.0 + */ + +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?module.exports=a(require("@form-validation/core")):"function"==typeof define&&define.amd?define(["@form-validation/core"],a):((e="undefined"!=typeof globalThis?globalThis:e||self).FormValidation=e.FormValidation||{},e.FormValidation.validators=e.FormValidation.validators||{},e.FormValidation.validators.zipCode=a(e.FormValidation))}(this,(function(e){"use strict";var a=e.utils.format,t=e.utils.removeUndefined;return function(){var e=["AT","BG","BR","CA","CH","CZ","DE","DK","ES","FR","GB","IE","IN","IT","MA","NL","PL","PT","RO","RU","SE","SG","SK","US"];return{validate:function(s){var i=Object.assign({},{message:""},t(s.options));if(""===s.value||!i.country)return{valid:!0};var r=s.value.substr(0,2);if(!(r="function"==typeof i.country?i.country.call(this):i.country)||-1===e.indexOf(r.toUpperCase()))return{valid:!0};var o=!1;switch(r=r.toUpperCase()){case"AT":case"CH":o=/^([1-9]{1})(\d{3})$/.test(s.value);break;case"BG":o=/^([1-9]{1}[0-9]{3})$/.test(s.value);break;case"BR":o=/^(\d{2})([.]?)(\d{3})([-]?)(\d{3})$/.test(s.value);break;case"CA":o=/^(?:A|B|C|E|G|H|J|K|L|M|N|P|R|S|T|V|X|Y){1}[0-9]{1}(?:A|B|C|E|G|H|J|K|L|M|N|P|R|S|T|V|W|X|Y|Z){1}\s?[0-9]{1}(?:A|B|C|E|G|H|J|K|L|M|N|P|R|S|T|V|W|X|Y|Z){1}[0-9]{1}$/i.test(s.value);break;case"CZ":case"SK":o=/^(\d{3})([ ]?)(\d{2})$/.test(s.value);break;case"DE":o=/^(?!01000|99999)(0[1-9]\d{3}|[1-9]\d{4})$/.test(s.value);break;case"DK":o=/^(DK(-|\s)?)?\d{4}$/i.test(s.value);break;case"ES":o=/^(?:0[1-9]|[1-4][0-9]|5[0-2])\d{3}$/.test(s.value);break;case"FR":o=/^[0-9]{5}$/i.test(s.value);break;case"GB":o=function(e){for(var a="[ABCDEFGHIJKLMNOPRSTUWYZ]",t="[ABCDEFGHKLMNOPQRSTUVWXY]",s="[ABDEFGHJLNPQRSTUWXYZ]",i=0,r=[new RegExp("^(".concat(a,"{1}").concat(t,"?[0-9]{1,2})(\\s*)([0-9]{1}").concat(s,"{2})$"),"i"),new RegExp("^(".concat(a,"{1}[0-9]{1}").concat("[ABCDEFGHJKPMNRSTUVWXY]","{1})(\\s*)([0-9]{1}").concat(s,"{2})$"),"i"),new RegExp("^(".concat(a,"{1}").concat(t,"{1}?[0-9]{1}").concat("[ABEHMNPRVWXY]","{1})(\\s*)([0-9]{1}").concat(s,"{2})$"),"i"),new RegExp("^(BF1)(\\s*)([0-6]{1}[ABDEFGHJLNPQRST]{1}[ABDEFGHJLNPQRSTUWZYZ]{1})$","i"),/^(GIR)(\s*)(0AA)$/i,/^(BFPO)(\s*)([0-9]{1,4})$/i,/^(BFPO)(\s*)(c\/o\s*[0-9]{1,3})$/i,/^([A-Z]{4})(\s*)(1ZZ)$/i,/^(AI-2640)$/i];i
-

Font Name: icomoon (Glyphs: 573)

+

Font Name: KeenIcons (Glyphs: 573)

-

Grid Size: Unknown

+

Grid Size: 24

@@ -8047,12 +8047,12 @@ -
  +
 
-

Generated by IcoMoon

+

Generated by IcoMoon

diff --git a/resources/_keenthemes/src/plugins/keenicons/duotone/style.css b/resources/_keenthemes/src/plugins/keenicons/duotone/style.css index 0b8875c..83ec6f2 100644 --- a/resources/_keenthemes/src/plugins/keenicons/duotone/style.css +++ b/resources/_keenthemes/src/plugins/keenicons/duotone/style.css @@ -19,10 +19,23 @@ font-variant: normal; text-transform: none; line-height: 1; - +/* Better Font Rendering =========== */ display: inline-flex; - direction: ltr; + direction: ltr; + position: relative; + display: inline-flex; + direction: ltr; + position: relative; + display: inline-flex; + direction: ltr; + position: relative; + display: inline-flex; + direction: ltr; + position: relative; + display: inline-flex; + direction: ltr; + position: relative; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } @@ -34,7 +47,7 @@ } .ki-abstract-1 .path2:before { content: "\e901"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-2 .path1:before { @@ -44,7 +57,7 @@ } .ki-abstract-2 .path2:before { content: "\e903"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-3 .path1:before { @@ -54,7 +67,7 @@ } .ki-abstract-3 .path2:before { content: "\e905"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-4 .path1:before { @@ -64,7 +77,7 @@ } .ki-abstract-4 .path2:before { content: "\e907"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-5 .path1:before { @@ -74,7 +87,7 @@ } .ki-abstract-5 .path2:before { content: "\e909"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-6:before { @@ -87,7 +100,7 @@ } .ki-abstract-7 .path2:before { content: "\e90c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-8 .path1:before { @@ -97,7 +110,7 @@ } .ki-abstract-8 .path2:before { content: "\e90e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-9 .path1:before { @@ -107,7 +120,7 @@ } .ki-abstract-9 .path2:before { content: "\e910"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-10 .path1:before { @@ -117,7 +130,7 @@ } .ki-abstract-10 .path2:before { content: "\e912"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-11 .path1:before { @@ -127,7 +140,7 @@ } .ki-abstract-11 .path2:before { content: "\e914"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-12 .path1:before { @@ -137,7 +150,7 @@ } .ki-abstract-12 .path2:before { content: "\e916"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-13 .path1:before { @@ -147,7 +160,7 @@ } .ki-abstract-13 .path2:before { content: "\e918"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-14 .path1:before { @@ -156,7 +169,7 @@ } .ki-abstract-14 .path2:before { content: "\e91a"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -167,7 +180,7 @@ } .ki-abstract-15 .path2:before { content: "\e91c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-16 .path1:before { @@ -177,7 +190,7 @@ } .ki-abstract-16 .path2:before { content: "\e91e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-17 .path1:before { @@ -186,7 +199,7 @@ } .ki-abstract-17 .path2:before { content: "\e920"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -196,7 +209,7 @@ } .ki-abstract-18 .path2:before { content: "\e922"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -206,7 +219,7 @@ } .ki-abstract-19 .path2:before { content: "\e924"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -216,7 +229,7 @@ } .ki-abstract-20 .path2:before { content: "\e926"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -227,7 +240,7 @@ } .ki-abstract-21 .path2:before { content: "\e928"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-22 .path1:before { @@ -237,7 +250,7 @@ } .ki-abstract-22 .path2:before { content: "\e92a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-23 .path1:before { @@ -247,7 +260,7 @@ } .ki-abstract-23 .path2:before { content: "\e92c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-24 .path1:before { @@ -256,7 +269,7 @@ } .ki-abstract-24 .path2:before { content: "\e92e"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -267,7 +280,7 @@ } .ki-abstract-25 .path2:before { content: "\e930"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-26 .path1:before { @@ -277,7 +290,7 @@ } .ki-abstract-26 .path2:before { content: "\e932"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-27 .path1:before { @@ -286,7 +299,7 @@ } .ki-abstract-27 .path2:before { content: "\e934"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -296,7 +309,7 @@ } .ki-abstract-28 .path2:before { content: "\e936"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -306,7 +319,7 @@ } .ki-abstract-29 .path2:before { content: "\e938"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -316,7 +329,7 @@ } .ki-abstract-30 .path2:before { content: "\e93a"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -326,7 +339,7 @@ } .ki-abstract-31 .path2:before { content: "\e93c"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -336,7 +349,7 @@ } .ki-abstract-32 .path2:before { content: "\e93e"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -347,7 +360,7 @@ } .ki-abstract-33 .path2:before { content: "\e940"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-34 .path1:before { @@ -357,7 +370,7 @@ } .ki-abstract-34 .path2:before { content: "\e942"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-35 .path1:before { @@ -366,7 +379,7 @@ } .ki-abstract-35 .path2:before { content: "\e944"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -376,7 +389,7 @@ } .ki-abstract-36 .path2:before { content: "\e946"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -387,7 +400,7 @@ } .ki-abstract-37 .path2:before { content: "\e948"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-38 .path1:before { @@ -396,7 +409,7 @@ } .ki-abstract-38 .path2:before { content: "\e94a"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -407,7 +420,7 @@ } .ki-abstract-39 .path2:before { content: "\e94c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-40 .path1:before { @@ -416,7 +429,7 @@ } .ki-abstract-40 .path2:before { content: "\e94e"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -426,7 +439,7 @@ } .ki-abstract-41 .path2:before { content: "\e950"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -437,7 +450,7 @@ } .ki-abstract-42 .path2:before { content: "\e952"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-43 .path1:before { @@ -447,7 +460,7 @@ } .ki-abstract-43 .path2:before { content: "\e954"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-44 .path1:before { @@ -456,7 +469,7 @@ } .ki-abstract-44 .path2:before { content: "\e956"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -466,7 +479,7 @@ } .ki-abstract-45 .path2:before { content: "\e958"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -477,7 +490,7 @@ } .ki-abstract-46 .path2:before { content: "\e95a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-47 .path1:before { @@ -487,7 +500,7 @@ } .ki-abstract-47 .path2:before { content: "\e95c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-48 .path1:before { @@ -497,12 +510,12 @@ } .ki-abstract-48 .path2:before { content: "\e95e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-48 .path3:before { content: "\e95f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract-49 .path1:before { @@ -512,13 +525,13 @@ } .ki-abstract-49 .path2:before { content: "\e961"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-abstract-49 .path3:before { content: "\e962"; - margin-left: -1em; + position: absolute; left: 0; } .ki-abstract .path1:before { @@ -528,7 +541,7 @@ } .ki-abstract .path2:before { content: "\e964"; - margin-left: -1em; + position: absolute; left: 0; } .ki-add-files .path1:before { @@ -537,12 +550,12 @@ } .ki-add-files .path2:before { content: "\e966"; - margin-left: -1em; + position: absolute; left: 0; } .ki-add-files .path3:before { content: "\e967"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -553,7 +566,7 @@ } .ki-add-folder .path2:before { content: "\e969"; - margin-left: -1em; + position: absolute; left: 0; } .ki-add-item .path1:before { @@ -563,12 +576,12 @@ } .ki-add-item .path2:before { content: "\e96b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-add-item .path3:before { content: "\e96c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-add-notepad .path1:before { @@ -578,17 +591,17 @@ } .ki-add-notepad .path2:before { content: "\e96e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-add-notepad .path3:before { content: "\e96f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-add-notepad .path4:before { content: "\e970"; - margin-left: -1em; + position: absolute; left: 0; } .ki-address-book .path1:before { @@ -597,12 +610,12 @@ } .ki-address-book .path2:before { content: "\e972"; - margin-left: -1em; + position: absolute; left: 0; } .ki-address-book .path3:before { content: "\e973"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -613,7 +626,7 @@ } .ki-airplane-square .path2:before { content: "\e975"; - margin-left: -1em; + position: absolute; left: 0; } .ki-airplane .path1:before { @@ -623,7 +636,7 @@ } .ki-airplane .path2:before { content: "\e977"; - margin-left: -1em; + position: absolute; left: 0; } .ki-airpod .path1:before { @@ -633,12 +646,12 @@ } .ki-airpod .path2:before { content: "\e979"; - margin-left: -1em; + position: absolute; left: 0; } .ki-airpod .path3:before { content: "\e97a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-android .path1:before { @@ -648,27 +661,27 @@ } .ki-android .path2:before { content: "\e97c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-android .path3:before { content: "\e97d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-android .path4:before { content: "\e97e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-android .path5:before { content: "\e97f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-android .path6:before { content: "\e980"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -679,12 +692,12 @@ } .ki-angular .path2:before { content: "\e982"; - margin-left: -1em; + position: absolute; left: 0; } .ki-angular .path3:before { content: "\e983"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -694,7 +707,7 @@ } .ki-apple .path2:before { content: "\e985"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -705,7 +718,7 @@ } .ki-archive-tick .path2:before { content: "\e987"; - margin-left: -1em; + position: absolute; left: 0; } .ki-archive .path1:before { @@ -715,12 +728,12 @@ } .ki-archive .path2:before { content: "\e989"; - margin-left: -1em; + position: absolute; left: 0; } .ki-archive .path3:before { content: "\e98a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-circle-left .path1:before { @@ -730,7 +743,7 @@ } .ki-arrow-circle-left .path2:before { content: "\e98c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-circle-right .path1:before { @@ -740,7 +753,7 @@ } .ki-arrow-circle-right .path2:before { content: "\e98e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-diagonal .path1:before { @@ -750,12 +763,12 @@ } .ki-arrow-diagonal .path2:before { content: "\e990"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-diagonal .path3:before { content: "\e991"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-down-left .path1:before { @@ -764,7 +777,7 @@ } .ki-arrow-down-left .path2:before { content: "\e993"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -775,7 +788,7 @@ } .ki-arrow-down-refraction .path2:before { content: "\e995"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-down-right .path1:before { @@ -784,7 +797,7 @@ } .ki-arrow-down-right .path2:before { content: "\e997"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -794,7 +807,7 @@ } .ki-arrow-down .path2:before { content: "\e999"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -804,7 +817,7 @@ } .ki-arrow-left .path2:before { content: "\e99b"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -814,7 +827,7 @@ } .ki-arrow-mix .path2:before { content: "\e99d"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -825,7 +838,7 @@ } .ki-arrow-right-left .path2:before { content: "\e99f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-right .path1:before { @@ -834,7 +847,7 @@ } .ki-arrow-right .path2:before { content: "\e9a1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -845,22 +858,22 @@ } .ki-arrow-two-diagonals .path2:before { content: "\e9a3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-two-diagonals .path3:before { content: "\e9a4"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-two-diagonals .path4:before { content: "\e9a5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-two-diagonals .path5:before { content: "\e9a6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-up-down .path1:before { @@ -870,7 +883,7 @@ } .ki-arrow-up-down .path2:before { content: "\e9a8"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-up-left .path1:before { @@ -879,7 +892,7 @@ } .ki-arrow-up-left .path2:before { content: "\e9aa"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -890,7 +903,7 @@ } .ki-arrow-up-refraction .path2:before { content: "\e9ac"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrow-up-right .path1:before { @@ -899,7 +912,7 @@ } .ki-arrow-up-right .path2:before { content: "\e9ae"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -909,7 +922,7 @@ } .ki-arrow-up .path2:before { content: "\e9b0"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -919,7 +932,7 @@ } .ki-arrow-zigzag .path2:before { content: "\e9b2"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -930,7 +943,7 @@ } .ki-arrows-circle .path2:before { content: "\e9b4"; - margin-left: -1em; + position: absolute; left: 0; } .ki-arrows-loop .path1:before { @@ -940,7 +953,7 @@ } .ki-arrows-loop .path2:before { content: "\e9b6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-artificial-intelligence .path1:before { @@ -950,37 +963,37 @@ } .ki-artificial-intelligence .path2:before { content: "\e9b8"; - margin-left: -1em; + position: absolute; left: 0; } .ki-artificial-intelligence .path3:before { content: "\e9b9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-artificial-intelligence .path4:before { content: "\e9ba"; - margin-left: -1em; + position: absolute; left: 0; } .ki-artificial-intelligence .path5:before { content: "\e9bb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-artificial-intelligence .path6:before { content: "\e9bc"; - margin-left: -1em; + position: absolute; left: 0; } .ki-artificial-intelligence .path7:before { content: "\e9bd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-artificial-intelligence .path8:before { content: "\e9be"; - margin-left: -1em; + position: absolute; left: 0; } .ki-auto-brightness .path1:before { @@ -990,12 +1003,12 @@ } .ki-auto-brightness .path2:before { content: "\e9c0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-auto-brightness .path3:before { content: "\e9c1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-avalanche .path1:before { @@ -1005,7 +1018,7 @@ } .ki-avalanche .path2:before { content: "\e9c3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-award .path1:before { @@ -1015,12 +1028,12 @@ } .ki-award .path2:before { content: "\e9c5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-award .path3:before { content: "\e9c6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-badge .path1:before { @@ -1030,22 +1043,22 @@ } .ki-badge .path2:before { content: "\e9c8"; - margin-left: -1em; + position: absolute; left: 0; } .ki-badge .path3:before { content: "\e9c9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-badge .path4:before { content: "\e9ca"; - margin-left: -1em; + position: absolute; left: 0; } .ki-badge .path5:before { content: "\e9cb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bandage .path1:before { @@ -1055,7 +1068,7 @@ } .ki-bandage .path2:before { content: "\e9cd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bank .path1:before { @@ -1065,7 +1078,7 @@ } .ki-bank .path2:before { content: "\e9cf"; - margin-left: -1em; + position: absolute; left: 0; } .ki-barcode .path1:before { @@ -1074,37 +1087,37 @@ } .ki-barcode .path2:before { content: "\e9d1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-barcode .path3:before { content: "\e9d2"; - margin-left: -1em; + position: absolute; left: 0; } .ki-barcode .path4:before { content: "\e9d3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-barcode .path5:before { content: "\e9d4"; - margin-left: -1em; + position: absolute; left: 0; } .ki-barcode .path6:before { content: "\e9d5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-barcode .path7:before { content: "\e9d6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-barcode .path8:before { content: "\e9d7"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -1115,17 +1128,17 @@ } .ki-basket-ok .path2:before { content: "\e9d9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-basket-ok .path3:before { content: "\e9da"; - margin-left: -1em; + position: absolute; left: 0; } .ki-basket-ok .path4:before { content: "\e9db"; - margin-left: -1em; + position: absolute; left: 0; } .ki-basket .path1:before { @@ -1135,17 +1148,17 @@ } .ki-basket .path2:before { content: "\e9dd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-basket .path3:before { content: "\e9de"; - margin-left: -1em; + position: absolute; left: 0; } .ki-basket .path4:before { content: "\e9df"; - margin-left: -1em; + position: absolute; left: 0; } .ki-behance .path1:before { @@ -1154,7 +1167,7 @@ } .ki-behance .path2:before { content: "\e9e1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -1165,27 +1178,27 @@ } .ki-bill .path2:before { content: "\e9e3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bill .path3:before { content: "\e9e4"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bill .path4:before { content: "\e9e5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bill .path5:before { content: "\e9e6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bill .path6:before { content: "\e9e7"; - margin-left: -1em; + position: absolute; left: 0; } .ki-binance-usd .path1:before { @@ -1194,18 +1207,18 @@ } .ki-binance-usd .path2:before { content: "\e9e9"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-binance-usd .path3:before { content: "\e9ea"; - margin-left: -1em; + position: absolute; left: 0; } .ki-binance-usd .path4:before { content: "\e9eb"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -1216,24 +1229,24 @@ } .ki-binance .path2:before { content: "\e9ed"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-binance .path3:before { content: "\e9ee"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-binance .path4:before { content: "\e9ef"; - margin-left: -1em; + position: absolute; left: 0; } .ki-binance .path5:before { content: "\e9f0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bitcoin .path1:before { @@ -1243,7 +1256,7 @@ } .ki-bitcoin .path2:before { content: "\e9f2"; - margin-left: -1em; + position: absolute; left: 0; } .ki-black-down:before { @@ -1255,7 +1268,7 @@ } .ki-black-left-line .path2:before { content: "\e9f5"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -1268,7 +1281,7 @@ } .ki-black-right-line .path2:before { content: "\e9f8"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -1284,7 +1297,7 @@ } .ki-bluetooth .path2:before { content: "\e9fc"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -1295,17 +1308,17 @@ } .ki-book-open .path2:before { content: "\e9fe"; - margin-left: -1em; + position: absolute; left: 0; } .ki-book-open .path3:before { content: "\e9ff"; - margin-left: -1em; + position: absolute; left: 0; } .ki-book-open .path4:before { content: "\ea00"; - margin-left: -1em; + position: absolute; left: 0; } .ki-book-square .path1:before { @@ -1315,12 +1328,12 @@ } .ki-book-square .path2:before { content: "\ea02"; - margin-left: -1em; + position: absolute; left: 0; } .ki-book-square .path3:before { content: "\ea03"; - margin-left: -1em; + position: absolute; left: 0; } .ki-book .path1:before { @@ -1330,17 +1343,17 @@ } .ki-book .path2:before { content: "\ea05"; - margin-left: -1em; + position: absolute; left: 0; } .ki-book .path3:before { content: "\ea06"; - margin-left: -1em; + position: absolute; left: 0; } .ki-book .path4:before { content: "\ea07"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bookmark-2 .path1:before { @@ -1350,7 +1363,7 @@ } .ki-bookmark-2 .path2:before { content: "\ea09"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bookmark .path1:before { @@ -1360,7 +1373,7 @@ } .ki-bookmark .path2:before { content: "\ea0b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bootstrap .path1:before { @@ -1370,12 +1383,12 @@ } .ki-bootstrap .path2:before { content: "\ea0d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bootstrap .path3:before { content: "\ea0e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-briefcase .path1:before { @@ -1385,7 +1398,7 @@ } .ki-briefcase .path2:before { content: "\ea10"; - margin-left: -1em; + position: absolute; left: 0; } .ki-brifecase-cros .path1:before { @@ -1395,12 +1408,12 @@ } .ki-brifecase-cros .path2:before { content: "\ea12"; - margin-left: -1em; + position: absolute; left: 0; } .ki-brifecase-cros .path3:before { content: "\ea13"; - margin-left: -1em; + position: absolute; left: 0; } .ki-brifecase-tick .path1:before { @@ -1410,12 +1423,12 @@ } .ki-brifecase-tick .path2:before { content: "\ea15"; - margin-left: -1em; + position: absolute; left: 0; } .ki-brifecase-tick .path3:before { content: "\ea16"; - margin-left: -1em; + position: absolute; left: 0; } .ki-brifecase-timer .path1:before { @@ -1425,12 +1438,12 @@ } .ki-brifecase-timer .path2:before { content: "\ea18"; - margin-left: -1em; + position: absolute; left: 0; } .ki-brifecase-timer .path3:before { content: "\ea19"; - margin-left: -1em; + position: absolute; left: 0; } .ki-brush .path1:before { @@ -1440,7 +1453,7 @@ } .ki-brush .path2:before { content: "\ea1b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bucket-square .path1:before { @@ -1450,12 +1463,12 @@ } .ki-bucket-square .path2:before { content: "\ea1d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bucket-square .path3:before { content: "\ea1e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bucket .path1:before { @@ -1465,17 +1478,17 @@ } .ki-bucket .path2:before { content: "\ea20"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bucket .path3:before { content: "\ea21"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bucket .path4:before { content: "\ea22"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-1 .path1:before { @@ -1485,17 +1498,17 @@ } .ki-burger-menu-1 .path2:before { content: "\ea24"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-1 .path3:before { content: "\ea25"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-1 .path4:before { content: "\ea26"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-2 .path1:before { @@ -1505,47 +1518,47 @@ } .ki-burger-menu-2 .path2:before { content: "\ea28"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-2 .path3:before { content: "\ea29"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-2 .path4:before { content: "\ea2a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-2 .path5:before { content: "\ea2b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-2 .path6:before { content: "\ea2c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-2 .path7:before { content: "\ea2d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-2 .path8:before { content: "\ea2e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-2 .path9:before { content: "\ea2f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-2 .path10:before { content: "\ea30"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-3 .path1:before { @@ -1555,46 +1568,46 @@ } .ki-burger-menu-3 .path2:before { content: "\ea32"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-3 .path3:before { content: "\ea33"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-burger-menu-3 .path4:before { content: "\ea34"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-burger-menu-3 .path5:before { content: "\ea35"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-3 .path6:before { content: "\ea36"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-burger-menu-3 .path7:before { content: "\ea37"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-burger-menu-3 .path8:before { content: "\ea38"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu-3 .path9:before { content: "\ea39"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -1614,17 +1627,17 @@ } .ki-burger-menu .path2:before { content: "\ea3e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu .path3:before { content: "\ea3f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-burger-menu .path4:before { content: "\ea40"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bus .path1:before { @@ -1634,22 +1647,22 @@ } .ki-bus .path2:before { content: "\ea42"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bus .path3:before { content: "\ea43"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bus .path4:before { content: "\ea44"; - margin-left: -1em; + position: absolute; left: 0; } .ki-bus .path5:before { content: "\ea45"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calculator .path1:before { @@ -1659,27 +1672,27 @@ } .ki-calculator .path2:before { content: "\ea47"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calculator .path3:before { content: "\ea48"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calculator .path4:before { content: "\ea49"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calculator .path5:before { content: "\ea4a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calculator .path6:before { content: "\ea4b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-2 .path1:before { @@ -1689,22 +1702,22 @@ } .ki-calendar-2 .path2:before { content: "\ea4d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-2 .path3:before { content: "\ea4e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-2 .path4:before { content: "\ea4f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-2 .path5:before { content: "\ea50"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-8 .path1:before { @@ -1714,27 +1727,27 @@ } .ki-calendar-8 .path2:before { content: "\ea52"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-8 .path3:before { content: "\ea53"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-8 .path4:before { content: "\ea54"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-8 .path5:before { content: "\ea55"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-8 .path6:before { content: "\ea56"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-add .path1:before { @@ -1744,27 +1757,27 @@ } .ki-calendar-add .path2:before { content: "\ea58"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-add .path3:before { content: "\ea59"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-add .path4:before { content: "\ea5a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-add .path5:before { content: "\ea5b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-add .path6:before { content: "\ea5c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-edit .path1:before { @@ -1774,12 +1787,12 @@ } .ki-calendar-edit .path2:before { content: "\ea5e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-edit .path3:before { content: "\ea5f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-remove .path1:before { @@ -1789,27 +1802,27 @@ } .ki-calendar-remove .path2:before { content: "\ea61"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-remove .path3:before { content: "\ea62"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-remove .path4:before { content: "\ea63"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-remove .path5:before { content: "\ea64"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-remove .path6:before { content: "\ea65"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-search .path1:before { @@ -1819,17 +1832,17 @@ } .ki-calendar-search .path2:before { content: "\ea67"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-search .path3:before { content: "\ea68"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-search .path4:before { content: "\ea69"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-tick .path1:before { @@ -1839,27 +1852,27 @@ } .ki-calendar-tick .path2:before { content: "\ea6b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-tick .path3:before { content: "\ea6c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-tick .path4:before { content: "\ea6d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-tick .path5:before { content: "\ea6e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar-tick .path6:before { content: "\ea6f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-calendar .path1:before { @@ -1869,7 +1882,7 @@ } .ki-calendar .path2:before { content: "\ea71"; - margin-left: -1em; + position: absolute; left: 0; } .ki-call .path1:before { @@ -1879,37 +1892,37 @@ } .ki-call .path2:before { content: "\ea73"; - margin-left: -1em; + position: absolute; left: 0; } .ki-call .path3:before { content: "\ea74"; - margin-left: -1em; + position: absolute; left: 0; } .ki-call .path4:before { content: "\ea75"; - margin-left: -1em; + position: absolute; left: 0; } .ki-call .path5:before { content: "\ea76"; - margin-left: -1em; + position: absolute; left: 0; } .ki-call .path6:before { content: "\ea77"; - margin-left: -1em; + position: absolute; left: 0; } .ki-call .path7:before { content: "\ea78"; - margin-left: -1em; + position: absolute; left: 0; } .ki-call .path8:before { content: "\ea79"; - margin-left: -1em; + position: absolute; left: 0; } .ki-capsule .path1:before { @@ -1919,7 +1932,7 @@ } .ki-capsule .path2:before { content: "\ea7b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-car-2 .path1:before { @@ -1928,28 +1941,28 @@ } .ki-car-2 .path2:before { content: "\ea7d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-car-2 .path3:before { content: "\ea7e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-car-2 .path4:before { content: "\ea7f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-car-2 .path5:before { content: "\ea80"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-car-2 .path6:before { content: "\ea81"; - margin-left: -1em; + position: absolute; left: 0; } .ki-car-3 .path1:before { @@ -1958,12 +1971,12 @@ } .ki-car-3 .path2:before { content: "\ea83"; - margin-left: -1em; + position: absolute; left: 0; } .ki-car-3 .path3:before { content: "\ea84"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -1974,22 +1987,22 @@ } .ki-car .path2:before { content: "\ea86"; - margin-left: -1em; + position: absolute; left: 0; } .ki-car .path3:before { content: "\ea87"; - margin-left: -1em; + position: absolute; left: 0; } .ki-car .path4:before { content: "\ea88"; - margin-left: -1em; + position: absolute; left: 0; } .ki-car .path5:before { content: "\ea89"; - margin-left: -1em; + position: absolute; left: 0; } .ki-category .path1:before { @@ -1998,19 +2011,19 @@ } .ki-category .path2:before { content: "\ea8b"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-category .path3:before { content: "\ea8c"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-category .path4:before { content: "\ea8d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cd .path1:before { @@ -2019,7 +2032,7 @@ } .ki-cd .path2:before { content: "\ea8f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2029,7 +2042,7 @@ } .ki-celsius .path2:before { content: "\ea91"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2040,12 +2053,12 @@ } .ki-chart-line-down-2 .path2:before { content: "\ea93"; - margin-left: -1em; + position: absolute; left: 0; } .ki-chart-line-down-2 .path3:before { content: "\ea94"; - margin-left: -1em; + position: absolute; left: 0; } .ki-chart-line-down .path1:before { @@ -2055,7 +2068,7 @@ } .ki-chart-line-down .path2:before { content: "\ea96"; - margin-left: -1em; + position: absolute; left: 0; } .ki-chart-line-star .path1:before { @@ -2064,12 +2077,12 @@ } .ki-chart-line-star .path2:before { content: "\ea98"; - margin-left: -1em; + position: absolute; left: 0; } .ki-chart-line-star .path3:before { content: "\ea99"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2079,7 +2092,7 @@ } .ki-chart-line-up-2 .path2:before { content: "\ea9b"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2089,7 +2102,7 @@ } .ki-chart-line-up .path2:before { content: "\ea9d"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2100,7 +2113,7 @@ } .ki-chart-line .path2:before { content: "\ea9f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-chart-pie-3 .path1:before { @@ -2109,13 +2122,13 @@ } .ki-chart-pie-3 .path2:before { content: "\eaa1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-chart-pie-3 .path3:before { content: "\eaa2"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2125,13 +2138,13 @@ } .ki-chart-pie-4 .path2:before { content: "\eaa4"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-chart-pie-4 .path3:before { content: "\eaa5"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2141,7 +2154,7 @@ } .ki-chart-pie-simple .path2:before { content: "\eaa7"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2152,7 +2165,7 @@ } .ki-chart-pie-too .path2:before { content: "\eaa9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-chart-simple-2 .path1:before { @@ -2162,18 +2175,18 @@ } .ki-chart-simple-2 .path2:before { content: "\eaab"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-chart-simple-2 .path3:before { content: "\eaac"; - margin-left: -1em; + position: absolute; left: 0; } .ki-chart-simple-2 .path4:before { content: "\eaad"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2184,18 +2197,18 @@ } .ki-chart-simple-3 .path2:before { content: "\eaaf"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-chart-simple-3 .path3:before { content: "\eab0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-chart-simple-3 .path4:before { content: "\eab1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2206,18 +2219,18 @@ } .ki-chart-simple .path2:before { content: "\eab3"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-chart-simple .path3:before { content: "\eab4"; - margin-left: -1em; + position: absolute; left: 0; } .ki-chart-simple .path4:before { content: "\eab5"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2227,7 +2240,7 @@ } .ki-chart .path2:before { content: "\eab7"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2238,7 +2251,7 @@ } .ki-check-circle .path2:before { content: "\eab9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-check-square .path1:before { @@ -2248,7 +2261,7 @@ } .ki-check-square .path2:before { content: "\eabb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-check:before { @@ -2260,33 +2273,33 @@ } .ki-cheque .path2:before { content: "\eabe"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cheque .path3:before { content: "\eabf"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cheque .path4:before { content: "\eac0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cheque .path5:before { content: "\eac1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cheque .path6:before { content: "\eac2"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-cheque .path7:before { content: "\eac3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-chrome .path1:before { @@ -2296,7 +2309,7 @@ } .ki-chrome .path2:before { content: "\eac5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-classmates .path1:before { @@ -2305,7 +2318,7 @@ } .ki-classmates .path2:before { content: "\eac7"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2315,25 +2328,25 @@ } .ki-click .path2:before { content: "\eac9"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-click .path3:before { content: "\eaca"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-click .path4:before { content: "\eacb"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-click .path5:before { content: "\eacc"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2344,12 +2357,12 @@ } .ki-clipboard .path2:before { content: "\eace"; - margin-left: -1em; + position: absolute; left: 0; } .ki-clipboard .path3:before { content: "\eacf"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cloud-add .path1:before { @@ -2358,7 +2371,7 @@ } .ki-cloud-add .path2:before { content: "\ead1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2368,12 +2381,12 @@ } .ki-cloud-change .path2:before { content: "\ead3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cloud-change .path3:before { content: "\ead4"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2384,7 +2397,7 @@ } .ki-cloud-download .path2:before { content: "\ead6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cloud:before { @@ -2397,17 +2410,17 @@ } .ki-code .path2:before { content: "\ead9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-code .path3:before { content: "\eada"; - margin-left: -1em; + position: absolute; left: 0; } .ki-code .path4:before { content: "\eadb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-coffee .path1:before { @@ -2417,28 +2430,28 @@ } .ki-coffee .path2:before { content: "\eadd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-coffee .path3:before { content: "\eade"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-coffee .path4:before { content: "\eadf"; - margin-left: -1em; + position: absolute; left: 0; } .ki-coffee .path5:before { content: "\eae0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-coffee .path6:before { content: "\eae1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-color-swatch .path1:before { @@ -2448,121 +2461,121 @@ } .ki-color-swatch .path2:before { content: "\eae3"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path3:before { content: "\eae4"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path4:before { content: "\eae5"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path5:before { content: "\eae6"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path6:before { content: "\eae7"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path7:before { content: "\eae8"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path8:before { content: "\eae9"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path9:before { content: "\eaea"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path10:before { content: "\eaeb"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path11:before { content: "\eaec"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path12:before { content: "\eaed"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path13:before { content: "\eaee"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path14:before { content: "\eaef"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path15:before { content: "\eaf0"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path16:before { content: "\eaf1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path17:before { content: "\eaf2"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path18:before { content: "\eaf3"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path19:before { content: "\eaf4"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path20:before { content: "\eaf5"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-color-swatch .path21:before { content: "\eaf6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-colors-square .path1:before { @@ -2572,18 +2585,18 @@ } .ki-colors-square .path2:before { content: "\eaf8"; - margin-left: -1em; + position: absolute; left: 0; } .ki-colors-square .path3:before { content: "\eaf9"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-colors-square .path4:before { content: "\eafa"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2593,7 +2606,7 @@ } .ki-compass .path2:before { content: "\eafc"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2603,7 +2616,7 @@ } .ki-copy-success .path2:before { content: "\eafe"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2616,34 +2629,34 @@ } .ki-courier-express .path2:before { content: "\eb01"; - margin-left: -1em; + position: absolute; left: 0; } .ki-courier-express .path3:before { content: "\eb02"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-courier-express .path4:before { content: "\eb03"; - margin-left: -1em; + position: absolute; left: 0; } .ki-courier-express .path5:before { content: "\eb04"; - margin-left: -1em; + position: absolute; left: 0; } .ki-courier-express .path6:before { content: "\eb05"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-courier-express .path7:before { content: "\eb06"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2653,13 +2666,13 @@ } .ki-courier .path2:before { content: "\eb08"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-courier .path3:before { content: "\eb09"; - margin-left: -1em; + position: absolute; left: 0; } .ki-credit-cart .path1:before { @@ -2669,7 +2682,7 @@ } .ki-credit-cart .path2:before { content: "\eb0b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cross-circle .path1:before { @@ -2679,7 +2692,7 @@ } .ki-cross-circle .path2:before { content: "\eb0d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cross-square .path1:before { @@ -2689,7 +2702,7 @@ } .ki-cross-square .path2:before { content: "\eb0f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cross .path1:before { @@ -2698,7 +2711,7 @@ } .ki-cross .path2:before { content: "\eb11"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2709,12 +2722,12 @@ } .ki-crown-2 .path2:before { content: "\eb13"; - margin-left: -1em; + position: absolute; left: 0; } .ki-crown-2 .path3:before { content: "\eb14"; - margin-left: -1em; + position: absolute; left: 0; } .ki-crown .path1:before { @@ -2724,7 +2737,7 @@ } .ki-crown .path2:before { content: "\eb16"; - margin-left: -1em; + position: absolute; left: 0; } .ki-css .path1:before { @@ -2734,7 +2747,7 @@ } .ki-css .path2:before { content: "\eb18"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cube-2 .path1:before { @@ -2744,13 +2757,13 @@ } .ki-cube-2 .path2:before { content: "\eb1a"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-cube-2 .path3:before { content: "\eb1b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cube-3 .path1:before { @@ -2760,7 +2773,7 @@ } .ki-cube-3 .path2:before { content: "\eb1d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-cup .path1:before { @@ -2770,7 +2783,7 @@ } .ki-cup .path2:before { content: "\eb1f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dash .path1:before { @@ -2780,7 +2793,7 @@ } .ki-dash .path2:before { content: "\eb21"; - margin-left: -1em; + position: absolute; left: 0; } .ki-data .path1:before { @@ -2789,22 +2802,22 @@ } .ki-data .path2:before { content: "\eb23"; - margin-left: -1em; + position: absolute; left: 0; } .ki-data .path3:before { content: "\eb24"; - margin-left: -1em; + position: absolute; left: 0; } .ki-data .path4:before { content: "\eb25"; - margin-left: -1em; + position: absolute; left: 0; } .ki-data .path5:before { content: "\eb26"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2814,7 +2827,7 @@ } .ki-delete-files .path2:before { content: "\eb28"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2825,7 +2838,7 @@ } .ki-delete-folder .path2:before { content: "\eb2a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-2 .path1:before { @@ -2835,44 +2848,44 @@ } .ki-delivery-2 .path2:before { content: "\eb2c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-2 .path3:before { content: "\eb2d"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-delivery-2 .path4:before { content: "\eb2e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-2 .path5:before { content: "\eb2f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-2 .path6:before { content: "\eb30"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-2 .path7:before { content: "\eb31"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-delivery-2 .path8:before { content: "\eb32"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-2 .path9:before { content: "\eb33"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-3 .path1:before { @@ -2882,12 +2895,12 @@ } .ki-delivery-3 .path2:before { content: "\eb35"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-3 .path3:before { content: "\eb36"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-24 .path1:before { @@ -2896,18 +2909,18 @@ } .ki-delivery-24 .path2:before { content: "\eb38"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-delivery-24 .path3:before { content: "\eb39"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-24 .path4:before { content: "\eb3a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-door .path1:before { @@ -2917,17 +2930,17 @@ } .ki-delivery-door .path2:before { content: "\eb3c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-door .path3:before { content: "\eb3d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-door .path4:before { content: "\eb3e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-geolocation .path1:before { @@ -2936,23 +2949,23 @@ } .ki-delivery-geolocation .path2:before { content: "\eb40"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-geolocation .path3:before { content: "\eb41"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-geolocation .path4:before { content: "\eb42"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-delivery-geolocation .path5:before { content: "\eb43"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-time .path1:before { @@ -2961,22 +2974,22 @@ } .ki-delivery-time .path2:before { content: "\eb45"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-time .path3:before { content: "\eb46"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-time .path4:before { content: "\eb47"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery-time .path5:before { content: "\eb48"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -2986,23 +2999,23 @@ } .ki-delivery .path2:before { content: "\eb4a"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-delivery .path3:before { content: "\eb4b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery .path4:before { content: "\eb4c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-delivery .path5:before { content: "\eb4d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-design-2 .path1:before { @@ -3012,7 +3025,7 @@ } .ki-design-2 .path2:before { content: "\eb4f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-design-frame .path1:before { @@ -3022,7 +3035,7 @@ } .ki-design-frame .path2:before { content: "\eb51"; - margin-left: -1em; + position: absolute; left: 0; } .ki-design-mask .path1:before { @@ -3032,7 +3045,7 @@ } .ki-design-mask .path2:before { content: "\eb53"; - margin-left: -1em; + position: absolute; left: 0; } .ki-design .path1:before { @@ -3042,7 +3055,7 @@ } .ki-design .path2:before { content: "\eb55"; - margin-left: -1em; + position: absolute; left: 0; } .ki-devices-2 .path1:before { @@ -3052,12 +3065,12 @@ } .ki-devices-2 .path2:before { content: "\eb57"; - margin-left: -1em; + position: absolute; left: 0; } .ki-devices-2 .path3:before { content: "\eb58"; - margin-left: -1em; + position: absolute; left: 0; } .ki-devices .path1:before { @@ -3067,22 +3080,22 @@ } .ki-devices .path2:before { content: "\eb5a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-devices .path3:before { content: "\eb5b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-devices .path4:before { content: "\eb5c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-devices .path5:before { content: "\eb5d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-diamonds .path1:before { @@ -3091,7 +3104,7 @@ } .ki-diamonds .path2:before { content: "\eb5f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3101,18 +3114,18 @@ } .ki-directbox-default .path2:before { content: "\eb61"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-directbox-default .path3:before { content: "\eb62"; - margin-left: -1em; + position: absolute; left: 0; } .ki-directbox-default .path4:before { content: "\eb63"; - margin-left: -1em; + position: absolute; left: 0; } .ki-disconnect .path1:before { @@ -3121,25 +3134,25 @@ } .ki-disconnect .path2:before { content: "\eb65"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-disconnect .path3:before { content: "\eb66"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-disconnect .path4:before { content: "\eb67"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-disconnect .path5:before { content: "\eb68"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3150,7 +3163,7 @@ } .ki-discount .path2:before { content: "\eb6a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-disk .path1:before { @@ -3160,7 +3173,7 @@ } .ki-disk .path2:before { content: "\eb6c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dislike .path1:before { @@ -3169,7 +3182,7 @@ } .ki-dislike .path2:before { content: "\eb6e"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3183,7 +3196,7 @@ } .ki-document .path2:before { content: "\eb71"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dollar .path1:before { @@ -3193,12 +3206,12 @@ } .ki-dollar .path2:before { content: "\eb73"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dollar .path3:before { content: "\eb74"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-circle-vertical .path1:before { @@ -3208,17 +3221,17 @@ } .ki-dots-circle-vertical .path2:before { content: "\eb76"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-circle-vertical .path3:before { content: "\eb77"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-circle-vertical .path4:before { content: "\eb78"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-circle .path1:before { @@ -3228,17 +3241,17 @@ } .ki-dots-circle .path2:before { content: "\eb7a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-circle .path3:before { content: "\eb7b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-circle .path4:before { content: "\eb7c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-horizontal .path1:before { @@ -3247,13 +3260,13 @@ } .ki-dots-horizontal .path2:before { content: "\eb7e"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-dots-horizontal .path3:before { content: "\eb7f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3264,17 +3277,17 @@ } .ki-dots-square-vertical .path2:before { content: "\eb81"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-square-vertical .path3:before { content: "\eb82"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-square-vertical .path4:before { content: "\eb83"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-square .path1:before { @@ -3284,17 +3297,17 @@ } .ki-dots-square .path2:before { content: "\eb85"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-square .path3:before { content: "\eb86"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-square .path4:before { content: "\eb87"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dots-vertical .path1:before { @@ -3303,13 +3316,13 @@ } .ki-dots-vertical .path2:before { content: "\eb89"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-dots-vertical .path3:before { content: "\eb8a"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3320,13 +3333,13 @@ } .ki-double-check-circle .path2:before { content: "\eb8c"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-double-check-circle .path3:before { content: "\eb8d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-double-check .path1:before { @@ -3335,7 +3348,7 @@ } .ki-double-check .path2:before { content: "\eb8f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3345,12 +3358,12 @@ } .ki-double-down .path2:before { content: "\eb91"; - margin-left: -1em; + position: absolute; left: 0; } .ki-double-down .path3:before { content: "\eb92"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3361,7 +3374,7 @@ } .ki-double-left-arrow .path2:before { content: "\eb94"; - margin-left: -1em; + position: absolute; left: 0; } .ki-double-left .path1:before { @@ -3370,7 +3383,7 @@ } .ki-double-left .path2:before { content: "\eb96"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3381,7 +3394,7 @@ } .ki-double-right-arrow .path2:before { content: "\eb98"; - margin-left: -1em; + position: absolute; left: 0; } .ki-double-right .path1:before { @@ -3390,7 +3403,7 @@ } .ki-double-right .path2:before { content: "\eb9a"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3400,12 +3413,12 @@ } .ki-double-up .path2:before { content: "\eb9c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-double-up .path3:before { content: "\eb9d"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3416,7 +3429,7 @@ } .ki-down-square .path2:before { content: "\eb9f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-down:before { @@ -3428,29 +3441,29 @@ } .ki-dribbble .path2:before { content: "\eba2"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dribbble .path3:before { content: "\eba3"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-dribbble .path4:before { content: "\eba4"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-dribbble .path5:before { content: "\eba5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-dribbble .path6:before { content: "\eba6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-drop .path1:before { @@ -3459,7 +3472,7 @@ } .ki-drop .path2:before { content: "\eba8"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3470,25 +3483,25 @@ } .ki-dropbox .path2:before { content: "\ebaa"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.4; } .ki-dropbox .path3:before { content: "\ebab"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.4; } .ki-dropbox .path4:before { content: "\ebac"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.4; } .ki-dropbox .path5:before { content: "\ebad"; - margin-left: -1em; + position: absolute; left: 0; } .ki-educare .path1:before { @@ -3498,18 +3511,18 @@ } .ki-educare .path2:before { content: "\ebaf"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-educare .path3:before { content: "\ebb0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-educare .path4:before { content: "\ebb1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-electricity .path1:before { @@ -3518,48 +3531,48 @@ } .ki-electricity .path2:before { content: "\ebb3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-electricity .path3:before { content: "\ebb4"; - margin-left: -1em; + position: absolute; left: 0; } .ki-electricity .path4:before { content: "\ebb5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-electricity .path5:before { content: "\ebb6"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-electricity .path6:before { content: "\ebb7"; - margin-left: -1em; + position: absolute; left: 0; } .ki-electricity .path7:before { content: "\ebb8"; - margin-left: -1em; + position: absolute; left: 0; } .ki-electricity .path8:before { content: "\ebb9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-electricity .path9:before { content: "\ebba"; - margin-left: -1em; + position: absolute; left: 0; } .ki-electricity .path10:before { content: "\ebbb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-electronic-clock .path1:before { @@ -3569,17 +3582,17 @@ } .ki-electronic-clock .path2:before { content: "\ebbd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-electronic-clock .path3:before { content: "\ebbe"; - margin-left: -1em; + position: absolute; left: 0; } .ki-electronic-clock .path4:before { content: "\ebbf"; - margin-left: -1em; + position: absolute; left: 0; } .ki-element-1 .path1:before { @@ -3588,19 +3601,19 @@ } .ki-element-1 .path2:before { content: "\ebc1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-element-1 .path3:before { content: "\ebc2"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-element-1 .path4:before { content: "\ebc3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-element-2 .path1:before { @@ -3609,7 +3622,7 @@ } .ki-element-2 .path2:before { content: "\ebc5"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3620,7 +3633,7 @@ } .ki-element-3 .path2:before { content: "\ebc7"; - margin-left: -1em; + position: absolute; left: 0; } .ki-element-4 .path1:before { @@ -3629,7 +3642,7 @@ } .ki-element-4 .path2:before { content: "\ebc9"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3639,7 +3652,7 @@ } .ki-element-5 .path2:before { content: "\ebcb"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3650,7 +3663,7 @@ } .ki-element-6 .path2:before { content: "\ebcd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-element-7 .path1:before { @@ -3659,7 +3672,7 @@ } .ki-element-7 .path2:before { content: "\ebcf"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3670,7 +3683,7 @@ } .ki-element-8 .path2:before { content: "\ebd1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-element-9 .path1:before { @@ -3680,7 +3693,7 @@ } .ki-element-9 .path2:before { content: "\ebd3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-element-10 .path1:before { @@ -3689,13 +3702,13 @@ } .ki-element-10 .path2:before { content: "\ebd5"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-element-10 .path3:before { content: "\ebd6"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3705,18 +3718,18 @@ } .ki-element-11 .path2:before { content: "\ebd8"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-element-11 .path3:before { content: "\ebd9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-element-11 .path4:before { content: "\ebda"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3727,13 +3740,13 @@ } .ki-element-12 .path2:before { content: "\ebdc"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-element-12 .path3:before { content: "\ebdd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-element-equal .path1:before { @@ -3742,24 +3755,24 @@ } .ki-element-equal .path2:before { content: "\ebdf"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-element-equal .path3:before { content: "\ebe0"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-element-equal .path4:before { content: "\ebe1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-element-equal .path5:before { content: "\ebe2"; - margin-left: -1em; + position: absolute; left: 0; } .ki-element-plus .path1:before { @@ -3768,24 +3781,24 @@ } .ki-element-plus .path2:before { content: "\ebe4"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-element-plus .path3:before { content: "\ebe5"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-element-plus .path4:before { content: "\ebe6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-element-plus .path5:before { content: "\ebe7"; - margin-left: -1em; + position: absolute; left: 0; } .ki-emoji-happy .path1:before { @@ -3795,17 +3808,17 @@ } .ki-emoji-happy .path2:before { content: "\ebe9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-emoji-happy .path3:before { content: "\ebea"; - margin-left: -1em; + position: absolute; left: 0; } .ki-emoji-happy .path4:before { content: "\ebeb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-enjin-coin .path1:before { @@ -3814,7 +3827,7 @@ } .ki-enjin-coin .path2:before { content: "\ebed"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3824,7 +3837,7 @@ } .ki-entrance-left .path2:before { content: "\ebef"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3835,7 +3848,7 @@ } .ki-entrance-right .path2:before { content: "\ebf1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-eraser .path1:before { @@ -3845,12 +3858,12 @@ } .ki-eraser .path2:before { content: "\ebf3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-eraser .path3:before { content: "\ebf4"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3861,12 +3874,12 @@ } .ki-euro .path2:before { content: "\ebf6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-euro .path3:before { content: "\ebf7"; - margin-left: -1em; + position: absolute; left: 0; } .ki-exit-down .path1:before { @@ -3876,7 +3889,7 @@ } .ki-exit-down .path2:before { content: "\ebf9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-exit-left .path1:before { @@ -3886,7 +3899,7 @@ } .ki-exit-left .path2:before { content: "\ebfb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-exit-right-corner .path1:before { @@ -3896,7 +3909,7 @@ } .ki-exit-right-corner .path2:before { content: "\ebfd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-exit-right .path1:before { @@ -3906,7 +3919,7 @@ } .ki-exit-right .path2:before { content: "\ebff"; - margin-left: -1em; + position: absolute; left: 0; } .ki-exit-up .path1:before { @@ -3916,7 +3929,7 @@ } .ki-exit-up .path2:before { content: "\ec01"; - margin-left: -1em; + position: absolute; left: 0; } .ki-external-drive .path1:before { @@ -3925,23 +3938,23 @@ } .ki-external-drive .path2:before { content: "\ec03"; - margin-left: -1em; + position: absolute; left: 0; } .ki-external-drive .path3:before { content: "\ec04"; - margin-left: -1em; + position: absolute; left: 0; } .ki-external-drive .path4:before { content: "\ec05"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-external-drive .path5:before { content: "\ec06"; - margin-left: -1em; + position: absolute; left: 0; } .ki-eye-slash .path1:before { @@ -3950,18 +3963,18 @@ } .ki-eye-slash .path2:before { content: "\ec08"; - margin-left: -1em; + position: absolute; left: 0; } .ki-eye-slash .path3:before { content: "\ec09"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-eye-slash .path4:before { content: "\ec0a"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3971,13 +3984,13 @@ } .ki-eye .path2:before { content: "\ec0c"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-eye .path3:before { content: "\ec0d"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -3988,7 +4001,7 @@ } .ki-facebook .path2:before { content: "\ec0f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-faceid .path1:before { @@ -3998,27 +4011,27 @@ } .ki-faceid .path2:before { content: "\ec11"; - margin-left: -1em; + position: absolute; left: 0; } .ki-faceid .path3:before { content: "\ec12"; - margin-left: -1em; + position: absolute; left: 0; } .ki-faceid .path4:before { content: "\ec13"; - margin-left: -1em; + position: absolute; left: 0; } .ki-faceid .path5:before { content: "\ec14"; - margin-left: -1em; + position: absolute; left: 0; } .ki-faceid .path6:before { content: "\ec15"; - margin-left: -1em; + position: absolute; left: 0; } .ki-fasten .path1:before { @@ -4028,7 +4041,7 @@ } .ki-fasten .path2:before { content: "\ec17"; - margin-left: -1em; + position: absolute; left: 0; } .ki-fat-rows .path1:before { @@ -4037,7 +4050,7 @@ } .ki-fat-rows .path2:before { content: "\ec19"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4048,7 +4061,7 @@ } .ki-feather .path2:before { content: "\ec1b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-figma .path1:before { @@ -4058,23 +4071,23 @@ } .ki-figma .path2:before { content: "\ec1d"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.4; } .ki-figma .path3:before { content: "\ec1e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-figma .path4:before { content: "\ec1f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-figma .path5:before { content: "\ec20"; - margin-left: -1em; + position: absolute; left: 0; } .ki-file-added .path1:before { @@ -4083,7 +4096,7 @@ } .ki-file-added .path2:before { content: "\ec22"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4093,7 +4106,7 @@ } .ki-file-deleted .path2:before { content: "\ec24"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4104,7 +4117,7 @@ } .ki-file-down .path2:before { content: "\ec26"; - margin-left: -1em; + position: absolute; left: 0; } .ki-file-left .path1:before { @@ -4114,7 +4127,7 @@ } .ki-file-left .path2:before { content: "\ec28"; - margin-left: -1em; + position: absolute; left: 0; } .ki-file-right .path1:before { @@ -4124,7 +4137,7 @@ } .ki-file-right .path2:before { content: "\ec2a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-file-sheet .path1:before { @@ -4133,7 +4146,7 @@ } .ki-file-sheet .path2:before { content: "\ec2c"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4144,7 +4157,7 @@ } .ki-file-up .path2:before { content: "\ec2e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-file .path1:before { @@ -4153,7 +4166,7 @@ } .ki-file .path2:before { content: "\ec30"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4163,7 +4176,7 @@ } .ki-files-tablet .path2:before { content: "\ec32"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4174,7 +4187,7 @@ } .ki-filter-edit .path2:before { content: "\ec34"; - margin-left: -1em; + position: absolute; left: 0; } .ki-filter-search .path1:before { @@ -4184,12 +4197,12 @@ } .ki-filter-search .path2:before { content: "\ec36"; - margin-left: -1em; + position: absolute; left: 0; } .ki-filter-search .path3:before { content: "\ec37"; - margin-left: -1em; + position: absolute; left: 0; } .ki-filter-square .path1:before { @@ -4198,7 +4211,7 @@ } .ki-filter-square .path2:before { content: "\ec39"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4209,7 +4222,7 @@ } .ki-filter-tablet .path2:before { content: "\ec3b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-filter-tick .path1:before { @@ -4219,7 +4232,7 @@ } .ki-filter-tick .path2:before { content: "\ec3d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-filter .path1:before { @@ -4228,7 +4241,7 @@ } .ki-filter .path2:before { content: "\ec3f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4239,32 +4252,32 @@ } .ki-finance-calculator .path2:before { content: "\ec41"; - margin-left: -1em; + position: absolute; left: 0; } .ki-finance-calculator .path3:before { content: "\ec42"; - margin-left: -1em; + position: absolute; left: 0; } .ki-finance-calculator .path4:before { content: "\ec43"; - margin-left: -1em; + position: absolute; left: 0; } .ki-finance-calculator .path5:before { content: "\ec44"; - margin-left: -1em; + position: absolute; left: 0; } .ki-finance-calculator .path6:before { content: "\ec45"; - margin-left: -1em; + position: absolute; left: 0; } .ki-finance-calculator .path7:before { content: "\ec46"; - margin-left: -1em; + position: absolute; left: 0; } .ki-financial-schedule .path1:before { @@ -4274,17 +4287,17 @@ } .ki-financial-schedule .path2:before { content: "\ec48"; - margin-left: -1em; + position: absolute; left: 0; } .ki-financial-schedule .path3:before { content: "\ec49"; - margin-left: -1em; + position: absolute; left: 0; } .ki-financial-schedule .path4:before { content: "\ec4a"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4294,25 +4307,25 @@ } .ki-fingerprint-scanning .path2:before { content: "\ec4c"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-fingerprint-scanning .path3:before { content: "\ec4d"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-fingerprint-scanning .path4:before { content: "\ec4e"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-fingerprint-scanning .path5:before { content: "\ec4f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4323,7 +4336,7 @@ } .ki-flag .path2:before { content: "\ec51"; - margin-left: -1em; + position: absolute; left: 0; } .ki-flash-circle .path1:before { @@ -4333,7 +4346,7 @@ } .ki-flash-circle .path2:before { content: "\ec53"; - margin-left: -1em; + position: absolute; left: 0; } .ki-flask .path1:before { @@ -4343,7 +4356,7 @@ } .ki-flask .path2:before { content: "\ec55"; - margin-left: -1em; + position: absolute; left: 0; } .ki-focus .path1:before { @@ -4353,7 +4366,7 @@ } .ki-focus .path2:before { content: "\ec57"; - margin-left: -1em; + position: absolute; left: 0; } .ki-folder-added .path1:before { @@ -4363,7 +4376,7 @@ } .ki-folder-added .path2:before { content: "\ec59"; - margin-left: -1em; + position: absolute; left: 0; } .ki-folder-down .path1:before { @@ -4373,7 +4386,7 @@ } .ki-folder-down .path2:before { content: "\ec5b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-folder-up .path1:before { @@ -4383,7 +4396,7 @@ } .ki-folder-up .path2:before { content: "\ec5d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-folder .path1:before { @@ -4393,7 +4406,7 @@ } .ki-folder .path2:before { content: "\ec5f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-frame .path1:before { @@ -4402,18 +4415,18 @@ } .ki-frame .path2:before { content: "\ec61"; - margin-left: -1em; + position: absolute; left: 0; } .ki-frame .path3:before { content: "\ec62"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-frame .path4:before { content: "\ec63"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4424,7 +4437,7 @@ } .ki-gear .path2:before { content: "\ec65"; - margin-left: -1em; + position: absolute; left: 0; } .ki-general-mouse .path1:before { @@ -4434,7 +4447,7 @@ } .ki-general-mouse .path2:before { content: "\ec67"; - margin-left: -1em; + position: absolute; left: 0; } .ki-geolocation-home .path1:before { @@ -4444,7 +4457,7 @@ } .ki-geolocation-home .path2:before { content: "\ec69"; - margin-left: -1em; + position: absolute; left: 0; } .ki-geolocation .path1:before { @@ -4454,7 +4467,7 @@ } .ki-geolocation .path2:before { content: "\ec6b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ghost .path1:before { @@ -4463,12 +4476,12 @@ } .ki-ghost .path2:before { content: "\ec6d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ghost .path3:before { content: "\ec6e"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4479,18 +4492,18 @@ } .ki-gift .path2:before { content: "\ec70"; - margin-left: -1em; + position: absolute; left: 0; } .ki-gift .path3:before { content: "\ec71"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-gift .path4:before { content: "\ec72"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4501,7 +4514,7 @@ } .ki-github .path2:before { content: "\ec74"; - margin-left: -1em; + position: absolute; left: 0; } .ki-glass .path1:before { @@ -4510,13 +4523,13 @@ } .ki-glass .path2:before { content: "\ec76"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-glass .path3:before { content: "\ec77"; - margin-left: -1em; + position: absolute; left: 0; } .ki-google-play .path1:before { @@ -4526,7 +4539,7 @@ } .ki-google-play .path2:before { content: "\ec79"; - margin-left: -1em; + position: absolute; left: 0; } .ki-google .path1:before { @@ -4536,7 +4549,7 @@ } .ki-google .path2:before { content: "\ec7b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-graph-2 .path1:before { @@ -4546,12 +4559,12 @@ } .ki-graph-2 .path2:before { content: "\ec7d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-graph-2 .path3:before { content: "\ec7e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-graph-3 .path1:before { @@ -4561,7 +4574,7 @@ } .ki-graph-3 .path2:before { content: "\ec80"; - margin-left: -1em; + position: absolute; left: 0; } .ki-graph-4 .path1:before { @@ -4570,7 +4583,7 @@ } .ki-graph-4 .path2:before { content: "\ec82"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4581,27 +4594,27 @@ } .ki-graph-up .path2:before { content: "\ec84"; - margin-left: -1em; + position: absolute; left: 0; } .ki-graph-up .path3:before { content: "\ec85"; - margin-left: -1em; + position: absolute; left: 0; } .ki-graph-up .path4:before { content: "\ec86"; - margin-left: -1em; + position: absolute; left: 0; } .ki-graph-up .path5:before { content: "\ec87"; - margin-left: -1em; + position: absolute; left: 0; } .ki-graph-up .path6:before { content: "\ec88"; - margin-left: -1em; + position: absolute; left: 0; } .ki-graph .path1:before { @@ -4611,17 +4624,17 @@ } .ki-graph .path2:before { content: "\ec8a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-graph .path3:before { content: "\ec8b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-graph .path4:before { content: "\ec8c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-grid-2 .path1:before { @@ -4631,7 +4644,7 @@ } .ki-grid-2 .path2:before { content: "\ec8e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-grid-frame .path1:before { @@ -4640,13 +4653,13 @@ } .ki-grid-frame .path2:before { content: "\ec90"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-grid-frame .path3:before { content: "\ec91"; - margin-left: -1em; + position: absolute; left: 0; } .ki-grid .path1:before { @@ -4656,7 +4669,7 @@ } .ki-grid .path2:before { content: "\ec93"; - margin-left: -1em; + position: absolute; left: 0; } .ki-handcart:before { @@ -4669,7 +4682,7 @@ } .ki-happy-emoji .path2:before { content: "\ec96"; - margin-left: -1em; + position: absolute; left: 0; } .ki-heart-circle .path1:before { @@ -4679,7 +4692,7 @@ } .ki-heart-circle .path2:before { content: "\ec98"; - margin-left: -1em; + position: absolute; left: 0; } .ki-heart .path1:before { @@ -4689,7 +4702,7 @@ } .ki-heart .path2:before { content: "\ec9a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-home-1 .path1:before { @@ -4699,7 +4712,7 @@ } .ki-home-1 .path2:before { content: "\ec9c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-home-2 .path1:before { @@ -4709,7 +4722,7 @@ } .ki-home-2 .path2:before { content: "\ec9e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-home-3 .path1:before { @@ -4719,7 +4732,7 @@ } .ki-home-3 .path2:before { content: "\eca0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-home:before { @@ -4732,7 +4745,7 @@ } .ki-html .path2:before { content: "\eca3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-icon .path1:before { @@ -4742,12 +4755,12 @@ } .ki-icon .path2:before { content: "\eca5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-icon .path3:before { content: "\eca6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-illustrator .path1:before { @@ -4757,17 +4770,17 @@ } .ki-illustrator .path2:before { content: "\eca8"; - margin-left: -1em; + position: absolute; left: 0; } .ki-illustrator .path3:before { content: "\eca9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-illustrator .path4:before { content: "\ecaa"; - margin-left: -1em; + position: absolute; left: 0; } .ki-information-2 .path1:before { @@ -4777,12 +4790,12 @@ } .ki-information-2 .path2:before { content: "\ecac"; - margin-left: -1em; + position: absolute; left: 0; } .ki-information-2 .path3:before { content: "\ecad"; - margin-left: -1em; + position: absolute; left: 0; } .ki-information-3 .path1:before { @@ -4792,12 +4805,12 @@ } .ki-information-3 .path2:before { content: "\ecaf"; - margin-left: -1em; + position: absolute; left: 0; } .ki-information-3 .path3:before { content: "\ecb0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-information-4 .path1:before { @@ -4807,12 +4820,12 @@ } .ki-information-4 .path2:before { content: "\ecb2"; - margin-left: -1em; + position: absolute; left: 0; } .ki-information-4 .path3:before { content: "\ecb3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-information-5 .path1:before { @@ -4822,12 +4835,12 @@ } .ki-information-5 .path2:before { content: "\ecb5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-information-5 .path3:before { content: "\ecb6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-information .path1:before { @@ -4837,12 +4850,12 @@ } .ki-information .path2:before { content: "\ecb8"; - margin-left: -1em; + position: absolute; left: 0; } .ki-information .path3:before { content: "\ecb9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-instagram .path1:before { @@ -4852,7 +4865,7 @@ } .ki-instagram .path2:before { content: "\ecbb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-joystick .path1:before { @@ -4861,19 +4874,19 @@ } .ki-joystick .path2:before { content: "\ecbd"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-joystick .path3:before { content: "\ecbe"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-joystick .path4:before { content: "\ecbf"; - margin-left: -1em; + position: absolute; left: 0; } .ki-js-2 .path1:before { @@ -4882,7 +4895,7 @@ } .ki-js-2 .path2:before { content: "\ecc1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4892,7 +4905,7 @@ } .ki-js .path2:before { content: "\ecc3"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4902,7 +4915,7 @@ } .ki-kanban .path2:before { content: "\ecc5"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4913,7 +4926,7 @@ } .ki-key-square .path2:before { content: "\ecc7"; - margin-left: -1em; + position: absolute; left: 0; } .ki-key .path1:before { @@ -4923,7 +4936,7 @@ } .ki-key .path2:before { content: "\ecc9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-keyboard .path1:before { @@ -4932,7 +4945,7 @@ } .ki-keyboard .path2:before { content: "\eccb"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4943,7 +4956,7 @@ } .ki-laptop .path2:before { content: "\eccd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-laravel .path1:before { @@ -4953,34 +4966,34 @@ } .ki-laravel .path2:before { content: "\eccf"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-laravel .path3:before { content: "\ecd0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-laravel .path4:before { content: "\ecd1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-laravel .path5:before { content: "\ecd2"; - margin-left: -1em; + position: absolute; left: 0; } .ki-laravel .path6:before { content: "\ecd3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-laravel .path7:before { content: "\ecd4"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -4991,7 +5004,7 @@ } .ki-left-square .path2:before { content: "\ecd6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-left:before { @@ -5004,7 +5017,7 @@ } .ki-like-2 .path2:before { content: "\ecd9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-like-folder .path1:before { @@ -5014,7 +5027,7 @@ } .ki-like-folder .path2:before { content: "\ecdb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-like-shapes .path1:before { @@ -5024,7 +5037,7 @@ } .ki-like-shapes .path2:before { content: "\ecdd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-like-tag .path1:before { @@ -5034,7 +5047,7 @@ } .ki-like-tag .path2:before { content: "\ecdf"; - margin-left: -1em; + position: absolute; left: 0; } .ki-like .path1:before { @@ -5043,7 +5056,7 @@ } .ki-like .path2:before { content: "\ece1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -5053,7 +5066,7 @@ } .ki-loading .path2:before { content: "\ece3"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -5063,23 +5076,23 @@ } .ki-lock-2 .path2:before { content: "\ece5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-lock-2 .path3:before { content: "\ece6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-lock-2 .path4:before { content: "\ece7"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-lock-2 .path5:before { content: "\ece8"; - margin-left: -1em; + position: absolute; left: 0; } .ki-lock-3 .path1:before { @@ -5089,12 +5102,12 @@ } .ki-lock-3 .path2:before { content: "\ecea"; - margin-left: -1em; + position: absolute; left: 0; } .ki-lock-3 .path3:before { content: "\eceb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-lock .path1:before { @@ -5104,12 +5117,12 @@ } .ki-lock .path2:before { content: "\eced"; - margin-left: -1em; + position: absolute; left: 0; } .ki-lock .path3:before { content: "\ecee"; - margin-left: -1em; + position: absolute; left: 0; } .ki-logistic .path1:before { @@ -5119,32 +5132,32 @@ } .ki-logistic .path2:before { content: "\ecf0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-logistic .path3:before { content: "\ecf1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-logistic .path4:before { content: "\ecf2"; - margin-left: -1em; + position: absolute; left: 0; } .ki-logistic .path5:before { content: "\ecf3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-logistic .path6:before { content: "\ecf4"; - margin-left: -1em; + position: absolute; left: 0; } .ki-logistic .path7:before { content: "\ecf5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-lots-shopping .path1:before { @@ -5154,40 +5167,40 @@ } .ki-lots-shopping .path2:before { content: "\ecf7"; - margin-left: -1em; + position: absolute; left: 0; } .ki-lots-shopping .path3:before { content: "\ecf8"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-lots-shopping .path4:before { content: "\ecf9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-lots-shopping .path5:before { content: "\ecfa"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-lots-shopping .path6:before { content: "\ecfb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-lots-shopping .path7:before { content: "\ecfc"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-lots-shopping .path8:before { content: "\ecfd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-lovely .path1:before { @@ -5197,7 +5210,7 @@ } .ki-lovely .path2:before { content: "\ecff"; - margin-left: -1em; + position: absolute; left: 0; } .ki-lts .path1:before { @@ -5206,7 +5219,7 @@ } .ki-lts .path2:before { content: "\ed01"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -5217,7 +5230,7 @@ } .ki-magnifier .path2:before { content: "\ed03"; - margin-left: -1em; + position: absolute; left: 0; } .ki-map .path1:before { @@ -5227,12 +5240,12 @@ } .ki-map .path2:before { content: "\ed05"; - margin-left: -1em; + position: absolute; left: 0; } .ki-map .path3:before { content: "\ed06"; - margin-left: -1em; + position: absolute; left: 0; } .ki-mask .path1:before { @@ -5242,12 +5255,12 @@ } .ki-mask .path2:before { content: "\ed08"; - margin-left: -1em; + position: absolute; left: 0; } .ki-mask .path3:before { content: "\ed09"; - margin-left: -1em; + position: absolute; left: 0; } .ki-maximize .path1:before { @@ -5257,22 +5270,22 @@ } .ki-maximize .path2:before { content: "\ed0b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-maximize .path3:before { content: "\ed0c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-maximize .path4:before { content: "\ed0d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-maximize .path5:before { content: "\ed0e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-medal-star .path1:before { @@ -5281,18 +5294,18 @@ } .ki-medal-star .path2:before { content: "\ed10"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-medal-star .path3:before { content: "\ed11"; - margin-left: -1em; + position: absolute; left: 0; } .ki-medal-star .path4:before { content: "\ed12"; - margin-left: -1em; + position: absolute; left: 0; } .ki-menu .path1:before { @@ -5302,17 +5315,17 @@ } .ki-menu .path2:before { content: "\ed14"; - margin-left: -1em; + position: absolute; left: 0; } .ki-menu .path3:before { content: "\ed15"; - margin-left: -1em; + position: absolute; left: 0; } .ki-menu .path4:before { content: "\ed16"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-add .path1:before { @@ -5322,12 +5335,12 @@ } .ki-message-add .path2:before { content: "\ed18"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-add .path3:before { content: "\ed19"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-edit .path1:before { @@ -5337,7 +5350,7 @@ } .ki-message-edit .path2:before { content: "\ed1b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-minus .path1:before { @@ -5347,7 +5360,7 @@ } .ki-message-minus .path2:before { content: "\ed1d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-notif .path1:before { @@ -5356,23 +5369,23 @@ } .ki-message-notif .path2:before { content: "\ed1f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-message-notif .path3:before { content: "\ed20"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-notif .path4:before { content: "\ed21"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-notif .path5:before { content: "\ed22"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-programming .path1:before { @@ -5382,17 +5395,17 @@ } .ki-message-programming .path2:before { content: "\ed24"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-programming .path3:before { content: "\ed25"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-programming .path4:before { content: "\ed26"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-question .path1:before { @@ -5402,12 +5415,12 @@ } .ki-message-question .path2:before { content: "\ed28"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-question .path3:before { content: "\ed29"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-text-2 .path1:before { @@ -5417,12 +5430,12 @@ } .ki-message-text-2 .path2:before { content: "\ed2b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-text-2 .path3:before { content: "\ed2c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-text .path1:before { @@ -5432,12 +5445,12 @@ } .ki-message-text .path2:before { content: "\ed2e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-message-text .path3:before { content: "\ed2f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-messages .path1:before { @@ -5446,23 +5459,23 @@ } .ki-messages .path2:before { content: "\ed31"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-messages .path3:before { content: "\ed32"; - margin-left: -1em; + position: absolute; left: 0; } .ki-messages .path4:before { content: "\ed33"; - margin-left: -1em; + position: absolute; left: 0; } .ki-messages .path5:before { content: "\ed34"; - margin-left: -1em; + position: absolute; left: 0; } .ki-microsoft .path1:before { @@ -5472,17 +5485,17 @@ } .ki-microsoft .path2:before { content: "\ed36"; - margin-left: -1em; + position: absolute; left: 0; } .ki-microsoft .path3:before { content: "\ed37"; - margin-left: -1em; + position: absolute; left: 0; } .ki-microsoft .path4:before { content: "\ed38"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -5493,12 +5506,12 @@ } .ki-milk .path2:before { content: "\ed3a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-milk .path3:before { content: "\ed3b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-minus-circle .path1:before { @@ -5508,7 +5521,7 @@ } .ki-minus-circle .path2:before { content: "\ed3d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-minus-folder .path1:before { @@ -5518,7 +5531,7 @@ } .ki-minus-folder .path2:before { content: "\ed3f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-minus-square .path1:before { @@ -5528,7 +5541,7 @@ } .ki-minus-square .path2:before { content: "\ed41"; - margin-left: -1em; + position: absolute; left: 0; } .ki-minus:before { @@ -5541,7 +5554,7 @@ } .ki-monitor-mobile .path2:before { content: "\ed44"; - margin-left: -1em; + position: absolute; left: 0; } .ki-moon .path1:before { @@ -5550,7 +5563,7 @@ } .ki-moon .path2:before { content: "\ed46"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -5561,17 +5574,17 @@ } .ki-more-2 .path2:before { content: "\ed48"; - margin-left: -1em; + position: absolute; left: 0; } .ki-more-2 .path3:before { content: "\ed49"; - margin-left: -1em; + position: absolute; left: 0; } .ki-more-2 .path4:before { content: "\ed4a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-mouse-circle .path1:before { @@ -5580,7 +5593,7 @@ } .ki-mouse-circle .path2:before { content: "\ed4c"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -5591,7 +5604,7 @@ } .ki-mouse-square .path2:before { content: "\ed4e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-mouse .path1:before { @@ -5601,7 +5614,7 @@ } .ki-mouse .path2:before { content: "\ed50"; - margin-left: -1em; + position: absolute; left: 0; } .ki-nexo .path1:before { @@ -5611,7 +5624,7 @@ } .ki-nexo .path2:before { content: "\ed52"; - margin-left: -1em; + position: absolute; left: 0; } .ki-night-day .path1:before { @@ -5620,48 +5633,48 @@ } .ki-night-day .path2:before { content: "\ed54"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-night-day .path3:before { content: "\ed55"; - margin-left: -1em; + position: absolute; left: 0; } .ki-night-day .path4:before { content: "\ed56"; - margin-left: -1em; + position: absolute; left: 0; } .ki-night-day .path5:before { content: "\ed57"; - margin-left: -1em; + position: absolute; left: 0; } .ki-night-day .path6:before { content: "\ed58"; - margin-left: -1em; + position: absolute; left: 0; } .ki-night-day .path7:before { content: "\ed59"; - margin-left: -1em; + position: absolute; left: 0; } .ki-night-day .path8:before { content: "\ed5a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-night-day .path9:before { content: "\ed5b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-night-day .path10:before { content: "\ed5c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-note-2 .path1:before { @@ -5671,17 +5684,17 @@ } .ki-note-2 .path2:before { content: "\ed5e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-note-2 .path3:before { content: "\ed5f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-note-2 .path4:before { content: "\ed60"; - margin-left: -1em; + position: absolute; left: 0; } .ki-note .path1:before { @@ -5691,7 +5704,7 @@ } .ki-note .path2:before { content: "\ed62"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notepad-bookmark .path1:before { @@ -5700,27 +5713,27 @@ } .ki-notepad-bookmark .path2:before { content: "\ed64"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notepad-bookmark .path3:before { content: "\ed65"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notepad-bookmark .path4:before { content: "\ed66"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notepad-bookmark .path5:before { content: "\ed67"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notepad-bookmark .path6:before { content: "\ed68"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -5731,7 +5744,7 @@ } .ki-notepad-edit .path2:before { content: "\ed6a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notepad .path1:before { @@ -5740,23 +5753,23 @@ } .ki-notepad .path2:before { content: "\ed6c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notepad .path3:before { content: "\ed6d"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-notepad .path4:before { content: "\ed6e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notepad .path5:before { content: "\ed6f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notification-2 .path1:before { @@ -5765,7 +5778,7 @@ } .ki-notification-2 .path2:before { content: "\ed71"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -5775,13 +5788,13 @@ } .ki-notification-bing .path2:before { content: "\ed73"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-notification-bing .path3:before { content: "\ed74"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notification-circle .path1:before { @@ -5790,7 +5803,7 @@ } .ki-notification-circle .path2:before { content: "\ed76"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -5800,13 +5813,13 @@ } .ki-notification-favorite .path2:before { content: "\ed78"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-notification-favorite .path3:before { content: "\ed79"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notification-on .path1:before { @@ -5816,22 +5829,22 @@ } .ki-notification-on .path2:before { content: "\ed7b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notification-on .path3:before { content: "\ed7c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notification-on .path4:before { content: "\ed7d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notification-on .path5:before { content: "\ed7e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notification-status .path1:before { @@ -5840,18 +5853,18 @@ } .ki-notification-status .path2:before { content: "\ed80"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-notification-status .path3:before { content: "\ed81"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notification-status .path4:before { content: "\ed82"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notification .path1:before { @@ -5861,12 +5874,12 @@ } .ki-notification .path2:before { content: "\ed84"; - margin-left: -1em; + position: absolute; left: 0; } .ki-notification .path3:before { content: "\ed85"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ocean .path1:before { @@ -5875,101 +5888,101 @@ } .ki-ocean .path2:before { content: "\ed87"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ocean .path3:before { content: "\ed88"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ocean .path4:before { content: "\ed89"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ocean .path5:before { content: "\ed8a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ocean .path6:before { content: "\ed8b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ocean .path7:before { content: "\ed8c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ocean .path8:before { content: "\ed8d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ocean .path9:before { content: "\ed8e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ocean .path10:before { content: "\ed8f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-ocean .path11:before { content: "\ed90"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-ocean .path12:before { content: "\ed91"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-ocean .path13:before { content: "\ed92"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-ocean .path14:before { content: "\ed93"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-ocean .path15:before { content: "\ed94"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-ocean .path16:before { content: "\ed95"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-ocean .path17:before { content: "\ed96"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-ocean .path18:before { content: "\ed97"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-ocean .path19:before { content: "\ed98"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -5980,17 +5993,17 @@ } .ki-office-bag .path2:before { content: "\ed9a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-office-bag .path3:before { content: "\ed9b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-office-bag .path4:before { content: "\ed9c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-package .path1:before { @@ -6000,12 +6013,12 @@ } .ki-package .path2:before { content: "\ed9e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-package .path3:before { content: "\ed9f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-pails .path1:before { @@ -6015,42 +6028,42 @@ } .ki-pails .path2:before { content: "\eda1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-pails .path3:before { content: "\eda2"; - margin-left: -1em; + position: absolute; left: 0; } .ki-pails .path4:before { content: "\eda3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-pails .path5:before { content: "\eda4"; - margin-left: -1em; + position: absolute; left: 0; } .ki-pails .path6:before { content: "\eda5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-pails .path7:before { content: "\eda6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-pails .path8:before { content: "\eda7"; - margin-left: -1em; + position: absolute; left: 0; } .ki-pails .path9:before { content: "\eda8"; - margin-left: -1em; + position: absolute; left: 0; } .ki-paintbucket .path1:before { @@ -6060,12 +6073,12 @@ } .ki-paintbucket .path2:before { content: "\edaa"; - margin-left: -1em; + position: absolute; left: 0; } .ki-paintbucket .path3:before { content: "\edab"; - margin-left: -1em; + position: absolute; left: 0; } .ki-paper-clip:before { @@ -6077,12 +6090,12 @@ } .ki-parcel-tracking .path2:before { content: "\edae"; - margin-left: -1em; + position: absolute; left: 0; } .ki-parcel-tracking .path3:before { content: "\edaf"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -6093,24 +6106,24 @@ } .ki-parcel .path2:before { content: "\edb1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-parcel .path3:before { content: "\edb2"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-parcel .path4:before { content: "\edb3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-parcel .path5:before { content: "\edb4"; - margin-left: -1em; + position: absolute; left: 0; } .ki-password-check .path1:before { @@ -6119,23 +6132,23 @@ } .ki-password-check .path2:before { content: "\edb6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-password-check .path3:before { content: "\edb7"; - margin-left: -1em; + position: absolute; left: 0; } .ki-password-check .path4:before { content: "\edb8"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-password-check .path5:before { content: "\edb9"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -6145,7 +6158,7 @@ } .ki-paypal .path2:before { content: "\edbb"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -6156,7 +6169,7 @@ } .ki-pencil .path2:before { content: "\edbd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-people .path1:before { @@ -6165,24 +6178,24 @@ } .ki-people .path2:before { content: "\edbf"; - margin-left: -1em; + position: absolute; left: 0; } .ki-people .path3:before { content: "\edc0"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-people .path4:before { content: "\edc1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-people .path5:before { content: "\edc2"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -6192,7 +6205,7 @@ } .ki-percentage .path2:before { content: "\edc4"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -6203,7 +6216,7 @@ } .ki-phone .path2:before { content: "\edc6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-photoshop .path1:before { @@ -6213,7 +6226,7 @@ } .ki-photoshop .path2:before { content: "\edc8"; - margin-left: -1em; + position: absolute; left: 0; } .ki-picture .path1:before { @@ -6223,7 +6236,7 @@ } .ki-picture .path2:before { content: "\edca"; - margin-left: -1em; + position: absolute; left: 0; } .ki-pill:before { @@ -6236,7 +6249,7 @@ } .ki-pin .path2:before { content: "\edcd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-plus-circle .path1:before { @@ -6246,7 +6259,7 @@ } .ki-plus-circle .path2:before { content: "\edcf"; - margin-left: -1em; + position: absolute; left: 0; } .ki-plus-square .path1:before { @@ -6256,13 +6269,13 @@ } .ki-plus-square .path2:before { content: "\edd1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-plus-square .path3:before { content: "\edd2"; - margin-left: -1em; + position: absolute; left: 0; } .ki-plus:before { @@ -6275,12 +6288,12 @@ } .ki-pointers .path2:before { content: "\edd5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-pointers .path3:before { content: "\edd6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-price-tag .path1:before { @@ -6290,12 +6303,12 @@ } .ki-price-tag .path2:before { content: "\edd8"; - margin-left: -1em; + position: absolute; left: 0; } .ki-price-tag .path3:before { content: "\edd9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-printer .path1:before { @@ -6305,22 +6318,22 @@ } .ki-printer .path2:before { content: "\eddb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-printer .path3:before { content: "\eddc"; - margin-left: -1em; + position: absolute; left: 0; } .ki-printer .path4:before { content: "\eddd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-printer .path5:before { content: "\edde"; - margin-left: -1em; + position: absolute; left: 0; } .ki-profile-circle .path1:before { @@ -6330,12 +6343,12 @@ } .ki-profile-circle .path2:before { content: "\ede0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-profile-circle .path3:before { content: "\ede1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-profile-user .path1:before { @@ -6345,18 +6358,18 @@ } .ki-profile-user .path2:before { content: "\ede3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-profile-user .path3:before { content: "\ede4"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-profile-user .path4:before { content: "\ede5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-pulse .path1:before { @@ -6366,7 +6379,7 @@ } .ki-pulse .path2:before { content: "\ede7"; - margin-left: -1em; + position: absolute; left: 0; } .ki-purchase .path1:before { @@ -6376,7 +6389,7 @@ } .ki-purchase .path2:before { content: "\ede9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-python .path1:before { @@ -6386,7 +6399,7 @@ } .ki-python .path2:before { content: "\edeb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-question-2 .path1:before { @@ -6396,12 +6409,12 @@ } .ki-question-2 .path2:before { content: "\eded"; - margin-left: -1em; + position: absolute; left: 0; } .ki-question-2 .path3:before { content: "\edee"; - margin-left: -1em; + position: absolute; left: 0; } .ki-question .path1:before { @@ -6411,12 +6424,12 @@ } .ki-question .path2:before { content: "\edf0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-question .path3:before { content: "\edf1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-questionnaire-tablet .path1:before { @@ -6426,7 +6439,7 @@ } .ki-questionnaire-tablet .path2:before { content: "\edf3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ranking .path1:before { @@ -6436,18 +6449,18 @@ } .ki-ranking .path2:before { content: "\edf5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ranking .path3:before { content: "\edf6"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-ranking .path4:before { content: "\edf7"; - margin-left: -1em; + position: absolute; left: 0; } .ki-react .path1:before { @@ -6457,7 +6470,7 @@ } .ki-react .path2:before { content: "\edf9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-receipt-square .path1:before { @@ -6467,7 +6480,7 @@ } .ki-receipt-square .path2:before { content: "\edfb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-rescue .path1:before { @@ -6477,7 +6490,7 @@ } .ki-rescue .path2:before { content: "\edfd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-right-left .path1:before { @@ -6486,12 +6499,12 @@ } .ki-right-left .path2:before { content: "\edff"; - margin-left: -1em; + position: absolute; left: 0; } .ki-right-left .path3:before { content: "\ee00"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -6502,7 +6515,7 @@ } .ki-right-square .path2:before { content: "\ee02"; - margin-left: -1em; + position: absolute; left: 0; } .ki-right:before { @@ -6515,7 +6528,7 @@ } .ki-rocket .path2:before { content: "\ee05"; - margin-left: -1em; + position: absolute; left: 0; } .ki-route .path1:before { @@ -6524,18 +6537,18 @@ } .ki-route .path2:before { content: "\ee07"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-route .path3:before { content: "\ee08"; - margin-left: -1em; + position: absolute; left: 0; } .ki-route .path4:before { content: "\ee09"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -6546,7 +6559,7 @@ } .ki-router .path2:before { content: "\ee0b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-row-horizontal .path1:before { @@ -6555,7 +6568,7 @@ } .ki-row-horizontal .path2:before { content: "\ee0d"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -6565,7 +6578,7 @@ } .ki-row-vertical .path2:before { content: "\ee0f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -6576,7 +6589,7 @@ } .ki-safe-home .path2:before { content: "\ee11"; - margin-left: -1em; + position: absolute; left: 0; } .ki-satellite .path1:before { @@ -6586,28 +6599,28 @@ } .ki-satellite .path2:before { content: "\ee13"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-satellite .path3:before { content: "\ee14"; - margin-left: -1em; + position: absolute; left: 0; } .ki-satellite .path4:before { content: "\ee15"; - margin-left: -1em; + position: absolute; left: 0; } .ki-satellite .path5:before { content: "\ee16"; - margin-left: -1em; + position: absolute; left: 0; } .ki-satellite .path6:before { content: "\ee17"; - margin-left: -1em; + position: absolute; left: 0; } .ki-save-2 .path1:before { @@ -6617,7 +6630,7 @@ } .ki-save-2 .path2:before { content: "\ee19"; - margin-left: -1em; + position: absolute; left: 0; } .ki-save-deposit .path1:before { @@ -6626,18 +6639,18 @@ } .ki-save-deposit .path2:before { content: "\ee1b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-save-deposit .path3:before { content: "\ee1c"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-save-deposit .path4:before { content: "\ee1d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-scan-barcode .path1:before { @@ -6646,40 +6659,40 @@ } .ki-scan-barcode .path2:before { content: "\ee1f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-scan-barcode .path3:before { content: "\ee20"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-scan-barcode .path4:before { content: "\ee21"; - margin-left: -1em; + position: absolute; left: 0; } .ki-scan-barcode .path5:before { content: "\ee22"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-scan-barcode .path6:before { content: "\ee23"; - margin-left: -1em; + position: absolute; left: 0; } .ki-scan-barcode .path7:before { content: "\ee24"; - margin-left: -1em; + position: absolute; left: 0; } .ki-scan-barcode .path8:before { content: "\ee25"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -6692,33 +6705,33 @@ } .ki-scooter .path2:before { content: "\ee28"; - margin-left: -1em; + position: absolute; left: 0; } .ki-scooter .path3:before { content: "\ee29"; - margin-left: -1em; + position: absolute; left: 0; } .ki-scooter .path4:before { content: "\ee2a"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-scooter .path5:before { content: "\ee2b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-scooter .path6:before { content: "\ee2c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-scooter .path7:before { content: "\ee2d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-screen .path1:before { @@ -6728,17 +6741,17 @@ } .ki-screen .path2:before { content: "\ee2f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-screen .path3:before { content: "\ee30"; - margin-left: -1em; + position: absolute; left: 0; } .ki-screen .path4:before { content: "\ee31"; - margin-left: -1em; + position: absolute; left: 0; } .ki-scroll .path1:before { @@ -6748,12 +6761,12 @@ } .ki-scroll .path2:before { content: "\ee33"; - margin-left: -1em; + position: absolute; left: 0; } .ki-scroll .path3:before { content: "\ee34"; - margin-left: -1em; + position: absolute; left: 0; } .ki-search-list .path1:before { @@ -6763,12 +6776,12 @@ } .ki-search-list .path2:before { content: "\ee36"; - margin-left: -1em; + position: absolute; left: 0; } .ki-search-list .path3:before { content: "\ee37"; - margin-left: -1em; + position: absolute; left: 0; } .ki-security-check .path1:before { @@ -6777,19 +6790,19 @@ } .ki-security-check .path2:before { content: "\ee39"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-security-check .path3:before { content: "\ee3a"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-security-check .path4:before { content: "\ee3b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-security-user .path1:before { @@ -6799,7 +6812,7 @@ } .ki-security-user .path2:before { content: "\ee3d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-send .path1:before { @@ -6808,7 +6821,7 @@ } .ki-send .path2:before { content: "\ee3f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -6819,7 +6832,7 @@ } .ki-setting-2 .path2:before { content: "\ee41"; - margin-left: -1em; + position: absolute; left: 0; } .ki-setting-3 .path1:before { @@ -6829,22 +6842,22 @@ } .ki-setting-3 .path2:before { content: "\ee43"; - margin-left: -1em; + position: absolute; left: 0; } .ki-setting-3 .path3:before { content: "\ee44"; - margin-left: -1em; + position: absolute; left: 0; } .ki-setting-3 .path4:before { content: "\ee45"; - margin-left: -1em; + position: absolute; left: 0; } .ki-setting-3 .path5:before { content: "\ee46"; - margin-left: -1em; + position: absolute; left: 0; } .ki-setting-4:before { @@ -6857,7 +6870,7 @@ } .ki-setting .path2:before { content: "\ee49"; - margin-left: -1em; + position: absolute; left: 0; } .ki-share .path1:before { @@ -6867,29 +6880,29 @@ } .ki-share .path2:before { content: "\ee4b"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-share .path3:before { content: "\ee4c"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-share .path4:before { content: "\ee4d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-share .path5:before { content: "\ee4e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-share .path6:before { content: "\ee4f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-shield-cross .path1:before { @@ -6899,12 +6912,12 @@ } .ki-shield-cross .path2:before { content: "\ee51"; - margin-left: -1em; + position: absolute; left: 0; } .ki-shield-cross .path3:before { content: "\ee52"; - margin-left: -1em; + position: absolute; left: 0; } .ki-shield-search .path1:before { @@ -6914,12 +6927,12 @@ } .ki-shield-search .path2:before { content: "\ee54"; - margin-left: -1em; + position: absolute; left: 0; } .ki-shield-search .path3:before { content: "\ee55"; - margin-left: -1em; + position: absolute; left: 0; } .ki-shield-slash .path1:before { @@ -6928,13 +6941,13 @@ } .ki-shield-slash .path2:before { content: "\ee57"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-shield-slash .path3:before { content: "\ee58"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -6945,7 +6958,7 @@ } .ki-shield-tick .path2:before { content: "\ee5a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-shield .path1:before { @@ -6955,7 +6968,7 @@ } .ki-shield .path2:before { content: "\ee5c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ship .path1:before { @@ -6965,12 +6978,12 @@ } .ki-ship .path2:before { content: "\ee5e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ship .path3:before { content: "\ee5f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-shop .path1:before { @@ -6979,25 +6992,25 @@ } .ki-shop .path2:before { content: "\ee61"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-shop .path3:before { content: "\ee62"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-shop .path4:before { content: "\ee63"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-shop .path5:before { content: "\ee64"; - margin-left: -1em; + position: absolute; left: 0; } .ki-simcard-2 .path1:before { @@ -7007,7 +7020,7 @@ } .ki-simcard-2 .path2:before { content: "\ee66"; - margin-left: -1em; + position: absolute; left: 0; } .ki-simcard .path1:before { @@ -7017,22 +7030,22 @@ } .ki-simcard .path2:before { content: "\ee68"; - margin-left: -1em; + position: absolute; left: 0; } .ki-simcard .path3:before { content: "\ee69"; - margin-left: -1em; + position: absolute; left: 0; } .ki-simcard .path4:before { content: "\ee6a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-simcard .path5:before { content: "\ee6b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-size .path1:before { @@ -7042,7 +7055,7 @@ } .ki-size .path2:before { content: "\ee6d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-slack .path1:before { @@ -7051,40 +7064,40 @@ } .ki-slack .path2:before { content: "\ee6f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-slack .path3:before { content: "\ee70"; - margin-left: -1em; + position: absolute; left: 0; } .ki-slack .path4:before { content: "\ee71"; - margin-left: -1em; + position: absolute; left: 0; } .ki-slack .path5:before { content: "\ee72"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-slack .path6:before { content: "\ee73"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-slack .path7:before { content: "\ee74"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-slack .path8:before { content: "\ee75"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7094,12 +7107,12 @@ } .ki-slider-horizontal-2 .path2:before { content: "\ee77"; - margin-left: -1em; + position: absolute; left: 0; } .ki-slider-horizontal-2 .path3:before { content: "\ee78"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7110,12 +7123,12 @@ } .ki-slider-horizontal .path2:before { content: "\ee7a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-slider-horizontal .path3:before { content: "\ee7b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-slider-vertical-2 .path1:before { @@ -7125,12 +7138,12 @@ } .ki-slider-vertical-2 .path2:before { content: "\ee7d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-slider-vertical-2 .path3:before { content: "\ee7e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-slider-vertical .path1:before { @@ -7139,12 +7152,12 @@ } .ki-slider-vertical .path2:before { content: "\ee80"; - margin-left: -1em; + position: absolute; left: 0; } .ki-slider-vertical .path3:before { content: "\ee81"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7155,17 +7168,17 @@ } .ki-slider .path2:before { content: "\ee83"; - margin-left: -1em; + position: absolute; left: 0; } .ki-slider .path3:before { content: "\ee84"; - margin-left: -1em; + position: absolute; left: 0; } .ki-slider .path4:before { content: "\ee85"; - margin-left: -1em; + position: absolute; left: 0; } .ki-sms .path1:before { @@ -7175,7 +7188,7 @@ } .ki-sms .path2:before { content: "\ee87"; - margin-left: -1em; + position: absolute; left: 0; } .ki-snapchat .path1:before { @@ -7184,7 +7197,7 @@ } .ki-snapchat .path2:before { content: "\ee89"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7194,7 +7207,7 @@ } .ki-social-media .path2:before { content: "\ee8b"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7205,7 +7218,7 @@ } .ki-soft-2 .path2:before { content: "\ee8d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-soft-3 .path1:before { @@ -7214,7 +7227,7 @@ } .ki-soft-3 .path2:before { content: "\ee8f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7225,27 +7238,27 @@ } .ki-soft .path2:before { content: "\ee91"; - margin-left: -1em; + position: absolute; left: 0; } .ki-soft .path3:before { content: "\ee92"; - margin-left: -1em; + position: absolute; left: 0; } .ki-soft .path4:before { content: "\ee93"; - margin-left: -1em; + position: absolute; left: 0; } .ki-soft .path5:before { content: "\ee94"; - margin-left: -1em; + position: absolute; left: 0; } .ki-soft .path6:before { content: "\ee95"; - margin-left: -1em; + position: absolute; left: 0; } .ki-some-files .path1:before { @@ -7255,7 +7268,7 @@ } .ki-some-files .path2:before { content: "\ee97"; - margin-left: -1em; + position: absolute; left: 0; } .ki-sort .path1:before { @@ -7265,17 +7278,17 @@ } .ki-sort .path2:before { content: "\ee99"; - margin-left: -1em; + position: absolute; left: 0; } .ki-sort .path3:before { content: "\ee9a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-sort .path4:before { content: "\ee9b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-speaker .path1:before { @@ -7285,12 +7298,12 @@ } .ki-speaker .path2:before { content: "\ee9d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-speaker .path3:before { content: "\ee9e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-spotify .path1:before { @@ -7299,7 +7312,7 @@ } .ki-spotify .path2:before { content: "\eea0"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7313,17 +7326,17 @@ } .ki-square-brackets .path2:before { content: "\eea3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-square-brackets .path3:before { content: "\eea4"; - margin-left: -1em; + position: absolute; left: 0; } .ki-square-brackets .path4:before { content: "\eea5"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7337,13 +7350,13 @@ } .ki-status .path2:before { content: "\eea8"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-status .path3:before { content: "\eea9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-subtitle .path1:before { @@ -7353,22 +7366,22 @@ } .ki-subtitle .path2:before { content: "\eeab"; - margin-left: -1em; + position: absolute; left: 0; } .ki-subtitle .path3:before { content: "\eeac"; - margin-left: -1em; + position: absolute; left: 0; } .ki-subtitle .path4:before { content: "\eead"; - margin-left: -1em; + position: absolute; left: 0; } .ki-subtitle .path5:before { content: "\eeae"; - margin-left: -1em; + position: absolute; left: 0; } .ki-sun .path1:before { @@ -7377,42 +7390,42 @@ } .ki-sun .path2:before { content: "\eeb0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-sun .path3:before { content: "\eeb1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-sun .path4:before { content: "\eeb2"; - margin-left: -1em; + position: absolute; left: 0; } .ki-sun .path5:before { content: "\eeb3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-sun .path6:before { content: "\eeb4"; - margin-left: -1em; + position: absolute; left: 0; } .ki-sun .path7:before { content: "\eeb5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-sun .path8:before { content: "\eeb6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-sun .path9:before { content: "\eeb7"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7423,12 +7436,12 @@ } .ki-support-24 .path2:before { content: "\eeb9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-support-24 .path3:before { content: "\eeba"; - margin-left: -1em; + position: absolute; left: 0; } .ki-switch .path1:before { @@ -7437,7 +7450,7 @@ } .ki-switch .path2:before { content: "\eebc"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7448,12 +7461,12 @@ } .ki-syringe .path2:before { content: "\eebe"; - margin-left: -1em; + position: absolute; left: 0; } .ki-syringe .path3:before { content: "\eebf"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tablet-book .path1:before { @@ -7463,7 +7476,7 @@ } .ki-tablet-book .path2:before { content: "\eec1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tablet-delete .path1:before { @@ -7472,13 +7485,13 @@ } .ki-tablet-delete .path2:before { content: "\eec3"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-tablet-delete .path3:before { content: "\eec4"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tablet-down .path1:before { @@ -7488,12 +7501,12 @@ } .ki-tablet-down .path2:before { content: "\eec6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tablet-down .path3:before { content: "\eec7"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tablet-ok .path1:before { @@ -7502,13 +7515,13 @@ } .ki-tablet-ok .path2:before { content: "\eec9"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-tablet-ok .path3:before { content: "\eeca"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tablet-text-down .path1:before { @@ -7517,17 +7530,17 @@ } .ki-tablet-text-down .path2:before { content: "\eecc"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tablet-text-down .path3:before { content: "\eecd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tablet-text-down .path4:before { content: "\eece"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7537,7 +7550,7 @@ } .ki-tablet-text-up .path2:before { content: "\eed0"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7548,12 +7561,12 @@ } .ki-tablet-up .path2:before { content: "\eed2"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tablet-up .path3:before { content: "\eed3"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tablet .path1:before { @@ -7563,12 +7576,12 @@ } .ki-tablet .path2:before { content: "\eed5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tablet .path3:before { content: "\eed6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tag-cross .path1:before { @@ -7578,12 +7591,12 @@ } .ki-tag-cross .path2:before { content: "\eed8"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tag-cross .path3:before { content: "\eed9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tag .path1:before { @@ -7593,12 +7606,12 @@ } .ki-tag .path2:before { content: "\eedb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tag .path3:before { content: "\eedc"; - margin-left: -1em; + position: absolute; left: 0; } .ki-teacher .path1:before { @@ -7608,7 +7621,7 @@ } .ki-teacher .path2:before { content: "\eede"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tech-wifi .path1:before { @@ -7618,7 +7631,7 @@ } .ki-tech-wifi .path2:before { content: "\eee0"; - margin-left: -1em; + position: absolute; left: 0; } .ki-technology-2 .path1:before { @@ -7628,7 +7641,7 @@ } .ki-technology-2 .path2:before { content: "\eee2"; - margin-left: -1em; + position: absolute; left: 0; } .ki-technology-3 .path1:before { @@ -7637,19 +7650,19 @@ } .ki-technology-3 .path2:before { content: "\eee4"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-technology-3 .path3:before { content: "\eee5"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-technology-3 .path4:before { content: "\eee6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-technology-4 .path1:before { @@ -7658,33 +7671,33 @@ } .ki-technology-4 .path2:before { content: "\eee8"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-technology-4 .path3:before { content: "\eee9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-technology-4 .path4:before { content: "\eeea"; - margin-left: -1em; + position: absolute; left: 0; } .ki-technology-4 .path5:before { content: "\eeeb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-technology-4 .path6:before { content: "\eeec"; - margin-left: -1em; + position: absolute; left: 0; } .ki-technology-4 .path7:before { content: "\eeed"; - margin-left: -1em; + position: absolute; left: 0; } .ki-technology .path1:before { @@ -7693,49 +7706,49 @@ } .ki-technology .path2:before { content: "\eeef"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-technology .path3:before { content: "\eef0"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-technology .path4:before { content: "\eef1"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-technology .path5:before { content: "\eef2"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-technology .path6:before { content: "\eef3"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-technology .path7:before { content: "\eef4"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-technology .path8:before { content: "\eef5"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-technology .path9:before { content: "\eef6"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7745,13 +7758,13 @@ } .ki-telephone-geolocation .path2:before { content: "\eef8"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-telephone-geolocation .path3:before { content: "\eef9"; - margin-left: -1em; + position: absolute; left: 0; } .ki-test-tubes .path1:before { @@ -7761,7 +7774,7 @@ } .ki-test-tubes .path2:before { content: "\eefb"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-align-center .path1:before { @@ -7770,18 +7783,18 @@ } .ki-text-align-center .path2:before { content: "\eefd"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-align-center .path3:before { content: "\eefe"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-text-align-center .path4:before { content: "\eeff"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7791,18 +7804,18 @@ } .ki-text-align-justify-center .path2:before { content: "\ef01"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-align-justify-center .path3:before { content: "\ef02"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-text-align-justify-center .path4:before { content: "\ef03"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7812,18 +7825,18 @@ } .ki-text-align-left .path2:before { content: "\ef05"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-align-left .path3:before { content: "\ef06"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-text-align-left .path4:before { content: "\ef07"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7833,18 +7846,18 @@ } .ki-text-align-right .path2:before { content: "\ef09"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-align-right .path3:before { content: "\ef0a"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-text-align-right .path4:before { content: "\ef0b"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -7855,12 +7868,12 @@ } .ki-text-bold .path2:before { content: "\ef0d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-bold .path3:before { content: "\ef0e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-circle .path1:before { @@ -7869,29 +7882,29 @@ } .ki-text-circle .path2:before { content: "\ef10"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-circle .path3:before { content: "\ef11"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-text-circle .path4:before { content: "\ef12"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-text-circle .path5:before { content: "\ef13"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-circle .path6:before { content: "\ef14"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-italic .path1:before { @@ -7901,17 +7914,17 @@ } .ki-text-italic .path2:before { content: "\ef16"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-italic .path3:before { content: "\ef17"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-italic .path4:before { content: "\ef18"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-number .path1:before { @@ -7920,29 +7933,29 @@ } .ki-text-number .path2:before { content: "\ef1a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-number .path3:before { content: "\ef1b"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-text-number .path4:before { content: "\ef1c"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-text-number .path5:before { content: "\ef1d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-number .path6:before { content: "\ef1e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-strikethrough .path1:before { @@ -7952,13 +7965,13 @@ } .ki-text-strikethrough .path2:before { content: "\ef20"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-text-strikethrough .path3:before { content: "\ef21"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-underline .path1:before { @@ -7968,12 +7981,12 @@ } .ki-text-underline .path2:before { content: "\ef23"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text-underline .path3:before { content: "\ef24"; - margin-left: -1em; + position: absolute; left: 0; } .ki-text:before { @@ -7986,7 +7999,7 @@ } .ki-thermometer .path2:before { content: "\ef27"; - margin-left: -1em; + position: absolute; left: 0; } .ki-theta .path1:before { @@ -7995,7 +8008,7 @@ } .ki-theta .path2:before { content: "\ef29"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -8006,7 +8019,7 @@ } .ki-tiktok .path2:before { content: "\ef2b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-time .path1:before { @@ -8016,7 +8029,7 @@ } .ki-time .path2:before { content: "\ef2d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-timer .path1:before { @@ -8026,12 +8039,12 @@ } .ki-timer .path2:before { content: "\ef2f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-timer .path3:before { content: "\ef30"; - margin-left: -1em; + position: absolute; left: 0; } .ki-to-left:before { @@ -8047,7 +8060,7 @@ } .ki-toggle-off-circle .path2:before { content: "\ef34"; - margin-left: -1em; + position: absolute; left: 0; } .ki-toggle-off .path1:before { @@ -8057,7 +8070,7 @@ } .ki-toggle-off .path2:before { content: "\ef36"; - margin-left: -1em; + position: absolute; left: 0; } .ki-toggle-on-circle .path1:before { @@ -8067,7 +8080,7 @@ } .ki-toggle-on-circle .path2:before { content: "\ef38"; - margin-left: -1em; + position: absolute; left: 0; } .ki-toggle-on .path1:before { @@ -8077,7 +8090,7 @@ } .ki-toggle-on .path2:before { content: "\ef3a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-trailer .path1:before { @@ -8086,22 +8099,22 @@ } .ki-trailer .path2:before { content: "\ef3c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-trailer .path3:before { content: "\ef3d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-trailer .path4:before { content: "\ef3e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-trailer .path5:before { content: "\ef3f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -8112,17 +8125,17 @@ } .ki-trash-square .path2:before { content: "\ef41"; - margin-left: -1em; + position: absolute; left: 0; } .ki-trash-square .path3:before { content: "\ef42"; - margin-left: -1em; + position: absolute; left: 0; } .ki-trash-square .path4:before { content: "\ef43"; - margin-left: -1em; + position: absolute; left: 0; } .ki-trash .path1:before { @@ -8132,22 +8145,22 @@ } .ki-trash .path2:before { content: "\ef45"; - margin-left: -1em; + position: absolute; left: 0; } .ki-trash .path3:before { content: "\ef46"; - margin-left: -1em; + position: absolute; left: 0; } .ki-trash .path4:before { content: "\ef47"; - margin-left: -1em; + position: absolute; left: 0; } .ki-trash .path5:before { content: "\ef48"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tree .path1:before { @@ -8157,12 +8170,12 @@ } .ki-tree .path2:before { content: "\ef4a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-tree .path3:before { content: "\ef4b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-trello .path1:before { @@ -8172,12 +8185,12 @@ } .ki-trello .path2:before { content: "\ef4d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-trello .path3:before { content: "\ef4e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-triangle .path1:before { @@ -8186,13 +8199,13 @@ } .ki-triangle .path2:before { content: "\ef50"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-triangle .path3:before { content: "\ef51"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -8202,23 +8215,23 @@ } .ki-truck .path2:before { content: "\ef53"; - margin-left: -1em; + position: absolute; left: 0; } .ki-truck .path3:before { content: "\ef54"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-truck .path4:before { content: "\ef55"; - margin-left: -1em; + position: absolute; left: 0; } .ki-truck .path5:before { content: "\ef56"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -8229,12 +8242,12 @@ } .ki-ts .path2:before { content: "\ef58"; - margin-left: -1em; + position: absolute; left: 0; } .ki-ts .path3:before { content: "\ef59"; - margin-left: -1em; + position: absolute; left: 0; } .ki-twitch .path1:before { @@ -8244,12 +8257,12 @@ } .ki-twitch .path2:before { content: "\ef5b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-twitch .path3:before { content: "\ef5c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-twitter .path1:before { @@ -8259,7 +8272,7 @@ } .ki-twitter .path2:before { content: "\ef5e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-two-credit-cart .path1:before { @@ -8268,23 +8281,23 @@ } .ki-two-credit-cart .path2:before { content: "\ef60"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-two-credit-cart .path3:before { content: "\ef61"; - margin-left: -1em; + position: absolute; left: 0; } .ki-two-credit-cart .path4:before { content: "\ef62"; - margin-left: -1em; + position: absolute; left: 0; } .ki-two-credit-cart .path5:before { content: "\ef63"; - margin-left: -1em; + position: absolute; left: 0; } .ki-underlining .path1:before { @@ -8294,12 +8307,12 @@ } .ki-underlining .path2:before { content: "\ef65"; - margin-left: -1em; + position: absolute; left: 0; } .ki-underlining .path3:before { content: "\ef66"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -8310,12 +8323,12 @@ } .ki-up-down .path2:before { content: "\ef68"; - margin-left: -1em; + position: absolute; left: 0; } .ki-up-down .path3:before { content: "\ef69"; - margin-left: -1em; + position: absolute; left: 0; } .ki-up-square .path1:before { @@ -8325,7 +8338,7 @@ } .ki-up-square .path2:before { content: "\ef6b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-up:before { @@ -8338,17 +8351,17 @@ } .ki-update-file .path2:before { content: "\ef6e"; - margin-left: -1em; + position: absolute; left: 0; } .ki-update-file .path3:before { content: "\ef6f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-update-file .path4:before { content: "\ef70"; - margin-left: -1em; + position: absolute; left: 0; } .ki-update-folder .path1:before { @@ -8358,7 +8371,7 @@ } .ki-update-folder .path2:before { content: "\ef72"; - margin-left: -1em; + position: absolute; left: 0; } .ki-user-edit .path1:before { @@ -8367,13 +8380,13 @@ } .ki-user-edit .path2:before { content: "\ef74"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-user-edit .path3:before { content: "\ef75"; - margin-left: -1em; + position: absolute; left: 0; } .ki-user-square .path1:before { @@ -8383,12 +8396,12 @@ } .ki-user-square .path2:before { content: "\ef77"; - margin-left: -1em; + position: absolute; left: 0; } .ki-user-square .path3:before { content: "\ef78"; - margin-left: -1em; + position: absolute; left: 0; } .ki-user-tick .path1:before { @@ -8397,12 +8410,12 @@ } .ki-user-tick .path2:before { content: "\ef7a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-user-tick .path3:before { content: "\ef7b"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -8413,7 +8426,7 @@ } .ki-user .path2:before { content: "\ef7d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-verify .path1:before { @@ -8423,7 +8436,7 @@ } .ki-verify .path2:before { content: "\ef7f"; - margin-left: -1em; + position: absolute; left: 0; } .ki-vibe .path1:before { @@ -8432,7 +8445,7 @@ } .ki-vibe .path2:before { content: "\ef81"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -8443,12 +8456,12 @@ } .ki-virus .path2:before { content: "\ef83"; - margin-left: -1em; + position: absolute; left: 0; } .ki-virus .path3:before { content: "\ef84"; - margin-left: -1em; + position: absolute; left: 0; } .ki-vue .path1:before { @@ -8458,7 +8471,7 @@ } .ki-vue .path2:before { content: "\ef86"; - margin-left: -1em; + position: absolute; left: 0; } .ki-vuesax .path1:before { @@ -8467,13 +8480,13 @@ } .ki-vuesax .path2:before { content: "\ef88"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.4; } .ki-vuesax .path3:before { content: "\ef89"; - margin-left: -1em; + position: absolute; left: 0; } .ki-wallet .path1:before { @@ -8483,17 +8496,17 @@ } .ki-wallet .path2:before { content: "\ef8b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-wallet .path3:before { content: "\ef8c"; - margin-left: -1em; + position: absolute; left: 0; } .ki-wallet .path4:before { content: "\ef8d"; - margin-left: -1em; + position: absolute; left: 0; } .ki-wanchain .path1:before { @@ -8502,7 +8515,7 @@ } .ki-wanchain .path2:before { content: "\ef8f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -8513,7 +8526,7 @@ } .ki-watch .path2:before { content: "\ef91"; - margin-left: -1em; + position: absolute; left: 0; } .ki-whatsapp .path1:before { @@ -8523,7 +8536,7 @@ } .ki-whatsapp .path2:before { content: "\ef93"; - margin-left: -1em; + position: absolute; left: 0; } .ki-wifi-home .path1:before { @@ -8533,17 +8546,17 @@ } .ki-wifi-home .path2:before { content: "\ef95"; - margin-left: -1em; + position: absolute; left: 0; } .ki-wifi-home .path3:before { content: "\ef96"; - margin-left: -1em; + position: absolute; left: 0; } .ki-wifi-home .path4:before { content: "\ef97"; - margin-left: -1em; + position: absolute; left: 0; } .ki-wifi-square .path1:before { @@ -8553,17 +8566,17 @@ } .ki-wifi-square .path2:before { content: "\ef99"; - margin-left: -1em; + position: absolute; left: 0; } .ki-wifi-square .path3:before { content: "\ef9a"; - margin-left: -1em; + position: absolute; left: 0; } .ki-wifi-square .path4:before { content: "\ef9b"; - margin-left: -1em; + position: absolute; left: 0; } .ki-wifi .path1:before { @@ -8572,19 +8585,19 @@ } .ki-wifi .path2:before { content: "\ef9d"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-wifi .path3:before { content: "\ef9e"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-wifi .path4:before { content: "\ef9f"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -8595,7 +8608,7 @@ } .ki-wrench .path2:before { content: "\efa1"; - margin-left: -1em; + position: absolute; left: 0; } .ki-xaomi .path1:before { @@ -8604,7 +8617,7 @@ } .ki-xaomi .path2:before { content: "\efa3"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -8615,12 +8628,12 @@ } .ki-xd .path2:before { content: "\efa5"; - margin-left: -1em; + position: absolute; left: 0; } .ki-xd .path3:before { content: "\efa6"; - margin-left: -1em; + position: absolute; left: 0; } .ki-xmr .path1:before { @@ -8629,7 +8642,7 @@ } .ki-xmr .path2:before { content: "\efa8"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } @@ -8640,13 +8653,13 @@ } .ki-yii .path2:before { content: "\efaa"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } .ki-yii .path3:before { content: "\efab"; - margin-left: -1em; + position: absolute; left: 0; } .ki-youtube .path1:before { @@ -8655,7 +8668,7 @@ } .ki-youtube .path2:before { content: "\efad"; - margin-left: -1em; + position: absolute; left: 0; opacity: 0.3; } diff --git a/resources/_keenthemes/src/plugins/keenicons/outline/demo.html b/resources/_keenthemes/src/plugins/keenicons/outline/demo.html index d871ee8..502511d 100644 --- a/resources/_keenthemes/src/plugins/keenicons/outline/demo.html +++ b/resources/_keenthemes/src/plugins/keenicons/outline/demo.html @@ -9,10 +9,10 @@
-

Font Name: icomoon (Glyphs: 573)

+

Font Name: KeenIcons (Glyphs: 573)

-

Grid Size: Unknown

+

Grid Size: 24

@@ -8047,12 +8047,12 @@ -
  +
 
-

Generated by IcoMoon

+

Generated by IcoMoon

diff --git a/resources/_keenthemes/src/plugins/keenicons/solid/demo.html b/resources/_keenthemes/src/plugins/keenicons/solid/demo.html index 3c0d416..69e3cd6 100644 --- a/resources/_keenthemes/src/plugins/keenicons/solid/demo.html +++ b/resources/_keenthemes/src/plugins/keenicons/solid/demo.html @@ -9,10 +9,10 @@
-

Font Name: icomoon (Glyphs: 573)

+

Font Name: KeenIcons (Glyphs: 573)

-

Grid Size: Unknown

+

Grid Size: 24

@@ -8047,12 +8047,12 @@ -
  +
 
-

Generated by IcoMoon

+

Generated by IcoMoon

diff --git a/resources/_keenthemes/src/sass/.DS_Store b/resources/_keenthemes/src/sass/.DS_Store new file mode 100644 index 0000000..ab02430 Binary files /dev/null and b/resources/_keenthemes/src/sass/.DS_Store differ diff --git a/resources/_keenthemes/src/sass/_init.scss b/resources/_keenthemes/src/sass/_init.scss index 04a714d..e0fa29e 100644 --- a/resources/_keenthemes/src/sass/_init.scss +++ b/resources/_keenthemes/src/sass/_init.scss @@ -13,6 +13,7 @@ @import "components/variables.custom"; @import "components/variables"; @import "components/variables-dark"; +@import "components/variables.override"; // Bootstrap initializaton @import "bootstrap/scss/functions"; diff --git a/resources/_keenthemes/src/sass/components/_badge.scss b/resources/_keenthemes/src/sass/components/_badge.scss index 6886d3c..f1d7c05 100644 --- a/resources/_keenthemes/src/sass/components/_badge.scss +++ b/resources/_keenthemes/src/sass/components/_badge.scss @@ -63,13 +63,23 @@ &.badge-outline { border: 1px solid var(--#{$prefix}#{$name}); - color: var(--#{$prefix}#{$name}); background-color: transparent; + + @if $name == 'secondary' { + color: var(--#{$prefix}#{$name}-inverse); + } @else { + color: var(--#{$prefix}#{$name}); + } } } - .badge-light-#{$name} { - color: var(--#{$prefix}#{$name}); + .badge-light-#{$name} { background-color: var(--#{$prefix}#{$name}-light); + + @if $name == 'secondary' { + color: var(--#{$prefix}#{$name}-inverse); + } @else { + color: var(--#{$prefix}#{$name}); + } } } diff --git a/resources/_keenthemes/src/sass/components/_btn-secondary.scss b/resources/_keenthemes/src/sass/components/_btn-secondary.scss new file mode 100644 index 0000000..e729108 --- /dev/null +++ b/resources/_keenthemes/src/sass/components/_btn-secondary.scss @@ -0,0 +1,36 @@ +// +// Secondary button +// + +// Desktop mode +@include media-breakpoint-up(lg) { + .btn.btn-secondary { + @include button-custom-variant( + $color: null, + $icon-color: var(--#{$prefix}gray-600), + $border-color: null, + $bg-color: var(--#{$prefix}gray-200), + $color-active: null, + $icon-color-active: var(--#{$prefix}primary), + $border-color-active: null, + $bg-color-active: var(--#{$prefix}gray-300), + ); + } +} + +@include color-mode(dark) { + // Secondary button + .btn.btn-secondary { + @include button-custom-variant( + $color: null, + $icon-color: #878794, + $border-color: null, + $bg-color: #1A1A1A, + $color-active: null, + $icon-color-active: null, + $border-color-active: null, + $bg-color-active: #1A1A1A, + ); + } +} + diff --git a/resources/_keenthemes/src/sass/components/_card.scss b/resources/_keenthemes/src/sass/components/_card.scss index 50e3155..2941657 100644 --- a/resources/_keenthemes/src/sass/components/_card.scss +++ b/resources/_keenthemes/src/sass/components/_card.scss @@ -4,6 +4,9 @@ // Base .card { + --#{$prefix}card-box-shadow: var(--#{$prefix}root-card-box-shadow); + --#{$prefix}card-border-color: var(--#{$prefix}root-card-border-color); + @if ($card-border-enabled) { border: $card-border-width $card-border-style var(--#{$prefix}card-border-color); } @else { @@ -59,7 +62,7 @@ .card-label { font-weight: 500; font-size: 1.275rem; - color: var(--#{$prefix}text-dark); + color: var(--#{$prefix}text-gray-900); } .card-label { @@ -257,6 +260,10 @@ padding: $card-py $card-px !important; } +.card-border { + border: $card-border-width $card-border-style var(--#{$prefix}root-card-border-color) !important; +} + .card-px { padding-left: $card-px !important; padding-right: $card-px !important; diff --git a/resources/_keenthemes/src/sass/components/_code.scss b/resources/_keenthemes/src/sass/components/_code.scss index 3ea1fa9..a22b2e1 100644 --- a/resources/_keenthemes/src/sass/components/_code.scss +++ b/resources/_keenthemes/src/sass/components/_code.scss @@ -5,11 +5,20 @@ code:not([class*="language-"]) { font-weight: $code-font-weight; color: var(--#{$prefix}code-color); - line-height: inherit; - font-size: inherit; + border: 1px solid var(--#{$prefix}code-border-color); background-color: var(--#{$prefix}code-bg); - padding: $code-padding; - margin: $code-margin; - box-shadow: var(--#{$prefix}code-box-shadow); @include border-radius($code-border-radius); + line-height: inherit; + font-size: $code-font-size; + padding: $code-padding; + margin: $code-margin; + box-shadow: $code-shadow; + + @each $name, $value in $theme-colors { + &.code-#{$name} { + color: var(--#{$prefix}#{$name}); + background-color: var(--#{$prefix}#{$name}-light); + border: 1px solid var(--#{$prefix}#{$name}); + } + } } diff --git a/resources/_keenthemes/src/sass/components/_drawer.scss b/resources/_keenthemes/src/sass/components/_drawer.scss index d88c826..97d22f3 100644 --- a/resources/_keenthemes/src/sass/components/_drawer.scss +++ b/resources/_keenthemes/src/sass/components/_drawer.scss @@ -23,6 +23,22 @@ transform: translateX(100%); } + &.drawer-bottom { + bottom: 0; + top: auto; + left: 0; + right: 0; + transform: translateY(100%); + } + + &.drawer-top { + top: 0; + bottom: auto; + left: 0; + right: 0; + transform: translateY(-100%); + } + &.drawer-on { transform: none; box-shadow: var(--#{$prefix}drawer-box-shadow); diff --git a/resources/_keenthemes/src/sass/components/_root.scss b/resources/_keenthemes/src/sass/components/_root.scss index 2853ec3..2557df3 100644 --- a/resources/_keenthemes/src/sass/components/_root.scss +++ b/resources/_keenthemes/src/sass/components/_root.scss @@ -48,6 +48,11 @@ --#{$prefix}#{$name}-inverse: #{$value}; } + // Contextual clarity state colors + @each $name, $value in $theme-clarity-colors { + --#{$prefix}#{$name}-clarity: #{$value}; + } + // Contextual rbg colors @each $name, $value in $theme-colors { --#{$prefix}#{$name}-rgb: #{to-rgb($value)}; @@ -83,6 +88,9 @@ --#{$prefix}input-solid-bg-focus: #{$input-solid-bg-focus}; --#{$prefix}input-solid-placeholder-color: #{$input-solid-placeholder-color}; + // Card + --#{$prefix}root-card-box-shadow: #{$card-box-shadow}; + --#{$prefix}root-card-border-color: #{$card-border-color}; // Tooltip --#{$prefix}tooltip-box-shadow: #{$tooltip-box-shadow-dark}; @@ -97,7 +105,8 @@ // Code --#{$prefix}code-bg: #{$code-bg}; - --#{$prefix}code-box-shadow: #{$code-box-shadow}; + --#{$prefix}code-shadow: #{$code-shadow}; + --#{$prefix}code-border-color: #{$code-border-color}; --#{$prefix}code-color: #{$code-color}; // Symbol @@ -139,9 +148,6 @@ // Keenthemes scrollbar component --#{$prefix}scrollbar-color: #{$scrollbar-color}; --#{$prefix}scrollbar-hover-color: #{$scrollbar-hover-color}; - --#{$prefix}scrollbar-size: #{$scrollbar-size}; - --#{$prefix}scrollbar-overlay-size: #{$scrollbar-overlay-size}; - --#{$prefix}scrollbar-overlay-space: #{$scrollbar-overlay-space}; // Keenthemes overlay component --#{$prefix}overlay-bg: #{$overlay-bg}; @@ -198,6 +204,11 @@ --#{$prefix}#{$name}-inverse: #{$value}; } + // Contextual clarity state colors + @each $name, $value in $theme-clarity-colors-dark { + --#{$prefix}#{$name}-clarity: #{$value}; + } + // Contextual rbg colors @each $name, $value in $theme-colors-dark { --#{$prefix}#{$name}-rgb: #{to-rgb($value)}; @@ -237,7 +248,8 @@ --#{$prefix}tooltip-box-shadow: #{$tooltip-box-shadow-dark}; // Card - --#{$prefix}card-box-shadow: #{$card-box-shadow-dark}; + --#{$prefix}root-card-box-shadow: #{$card-box-shadow-dark}; + --#{$prefix}root-card-border-color: #{$card-border-color-dark}; // Table --#{$prefix}table-striped-bg: #{$table-striped-bg-dark}; @@ -249,7 +261,8 @@ // Code --#{$prefix}code-bg: #{$code-bg-dark}; - --#{$prefix}code-box-shadow: #{$code-box-shadow-dark}; + --#{$prefix}code-shadow: #{$code-shadow-dark}; + --#{$prefix}code-border-color: #{$code-border-color-dark}; --#{$prefix}code-color: #{$code-color-dark}; // Symbol diff --git a/resources/_keenthemes/src/sass/components/_scroll.scss b/resources/_keenthemes/src/sass/components/_scroll.scss index f629fed..22ef30b 100644 --- a/resources/_keenthemes/src/sass/components/_scroll.scss +++ b/resources/_keenthemes/src/sass/components/_scroll.scss @@ -34,7 +34,9 @@ } // Scroll -.scroll { +.scroll, +.hover-scroll, +.hover-scroll-overlay { overflow: scroll; position: relative; @@ -44,7 +46,9 @@ } } -.scroll-x { +.scroll-x, +.hover-scroll-x, +.hover-scroll-overlay-x { overflow-x: scroll; position: relative; @@ -54,7 +58,9 @@ } } -.scroll-y { +.scroll-y, +.hover-scroll-y, +.hover-scroll-overlay-y { overflow-y: scroll; position: relative; @@ -65,144 +71,49 @@ } .hover-scroll, -.hover-scroll-overlay { - position: relative; - - // Desktop mode - @include media-breakpoint-up(lg) { - overflow: hidden; - - @include for-firefox { - overflow: scroll; - } - - .safari-mode & { - overflow: scroll; - } - - &::-webkit-scrollbar { - width: var(--#{$prefix}scrollbar-overlay-size); - height: var(--#{$prefix}scrollbar-overlay-size); - } - - &::-webkit-scrollbar-thumb { - background-clip: content-box; - border: var(--#{$prefix}scrollbar-overlay-space) solid transparent; - @include border-radius(var(--#{$prefix}scrollbar-overlay-size)); - } - - &:hover { - overflow: overlay; - } - } - - // Tablet & mobile modes - @include media-breakpoint-down(lg) { - overflow: auto; - } -} - -.hover-scroll-y, -.hover-scroll-overlay-y { - position: relative; - - // Desktop mode - @include media-breakpoint-up(lg) { - overflow-y: hidden; - - @include for-firefox { - overflow-y: scroll; - } - - .safari-mode & { - overflow-y: scroll; - } - - &::-webkit-scrollbar { - width: var(--#{$prefix}scrollbar-overlay-size); - } - - &::-webkit-scrollbar-thumb { - background-clip: content-box; - border: var(--#{$prefix}scrollbar-overlay-space) solid transparent; - @include border-radius(var(--#{$prefix}scrollbar-overlay-size)); - } - - &:hover { - overflow-y: overlay; - } - } - - // Tablet & mobile modes - @include media-breakpoint-down(lg) { - overflow-y: auto; - } -} - +.hover-scroll-overlay, .hover-scroll-x, -.hover-scroll-overlay-x { - position: relative; - - // Desktop mode - @include media-breakpoint-up(lg) { - overflow-x: hidden; +.hover-scroll-overlay-x, +.hover-scroll-y, +.hover-scroll-overlay-y { + @include scrollbar-color(transparent, var(--#{$prefix}scrollbar-color)); +} - @include for-firefox { - overflow-x: scroll; +// Utilities +@each $breakpoint in map-keys($grid-breakpoints) { + @include media-breakpoint-up($breakpoint) { + $infix: breakpoint-infix($breakpoint, $grid-breakpoints); + + .scroll#{$infix}-ps { + padding-left: var(--#{$prefix}scrollbar-size) !important; } - .safari-mode & { - overflow-x: scroll; + .scroll#{$infix}-ms { + margin-left: var(--#{$prefix}scrollbar-size) !important; } - &::-webkit-scrollbar { - height: var(--#{$prefix}scrollbar-overlay-size); + .scroll#{$infix}-mb { + margin-bottom: var(--#{$prefix}scrollbar-size) !important; } - &::-webkit-scrollbar-thumb { - background-clip: content-box; - border: var(--#{$prefix}scrollbar-overlay-space) solid transparent; - @include border-radius(var(--#{$prefix}scrollbar-overlay-size)); + .scroll#{$infix}-pe { + padding-right: var(--#{$prefix}scrollbar-size) !important; } - &:hover { - overflow-x: overlay; + .scroll#{$infix}-me { + margin-right: var(--#{$prefix}scrollbar-size) !important; + } + + .scroll#{$infix}-px { + padding-left: var(--#{$prefix}scrollbar-size) !important; + padding-right: var(--#{$prefix}scrollbar-size) !important; + } + + .scroll#{$infix}-mx { + margin-left: var(--#{$prefix}scrollbar-size) !important; + margin-right: var(--#{$prefix}scrollbar-size) !important; } } - - // Tablet & mobile modes - @include media-breakpoint-down(lg) { - overflow-x: auto; - } } -// Utilities -.scroll-ps { - padding-left: var(--#{$prefix}scrollbar-size) !important; -} - -.scroll-ms { - margin-left: var(--#{$prefix}scrollbar-size) !important; -} - -.scroll-mb { - margin-bottom: var(--#{$prefix}scrollbar-size) !important; -} - -.scroll-pe { - padding-right: var(--#{$prefix}scrollbar-size) !important; -} - -.scroll-me { - margin-right: var(--#{$prefix}scrollbar-size) !important; -} - -.scroll-px { - padding-left: var(--#{$prefix}scrollbar-size) !important; - padding-right: var(--#{$prefix}scrollbar-size) !important; -} - -.scroll-mx { - margin-left: var(--#{$prefix}scrollbar-size) !important; - margin-right: var(--#{$prefix}scrollbar-size) !important; -} \ No newline at end of file + diff --git a/resources/_keenthemes/src/sass/components/_tables.scss b/resources/_keenthemes/src/sass/components/_tables.scss index 06eb3ab..0e95798 100644 --- a/resources/_keenthemes/src/sass/components/_tables.scss +++ b/resources/_keenthemes/src/sass/components/_tables.scss @@ -59,6 +59,22 @@ border-collapse: separate; } + // Row Rounded + &.table-rows-rounded { + th,td { + &:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + } + + &:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; + } + } + + } + // Flush &.table-flush { tr, th, td { diff --git a/resources/_keenthemes/src/sass/components/_testimonials-slider.scss b/resources/_keenthemes/src/sass/components/_testimonials-slider.scss new file mode 100644 index 0000000..d924332 --- /dev/null +++ b/resources/_keenthemes/src/sass/components/_testimonials-slider.scss @@ -0,0 +1,65 @@ +// +// Testimonials slider +// + +// Desktop mode +@include media-breakpoint-up(lg) { + .testimonials-slider-highlight { + transition: all ease 0.3; + + .testimonials-photo, + .testimonials-title, + .testimonials-body, + .testimonials-author, + .testimonials-positon { + transition: all ease 0.3s; + } + + .tns-item:not(.tns-slide-active) + .tns-item.tns-slide-active { + .testimonials-photo { + height: 200px; + width: 200px; + transition: all ease 0.3s; + } + + .testimonials-title { + color: var(--#{$prefix}gray-900) !important; + font-size: 1.54rem !important; + transition: all ease 0.3s; + margin-bottom: 1.3rem !important; + } + + .testimonials-description { + color: var(--#{$prefix}gray-700) !important; + font-size: 1.38rem !important; + transition: all ease 0.3s; + margin-bottom: 1.7rem !important; + } + + .testimonials-author { + color: var(--#{$prefix}primary) !important; + font-size: 1.1rem !important; + transition: all ease 0.3s; + } + + .testimonials-positon { + color: var(--#{$prefix}gray-500) !important; + font-size: 0.9rem !important; + transition: all ease 0.3s; + } + } + } +} + +.testimonials-slider-quote { + .testimonials-quote { + opacity: 0.2; + } + + .tns-item:not(.tns-slide-active) + .tns-slide-active + .tns-slide-active { + .testimonials-quote { + opacity: 0.5; + color: var(--#{$prefix}primary) !important; + } + } +} \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/components/_timeline.scss b/resources/_keenthemes/src/sass/components/_timeline.scss index 8a95041..df24b1d 100644 --- a/resources/_keenthemes/src/sass/components/_timeline.scss +++ b/resources/_keenthemes/src/sass/components/_timeline.scss @@ -4,6 +4,10 @@ // Base .timeline { + // Variables + --#{$prefix}timeline-icon-size: #{$timeline-icon-size}; + --#{$prefix}timeline-icon-space: #{$timeline-icon-space}; + // Item .timeline-item { position: relative; @@ -27,12 +31,15 @@ position: absolute; z-index: 0; left: 0; - top:0; + top: var(--#{$prefix}timeline-icon-size); bottom: 0; transform: translate(50%); border-left-width: 1px; - border-left-style: dashed; + border-left-style: solid; border-left-color: var(--#{$prefix}gray-300); + width: var(--#{$prefix}timeline-icon-size); + margin-top: var(--#{$prefix}timeline-icon-space); + margin-bottom: var(--#{$prefix}timeline-icon-space); } // Icon @@ -40,6 +47,14 @@ z-index: 1; flex-shrink: 0; margin-right: 1rem; + width: var(--#{$prefix}timeline-icon-size); + height: var(--#{$prefix}timeline-icon-size); + display: flex; + text-align: center; + align-items: center; + justify-content: center; + border: 1px solid var(--#{$prefix}gray-300); + border-radius: 50%; } // Content @@ -67,4 +82,15 @@ } } } + + // Line solid + &.timeline-border-dashed { + .timeline-line { + border-left-style: dashed !important; + } + + .timeline-icon { + border-style: dashed !important; + } + } } diff --git a/resources/_keenthemes/src/sass/components/_tree.scss b/resources/_keenthemes/src/sass/components/_tree.scss new file mode 100644 index 0000000..ab56bc6 --- /dev/null +++ b/resources/_keenthemes/src/sass/components/_tree.scss @@ -0,0 +1,92 @@ +// +// Tree +// + +.tree { + // Css variables + --#{$prefix}tree-icon-size: #{$tree-icon-size}; + --#{$prefix}tree-icon-gap: #{$tree-icon-gap}; + --#{$prefix}tree-icon-color-open: var(--#{$prefix}success); + --#{$prefix}tree-icon-color-default: var(--#{$prefix}gray-500); + --#{$prefix}tree-icon-color-close: var(--#{$prefix}gray-500); + --#{$prefix}tree-line-color: var(--#{$prefix}gray-200); + + .tree-node { + padding-left: $tree-node-padding-x; + display: flex; + flex-direction: column; + align-items: start; + } + + .tree-sub { + padding: $tree-node-padding-y 0; + } + + .tree-content { + display: flex; + align-items: center; + padding: $tree-node-padding-y 0; + } + + .tree-wrapper { + padding-left: calc(var(--#{$prefix}tree-icon-size) + var(--#{$prefix}tree-icon-size)); + } + + .tree-section { + display: flex; + align-items: baseline; + padding-left: var(--#{$prefix}tree-icon-gap); + } + + .tree-toggle { + display: flex; + align-items: center; + width: var(--#{$prefix}tree-icon-size); + + .tree-icon-default { + font-size: 1.5rem; + color: var(--#{$prefix}tree-icon-color-default); + } + + .tree-icon-open { + font-size: 1.5rem; + color: var(--#{$prefix}tree-icon-color-open); + } + + .tree-icon-close { + font-size: 1.5rem; + color: var(--#{$prefix}tree-icon-color-close); + } + + &.collapsed { + .tree-icon-close { + display: flex; + } + + .tree-icon-open { + display: none; + } + } + + &:not(.collapsed) { + .tree-icon-close { + display: none; + } + + .tree-icon-open { + display: flex; + } + } + } + + & > .tree-node { + padding-left: 0 !important; + } + + &.tree-line { + .tree-sub { + border-left: 1px solid var(--#{$prefix}tree-line-color); + margin-left: calc(var(--#{$prefix}tree-icon-size) / 2); + } + } +} \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/components/_utilities.scss b/resources/_keenthemes/src/sass/components/_utilities.scss index dfb48f5..3b60a2e 100644 --- a/resources/_keenthemes/src/sass/components/_utilities.scss +++ b/resources/_keenthemes/src/sass/components/_utilities.scss @@ -5,6 +5,10 @@ $utilities: map-merge( $utilities, ( + "cursor": ( + property: cursor, + values: help wait crosshair not-allowed zoom-in grab pointer + ), "position": ( property: position, responsive: true, diff --git a/resources/_keenthemes/src/sass/components/_variables-dark.scss b/resources/_keenthemes/src/sass/components/_variables-dark.scss index df83244..a12139c 100644 --- a/resources/_keenthemes/src/sass/components/_variables-dark.scss +++ b/resources/_keenthemes/src/sass/components/_variables-dark.scss @@ -1,17 +1,19 @@ +// Bootstrap color system + // // Bootstrap & Custom Variables // Safely override any variable in _variables.custom.scss // -$gray-100-dark: #1b1b29 !default; -$gray-200-dark: #2B2B40 !default; -$gray-300-dark: #323248 !default; -$gray-400-dark: #474761 !default; -$gray-500-dark: #565674 !default; -$gray-600-dark: #6D6D80 !default; -$gray-700-dark: #92929F !default; -$gray-800-dark: #CDCDDE !default; -$gray-900-dark: #FFFFFF !default; +$gray-100-dark: #1B1C22 !default; +$gray-200-dark: #26272F !default; +$gray-300-dark: #363843 !default; +$gray-400-dark: #464852 !default; +$gray-500-dark: #636674 !default; +$gray-600-dark: #808290 !default; +$gray-700-dark: #9A9CAE !default; +$gray-800-dark: #B5B7C8 !default; +$gray-900-dark: #F5F5F5 !default; $grays-dark: ( "100": $gray-100-dark, @@ -30,90 +32,131 @@ $text-muted-dark: $gray-500-dark !default; // Bootstrap contextual colors // Primary colors -$primary-light-dark: #212E48 !default; +$primary-dark: #006AE6 !default; +$primary-active-dark: #107EFF !default; +$primary-light-dark: #172331 !default; +$primary-clarity-dark: rgba(#006AE6, 0.2) !default; +$primary-inverse-dark: $white !default; // Secondary colors -$secondary-dark: $gray-300-dark !default; -$secondary-active-dark: $gray-400-dark !default; -$secondary-light-dark: $gray-100-dark !default; -$secondary-inverse-dark: $gray-700-dark !default; +$secondary-dark: $gray-300-dark !default; +$secondary-active-dark: $gray-400-dark !default; +$secondary-light-dark: $gray-300-dark !default; +$secondary-clarity-dark: rgba($gray-300-dark, 0.2) !default; +$secondary-inverse-dark: $white !default; // Light colors -$light-dark: $gray-200-dark !default; -$light-active-dark: $gray-300-dark !default; -$light-inverse-dark: $gray-600-dark !default; +$light-dark: $gray-100-dark !default; +$light-active-dark: #1F212A !default; +$light-light-dark: #1F212A !default; +$light-clarity-dark: rgba(31, 33, 42, 0.20) !default; +$light-inverse-dark: $gray-600-dark !default; // Success colors -$success-light-dark: #1C3833 !default; +$success-dark: #00A261 !default; +$success-active-dark: #01BF73 !default; +$success-light-dark: #1F212A !default; +$success-clarity-dark: rgba(#00A261, 0.2) !default; +$success-inverse-dark: $white !default; // Info colors -$info-light-dark: #2F264F !default; +$info-dark: #883FFF !default; +$info-active-dark: #9E63FF !default; +$info-light-dark: #272134 !default; +$info-clarity-dark: rgba(#883FFF, 0.2) !default; +$info-inverse-dark: $white !default; // Warning colors -$warning-light-dark: #392F28 !default; +$warning-dark: #C59A00 !default; +$warning-active-dark: #D9AA00 !default; +$warning-light-dark: #242320 !default; +$warning-clarity-dark: rgba(#C59A00, 0.2) !default; +$warning-inverse-dark: $white !default; // Danger colors -$danger-light-dark: #3A2434 !default; +$danger-dark: #E42855 !default; +$danger-active-dark: #FF3767 !default; +$danger-light-dark: #302024 !default; +$danger-clarity-dark: rgba(#E42855, 0.2) !default; +$danger-inverse-dark: $white !default; // Dark colors -$dark-dark: $gray-900-dark !default; -$dark-active-dark: lighten($gray-900-dark, 3%) !default; -$dark-light-dark: $gray-200-dark !default; -$dark-inverse-dark: $gray-100-dark !default; +$dark-dark: #272A34 !default; +$dark-active-dark: #2D2F39 !default; +$dark-light-dark: #1E2027 !default; +$dark-clarity-dark: rgba(#272A34, 0.2) !default; +$dark-inverse-dark: $white !default; +// Contextual colors $theme-colors-dark: ( - "white": $white, // custom color type "light": $light-dark, - "primary": $primary, - "success": $success, - "info": $info, - "warning": $warning, - "danger": $danger, - "dark": $dark-dark, + "primary": $primary-dark, "secondary": $secondary-dark, + "success": $success-dark, + "info": $info-dark, + "warning": $warning-dark, + "danger": $danger-dark, + "dark": $dark-dark ) !default; - + +// Contextual active state colors $theme-active-colors-dark: ( - "primary": $primary-active, + "primary": $primary-active-dark, "secondary": $secondary-active-dark, "light": $light-active-dark, - "success": $success-active, - "info": $info-active, - "warning": $warning-active, - "danger": $danger-active, + "success": $success-active-dark, + "info": $info-active-dark, + "warning": $warning-active-dark, + "danger": $danger-active-dark, "dark": $dark-active-dark -) !default; +) !default; +// Contextual inverse state colors $theme-inverse-colors-dark: ( - "primary": $primary-inverse, + "primary": $primary-inverse-dark, "secondary": $secondary-inverse-dark, - "light": $light-inverse, - "success": $success-inverse, - "info": $info-inverse, - "warning": $warning-inverse, - "danger": $danger-inverse, + "light": $light-inverse-dark, + "success": $success-inverse-dark, + "info": $info-inverse-dark, + "warning": $warning-inverse-dark, + "danger": $danger-inverse-dark, "dark": $dark-inverse-dark -) !default; +) !default; +// Contextual light state colors $theme-light-colors-dark: ( "primary": $primary-light-dark, + "secondary": $secondary-light-dark, "success": $success-light-dark, "info": $info-light-dark, "warning": $warning-light-dark, "danger": $danger-light-dark, "dark": $dark-light-dark, - "secondary": $secondary-light-dark + "light": $light-light-dark ) !default; - + +// Contextual light state colors +$theme-clarity-colors-dark: ( + "primary": $primary-clarity-dark, + "secondary": $secondary-clarity-dark, + "success": $success-clarity-dark, + "info": $info-clarity-dark, + "warning": $warning-clarity-dark, + "danger": $danger-clarity-dark, + "dark": $dark-clarity-dark, + "light": $light-clarity-dark, +) !default; + +// Text colors $theme-text-colors-dark: ( "white": $white, - "primary": $primary, + "primary": $primary-dark, "secondary": $secondary-dark, "light": $light-dark, - "success": $success, - "info": $info, - "warning": $warning, - "danger": $danger, + "success": $success-dark, + "info": $info-dark, + "warning": $warning-dark, + "danger": $danger-dark, "dark": $dark-dark, "muted": $text-muted-dark, "gray-100": $gray-100-dark, @@ -131,7 +174,7 @@ $theme-text-colors-dark: ( // Body // // Settings for the `` element. -$body-bg-dark: #1e1e2d !default; +$body-bg-dark: #1C1D22 !default; $body-bg-rgb-dark: to-rgb($body-bg-dark) !default; $body-color-dark: $gray-900-dark !default; @@ -139,7 +182,7 @@ $body-color-dark: $gray-900-dark !default; // Links // // Style anchor elements. -$link-color-dark: $primary !default; +$link-color-dark: $primary-dark !default; // Components @@ -149,16 +192,16 @@ $border-color-dark: $gray-200-dark !default; $border-dashed-color-dark: $gray-300-dark !default; // Keenthemes hover states -$component-hover-color-dark: $primary !default; +$component-hover-color-dark: $primary-dark !default; $component-hover-bg-dark: $gray-100-dark !default; // Keenthemes active states $component-active-color-dark: $primary-inverse !default; -$component-active-bg-dark: $primary !default; +$component-active-bg-dark: $primary-dark !default; // Keenthemes checked states $component-checked-color-dark: $primary-inverse !default; -$component-checked-bg-dark: $primary !default; +$component-checked-bg-dark: $primary-dark !default; $headings-color-dark: $gray-900-dark !default; $blockquote-footer-color-dark: $gray-600-dark !default; @@ -174,7 +217,7 @@ $box-shadow-inset-dark: inset 0 1px 2px rgba($black, .075) !default; // Card $card-box-shadow-dark: null !default; - +$card-border-color-dark: $border-color-dark !default; // Tables $table-striped-bg-dark: rgba($gray-100-dark, 0.75) !default; @@ -191,7 +234,7 @@ $form-switch-bg-image-solid-dark: url("data:image/svg+xml,") !default; $accordion-button-active-icon-dark: url("data:image/svg+xml,") !default; @@ -216,9 +259,10 @@ $tooltip-bg-dark: $gray-200-dark !default; $tooltip-box-shadow-dark: 0px 0px 30px rgba(0, 0, 0, 0.15) !default; // Code -$code-bg-dark: $gray-200-dark !default; -$code-color-dark: #b93993 !default; -$code-box-shadow-dark: 0px 3px 9px rgba(0, 0, 0, 0.08) !default; +$code-bg-dark: #2b2b40 !default; +$code-shadow-dark: rgba(0, 0, 0, 0.08) 0px 3px 9px 0px !default; +$code-color-dark: #b93993 !default; +$code-border-color-dark: transparent !default; // Symbol $symbol-border-color-dark: rgba($body-bg, 0.5); @@ -260,7 +304,7 @@ $menu-heading-color-dark: $text-muted-dark !default; // Keenthemes scrollbar component $scrollbar-color-dark: $gray-200-dark !default; -$scrollbar-hover-color-dark: darken($gray-200-dark, 2%) !default; +$scrollbar-hover-color-dark: $gray-300-dark !default; // Keenthemes overlay component $overlay-bg-dark: rgba($white, 0.05) !default; diff --git a/resources/_keenthemes/src/sass/components/_variables.custom.scss b/resources/_keenthemes/src/sass/components/_variables.custom.scss index ae87b9f..c013a04 100644 --- a/resources/_keenthemes/src/sass/components/_variables.custom.scss +++ b/resources/_keenthemes/src/sass/components/_variables.custom.scss @@ -4,41 +4,3 @@ // are not accessible in this file but you can override any global variable as shown below: // -// Bootstrap color system -$white: #ffffff; - -// Theme colors -// Primary -$primary: #009ef7; -$primary-active: #0095e8; -$primary-light: #f1faff; -$primary-light-dark: #212e48; -$primary-inverse: $white; - -// Success -$success: #50cd89; -$success-active: #47be7d; -$success-light: #e8fff3; -$success-light-dark: #1c3238; -$success-inverse: $white; - -// Info -$info: #7239ea; -$info-active: #5014d0; -$info-light: #f8f5ff; -$info-light-dark: #2f264f; -$info-inverse: $white; - -// Danger -$danger: #f1416c; -$danger-active: #d9214e; -$danger-light: #fff5f8; -$danger-light-dark: #3a2434; -$danger-inverse: $white; - -// Warning -$warning: #ffc700; -$warning-active: #f1bc00; -$warning-light: #fff8dd; -$warning-light-dark: #392f28; -$warning-inverse: $white; \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/components/_variables.override.scss b/resources/_keenthemes/src/sass/components/_variables.override.scss new file mode 100644 index 0000000..8774439 --- /dev/null +++ b/resources/_keenthemes/src/sass/components/_variables.override.scss @@ -0,0 +1,15 @@ +// +// To make future updates easier consider overriding the global variables from _variables.bootstrap.scss and _variables.custom.scss for current demo in this file. +// Note that this file is included first and variables defined in _variables.bootstrap.scss and _variables.custom.scss +// are not accessible in this file but you can override any global variable as shown below: +// + +// Body bg +$body-bg-dark: $coal-100; + +// Card +$card-box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.03); +$card-box-shadow-dark: none; +$card-border-enabled: true; +$card-border-color: $gray-200; +$card-border-color-dark: $dark-light-dark; \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/components/_variables.scss b/resources/_keenthemes/src/sass/components/_variables.scss index 18a0e25..ac54e4d 100644 --- a/resources/_keenthemes/src/sass/components/_variables.scss +++ b/resources/_keenthemes/src/sass/components/_variables.scss @@ -6,6 +6,16 @@ // Prefix for :root CSS variables $prefix: bs- !default; // Deprecated in v5.2.0 for the shorter `$prefix` +// Custom coal colors +$coal-100: #15171C !default; +$coal-200: #13141A !default; +$coal-300: #111217 !default; +$coal-400: #0F1014 !default; +$coal-500: #0D0E12 !default; +$coal-600: #0B0C10 !default; +$coal-black: #000000 !default; +$coal-clarity: rgba(#18191F, 50) !default; + // Bootstrap color system $white: #ffffff !default; @@ -13,15 +23,15 @@ $black:#000000 !default; // Bootstrap grey colors $gray-100: #F9F9F9 !default; -$gray-200: #F4F4F4 !default; -$gray-300: #E1E3EA !default; -$gray-400: #B5B5C3 !default; -$gray-500: #A1A5B7 !default; -$gray-600: #7E8299 !default; -$gray-700: #5E6278 !default; -$gray-800: #3F4254 !default; -$gray-900: #181C32 !default; - +$gray-200: #F1F1F4 !default; +$gray-300: #DBDFE9 !default; +$gray-400: #C4CADA !default; +$gray-500: #99A1B7 !default; +$gray-600: #78829D !default; +$gray-700: #4B5675 !default; +$gray-800: #252F4A !default; +$gray-900: #071437 !default; + // Bootstrap muted color $text-muted: $gray-500 !default; @@ -40,51 +50,59 @@ $grays: ( // Bootstrap contextual colors // Primary colors -$primary: #3699FF !default; -$primary-active: #187DE4 !default; -$primary-light: #F1FAFF !default; -$primary-inverse: $white !default; +$primary: #1B84FF !default; +$primary-active: #056EE9 !default; +$primary-light: #E9F3FF !default; +$primary-clarity: rgba(#1B84FF, 0.2) !default; +$primary-inverse: $white !default; // Secondary colors -$secondary: $gray-300 !default; +$secondary: $gray-200 !default; $secondary-active: $gray-400 !default; -$secondary-light: $gray-100 !default; -$secondary-inverse: $gray-800 !default; +$secondary-light: #F9F9F9 !default; +$secondary-clarity: rgba(#F9F9F9, 0.2) !default; +$secondary-inverse: $gray-800 !default; // Light colors $light: $gray-100 !default; $light-active: $gray-200 !default; -$light-light: gba($gray-100, 0.75) !default; -$light-inverse: $gray-600 !default; +$light-light: #ffffff !default; +$light-clarity: rgba($white, 0.2) !default; +$light-inverse: $gray-800 !default; // Success colors -$success: #1BC5BD !default; -$success-active: #0BB7AF !default; -$success-light: #C9F7F5 !default; +$success: #17C653 !default; +$success-active: #04B440 !default; +$success-light: #DFFFEA !default; +$success-clarity: rgba(#17C653, 0.2) !default; $success-inverse: $white !default; // Info colors -$info: #8950FC !default; -$info-active: #7337EE !default; -$info-light: #EEE5FF !default; +$info: #7239EA !default; +$info-active: #5014D0 !default; +$info-light: #F8F5FF !default; +$info-clarity: rgba(#7239EA, 0.2) !default; $info-inverse: $white !default; // Warning colors -$warning: #FFA800 !default; -$warning-active: #EE9D01 !default; -$warning-light: #FFF4DE !default; +$warning: #F6C000 !default; +$warning-active: #DEAD00 !default; +$warning-light: #FFF8DD !default; +$warning-clarity: rgba(#F6C000, 0.2) !default; $warning-inverse: $white !default; // Danger colors -$danger: #F64E60 !default; -$danger-active: #EE2D41 !default; -$danger-light: #FFE2E5 !default; +$danger: #F8285A !default; +$danger-active: #D81A48 !default; +$danger-light: #FFEEF3 !default; +$danger-clarity: rgba(#F8285A, 0.2) !default; $danger-inverse: $white !default; // Dark colors -$dark: $gray-900 !default; -$dark-active: darken($gray-900, 3%) !default; -$dark-light: $gray-200 !default; +$dark: #1E2129 !default; +$dark-active: #111318 !default; +$dark-light: #F9F9F9 !default; +$dark-clarity: rgba(#1E2129, 0.2) !default; $dark-inverse: $white !default; // Contextual colors @@ -131,7 +149,20 @@ $theme-light-colors: ( "info": $info-light, "warning": $warning-light, "danger": $danger-light, - "dark": $dark-light + "dark": $dark-light, + "light": $light-light +) !default; + +// Contextual light state colors +$theme-clarity-colors: ( + "primary": $primary-clarity, + "secondary": $secondary-clarity, + "success": $success-clarity, + "info": $info-clarity, + "warning": $warning-clarity, + "danger": $danger-clarity, + "dark": $dark-clarity, + "light": $light-clarity, ) !default; // Text colors @@ -334,6 +365,7 @@ $font-family-sans-serif: Inter, Helvetica, "sans-serif" !default; $font-size-base: 1rem !default; // Assumes the browser default, typically `13px` $font-size-lg: $font-size-base * 1.075 !default; // 14.04px +$font-size-xl: $font-size-base * 1.21 !default; // 16.04px $font-size-sm: $font-size-base * .95 !default; // 12.025px $font-weight-lighter: lighter !default; @@ -376,7 +408,11 @@ $font-sizes: ( 9: $font-size-base * 0.75, // 9.75px 10: $font-size-base * 0.5, // 6.50px + sm: $font-size-sm, base: $font-size-base, // 13px + lg: $font-size-lg, + xl: $font-size-xl, + fluid: 100%, // 100% 2x: $font-size-base * 2, // 26px @@ -496,7 +532,7 @@ $btn-line-height: $input-btn-line-height !default; $btn-white-space: null !default; // Set to `nowrap` to prevent text wrapping $btn-padding-y-sm: $input-btn-padding-y-sm !default; -$btn-padding-x-sm: 1.25rem !default; +$btn-padding-x-sm: 1rem !default; $btn-font-size-sm: $input-btn-font-size-sm !default; $btn-padding-y-lg: $input-btn-padding-y-lg !default; @@ -506,11 +542,11 @@ $btn-font-size-lg: $input-btn-font-size-lg !default; $btn-border-width: $input-btn-border-width !default; $btn-font-weight: $font-weight-semibold !default; -$btn-box-shadow: null !default; +$btn-box-shadow: none !default; $btn-focus-width: $input-btn-focus-width !default; -$btn-focus-box-shadow: null !default; +$btn-focus-box-shadow: none !default; $btn-disabled-opacity: .65 !default; -$btn-active-box-shadow: null !default; +$btn-active-box-shadow: none !default; $btn-link-color: var(--#{$prefix}link-color) !default; $btn-link-hover-color: var(--#{$prefix}link-hover-color) !default; @@ -562,6 +598,8 @@ $input-disabled-border-color: $input-border-color !default; $input-placeholder-color: var(--#{$prefix}gray-500) !default; $input-plaintext-color: var(--#{$prefix}gray-700) !default; +$inpur-autifill-bg-color: var(--#{$prefix}gray-100) !default; + // Keenthemes solid input style $input-solid-color: var(--#{$prefix}gray-700) !default; $input-solid-bg: var(--#{$prefix}gray-100) !default; @@ -741,7 +779,7 @@ $pagination-disabled-border-color: transparent !default; // Card $card-box-shadow: 0px 0px 20px 0px rgba(76,87,125,0.02) !default; -$card-border-color: var(--#{$prefix}border-color) !default; +$card-border-color: $border-color !default; $card-border-width: 1px !default; $card-border-style: solid !default; $card-border-dashed-color: var(--#{$prefix}border-dashed-color) !default; @@ -753,8 +791,8 @@ $card-border-radius: $border-radius-lg !default; $card-header-py: 0.5rem !default; $card-header-height: 70px !default; $card-border-enabled: false !default; - - +$card-title-color: var(--#{$prefix}gray-900) !default; + // Accordion $accordion-color: var(--#{$prefix}body-color) !default; $accordion-bg: var(--#{$prefix}body-bg) !default; @@ -834,7 +872,6 @@ $badge-size: 1.75rem !default; $badge-size-sm: 1.5rem !default; $badge-size-lg: 2rem !default; - // Modals // Padding applied to the modal body $modal-inner-padding: 1.75rem !default; @@ -934,13 +971,15 @@ $btn-close-bg: url("data:image/svg+xml, i { + display: inline-flex; + font-size: $font-size-base; + padding-right: 0.35rem; + vertical-align: middle; + } + + // Icon only button + &.btn-icon { + display: inline-flex; + align-items: center; + justify-content: center; + padding: 0; + height: $input-height; + width: $input-height; + line-height: 1; + + i { + padding-right: 0; + } + + // Sizes + &.btn-sm { + height: $input-height-sm; + width: $input-height-sm; + } + + &.btn-lg { + height: $input-height-lg; + width: $input-height-lg; + } + + &.btn-circle { + border-radius: 50%; + } + } +} + +// Utilities +.btn { + .btn-reset { + background-color: transparent; + border: 0; + box-shadow: none; + user-select: none; + outline: none; + } + + &.btn-flex { + display: inline-flex; + align-items: center; + } + + &.btn-trim-start { + justify-content: flex-start !important; + padding-left: 0 !important; + } + + &.btn-trim-end { + justify-content: flex-end !important; + padding-right: 0 !important; + } +} \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/components/buttons_new/_theme.scss b/resources/_keenthemes/src/sass/components/buttons_new/_theme.scss new file mode 100644 index 0000000..e18fd88 --- /dev/null +++ b/resources/_keenthemes/src/sass/components/buttons_new/_theme.scss @@ -0,0 +1,21 @@ +// +// Buttons Theme +// + +// Theme colors +@each $name, $value in $theme-colors { + // Base + .btn.btn-#{$name} { + $color: var(--#{$prefix}#{$name}-inverse); + $icon-color: var(--#{$prefix}#{$name}-inverse); + $border-color: var(--#{$prefix}#{$name}); + $bg-color: var(--#{$prefix}#{$name}); + + $color-active: var(--#{$prefix}#{$name}-inverse); + $icon-color-active: var(--#{$prefix}#{$name}-inverse); + $border-color-active: var(--#{$prefix}#{$name}-active); + $bg-color-active: var(--#{$prefix}#{$name}-active); + + @include button-custom-variant($color, $icon-color, $border-color, $bg-color, $color-active, $icon-color-active, $border-color-active, $bg-color-active); + } +} \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/components/components.scss b/resources/_keenthemes/src/sass/components/components.scss index fbdaceb..145fb7f 100644 --- a/resources/_keenthemes/src/sass/components/components.scss +++ b/resources/_keenthemes/src/sass/components/components.scss @@ -64,6 +64,8 @@ @import "cookiealert"; @import "print"; @import "helpers"; +@import "tree"; +@import "testimonials-slider"; // // Components // @@ -71,3 +73,4 @@ // Import Dependencies @import "stepper/multistep"; @import "landing"; +@import "btn-secondary"; diff --git a/resources/_keenthemes/src/sass/components/forms/_floating-labels.scss b/resources/_keenthemes/src/sass/components/forms/_floating-labels.scss index 3c9d596..b544320 100644 --- a/resources/_keenthemes/src/sass/components/forms/_floating-labels.scss +++ b/resources/_keenthemes/src/sass/components/forms/_floating-labels.scss @@ -7,6 +7,14 @@ &::placeholder { color: transparent; } - } + } + + &.form-control-solid-bg label, + > :disabled ~ label, + > :focus ~ label { + &::after { + background-color: transparent !important; + } + } } \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/components/helpers/_background.scss b/resources/_keenthemes/src/sass/components/helpers/_background.scss index 1762423..fc74d2f 100644 --- a/resources/_keenthemes/src/sass/components/helpers/_background.scss +++ b/resources/_keenthemes/src/sass/components/helpers/_background.scss @@ -137,6 +137,13 @@ background-color: var(--#{$prefix}gray-#{$name}); } + .bg-hover-gray-#{$name} { + &:hover { + --#{$prefix}bg-rgb-color: var(--#{$prefix}gray-#{$name}-rgb); + background-color: var(--#{$prefix}gray-#{$name}); + } + } + .bg-gray-#{$name}i { --#{$prefix}bg-rgb-color: var(--#{$prefix}gray-#{$name}-rgb); background-color: var(--#{$prefix}gray-#{$name}) !important; diff --git a/resources/_keenthemes/src/sass/components/helpers/_borders.scss b/resources/_keenthemes/src/sass/components/helpers/_borders.scss index 21e7dbe..68af155 100644 --- a/resources/_keenthemes/src/sass/components/helpers/_borders.scss +++ b/resources/_keenthemes/src/sass/components/helpers/_borders.scss @@ -21,6 +21,10 @@ // Hover border colors @each $name, $value in $theme-colors { + .border-#{$name}-clarity { + border-color: var(--#{$prefix}#{$name}-clarity) !important; + } + .border-hover-#{$name}:hover { border-color: var(--#{$prefix}#{$name}) !important; } @@ -30,6 +34,11 @@ } } +.border-hover-primary-clarity:hover, +.border-active-primary-clarity.active { + border-color: var(--#{$prefix}primary-clarity) !important; +} + // Hover transparent .border-hover-transparent:hover { border-color: transparent !important; diff --git a/resources/_keenthemes/src/sass/components/menu/_base.scss b/resources/_keenthemes/src/sass/components/menu/_base.scss index bdbb375..faad180 100644 --- a/resources/_keenthemes/src/sass/components/menu/_base.scss +++ b/resources/_keenthemes/src/sass/components/menu/_base.scss @@ -126,6 +126,15 @@ } } +// No wrap +.menu-nowrap { + .menu-title, + .menu-link { + flex-wrap: nowrap; + flex-shrink: 0; + } +} + // Center alignment .menu-center { justify-content: center; diff --git a/resources/_keenthemes/src/sass/components/menu/_theme.scss b/resources/_keenthemes/src/sass/components/menu/_theme.scss index 6f700bf..8898510 100644 --- a/resources/_keenthemes/src/sass/components/menu/_theme.scss +++ b/resources/_keenthemes/src/sass/components/menu/_theme.scss @@ -358,6 +358,15 @@ } } +.menu-state-gray-900 { + .menu-item { + @include menu-link-hover-state( var(--#{$prefix}gray-900), var(--#{$prefix}gray-900), var(--#{$prefix}gray-900), var(--#{$prefix}gray-900), null ); + @include menu-link-show-state( var(--#{$prefix}gray-900), var(--#{$prefix}gray-900), var(--#{$prefix}gray-900), var(--#{$prefix}gray-900), null ); + @include menu-link-here-state( var(--#{$prefix}gray-900), var(--#{$prefix}gray-900), var(--#{$prefix}gray-900), var(--#{$prefix}gray-900), null ); + @include menu-link-active-state( var(--#{$prefix}gray-900), var(--#{$prefix}gray-900), var(--#{$prefix}gray-900), var(--#{$prefix}gray-900), null ); + } +} + // Primary title color states .menu-hover-title-primary { .menu-item { diff --git a/resources/_keenthemes/src/sass/components/stepper/_base.scss b/resources/_keenthemes/src/sass/components/stepper/_base.scss index 9e23710..9797933 100644 --- a/resources/_keenthemes/src/sass/components/stepper/_base.scss +++ b/resources/_keenthemes/src/sass/components/stepper/_base.scss @@ -83,6 +83,10 @@ display: flex; } + [data-kt-stepper-action="previous"][data-kt-stepper-state="hide-on-last-step"] { + display: none !important; + } + [data-kt-stepper-action="next"] { display: none; } diff --git a/resources/_keenthemes/src/sass/components/stepper/_links.scss b/resources/_keenthemes/src/sass/components/stepper/_links.scss index 0d8aba4..0cd9c28 100644 --- a/resources/_keenthemes/src/sass/components/stepper/_links.scss +++ b/resources/_keenthemes/src/sass/components/stepper/_links.scss @@ -28,7 +28,7 @@ } .stepper-title { - color: var(--#{$prefix}dark); + color: var(--#{$prefix}gray-900); font-weight: 600; font-size: 1.25rem; } @@ -49,7 +49,7 @@ &.current.mark-completed:last-child, &.completed { .stepper-title { - color: var(--#{$prefix}gray-400); + color: var(--#{$prefix}gray-500); } } } diff --git a/resources/_keenthemes/src/sass/components/stepper/_pills.scss b/resources/_keenthemes/src/sass/components/stepper/_pills.scss index 58537d0..4e1e851 100644 --- a/resources/_keenthemes/src/sass/components/stepper/_pills.scss +++ b/resources/_keenthemes/src/sass/components/stepper/_pills.scss @@ -34,8 +34,8 @@ --#{$prefix}stepper-label-desc-opacity-completed: 1; --#{$prefix}stepper-label-desc-color: var(--#{$prefix}text-muted); - --#{$prefix}stepper-label-desc-color-current: var(--#{$prefix}gray-400); - --#{$prefix}stepper-label-desc-color-completed: var(--#{$prefix}gray-400); + --#{$prefix}stepper-label-desc-color-current: var(--#{$prefix}gray-500); + --#{$prefix}stepper-label-desc-color-completed: var(--#{$prefix}gray-500); --#{$prefix}stepper-line-border: 1px dashed var(--#{$prefix}gray-300); diff --git a/resources/_keenthemes/src/sass/layout/_aside.scss b/resources/_keenthemes/src/sass/layout/_aside.scss new file mode 100644 index 0000000..443a749 --- /dev/null +++ b/resources/_keenthemes/src/sass/layout/_aside.scss @@ -0,0 +1,22 @@ +// +// Aside +// + +// Desktop mode +@include media-breakpoint-up(lg) { + .app-aside { + border: 1px solid var(--#{$prefix}border-color); + border-radius: $card-border-radius; + box-shadow: $card-box-shadow; + } +} + +// Dark mode +@include color-mode(dark) { + // Desktop mode + @include media-breakpoint-up(lg) { + .app-aside { + //box-shadow: $card-box-shadow-dark; + } + } +} \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/layout/_content.scss b/resources/_keenthemes/src/sass/layout/_content.scss index 0aebeaa..9a72983 100644 --- a/resources/_keenthemes/src/sass/layout/_content.scss +++ b/resources/_keenthemes/src/sass/layout/_content.scss @@ -2,12 +2,13 @@ // Content // + // Desktop mode @include media-breakpoint-up(lg) { .app-content { [data-kt-app-toolbar-enabled="true"]:not([data-kt-app-toolbar-fixed="true"]) & { padding-top: 0; - } + } } } diff --git a/resources/_keenthemes/src/sass/layout/_layout.scss b/resources/_keenthemes/src/sass/layout/_layout.scss index 1ee48df..f6d4fd9 100644 --- a/resources/_keenthemes/src/sass/layout/_layout.scss +++ b/resources/_keenthemes/src/sass/layout/_layout.scss @@ -7,9 +7,11 @@ @import "sidebar/sidebar-minimize"; @import "sidebar/sidebar-dark"; @import "sidebar/sidebar-light"; +@import "aside"; @import "header/header"; @import "header/header-dark"; @import "header/header-sidebar-light"; @import "content"; @import "toolbar"; +@import "main"; @import "page-title"; \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/layout/_main.scss b/resources/_keenthemes/src/sass/layout/_main.scss new file mode 100644 index 0000000..2a45251 --- /dev/null +++ b/resources/_keenthemes/src/sass/layout/_main.scss @@ -0,0 +1,21 @@ +// +// Main +// + + +// Desktop mode +@include media-breakpoint-up(lg) { + .app-main { + :not([data-kt-app-footer-fixed="true"]) & { + .app-content { + padding-bottom: 0 !important; + } + } + + [data-kt-app-footer-fixed="true"] & { + .app-content { + padding-bottom: $app-content-padding-y !important; + } + } + } +} \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/layout/_root.scss b/resources/_keenthemes/src/sass/layout/_root.scss index d6e58e9..bb379d9 100644 --- a/resources/_keenthemes/src/sass/layout/_root.scss +++ b/resources/_keenthemes/src/sass/layout/_root.scss @@ -4,46 +4,46 @@ // Light mode @include color-mode(light) { - // Header base - --#{$prefix}app-header-base-menu-link-bg-color-active: #{$app-header-base-menu-link-bg-color-active}; - // Header light --#{$prefix}app-header-light-separator-color: #{$app-header-light-separator-color}; // Sidebar base --#{$prefix}app-sidebar-base-toggle-btn-box-shadow: #{$app-sidebar-base-toggle-btn-box-shadow}; --#{$prefix}app-sidebar-base-toggle-btn-bg-color: #{$app-sidebar-base-toggle-btn-bg-color}; + --#{$prefix}app-sidebar-base-toggle-btn-border-color: #{$app-sidebar-base-toggle-btn-border-color}; + --#{$prefix}app-sidebar-base-border-color: #{$app-sidebar-base-border-color}; // Sidebar light --#{$prefix}app-sidebar-light-bg-color: #{$app-sidebar-light-bg-color}; --#{$prefix}app-sidebar-light-box-shadow: #{$app-sidebar-light-box-shadow}; --#{$prefix}app-sidebar-light-separator-color: #{$app-sidebar-light-separator-color}; - --#{$prefix}app-sidebar-light-scrollbar-color: #{$app-sidebar-light-scrollbar-color}; --#{$prefix}app-sidebar-light-scrollbar-color-hover: #{$app-sidebar-light-scrollbar-color-hover}; --#{$prefix}app-sidebar-light-menu-heading-color: #{$app-sidebar-light-menu-heading-color}; --#{$prefix}app-sidebar-light-menu-link-bg-color-active: #{$app-sidebar-light-menu-link-bg-color-active}; --#{$prefix}app-sidebar-light-header-menu-link-bg-color-active: #{$app-sidebar-light-header-menu-link-bg-color-active}; + --#{$prefix}app-sidebar-light-menu-link-color: #{$app-sidebar-light-menu-link-color}; + --#{$prefix}app-sidebar-light-menu-link-icon-color: #{$app-sidebar-light-menu-link-icon-color}; } // Dark mode @include color-mode(dark) { - // Header base - --#{$prefix}app-header-base-menu-link-bg-color-active: #{$app-header-base-menu-link-bg-color-active-dark}; - // Header light - --#{$prefix}app-header-light-separator-color: #{$app-header-light-separator-color-dark}; + --#{$prefix}app-header-light-separator-color: #{$app-header-light-separator-color-dark}; // Sidebar base --#{$prefix}app-sidebar-base-toggle-btn-box-shadow: #{$app-sidebar-base-toggle-btn-box-shadow-dark}; --#{$prefix}app-sidebar-base-toggle-btn-bg-color: #{$app-sidebar-base-toggle-btn-bg-color-dark}; + --#{$prefix}app-sidebar-base-toggle-btn-border-color: #{$app-sidebar-base-toggle-btn-border-color-dark}; + --#{$prefix}app-sidebar-base-border-color: #{$app-sidebar-base-border-color-dark}; // Sidebar light --#{$prefix}app-sidebar-light-bg-color: #{$app-sidebar-light-bg-color-dark}; --#{$prefix}app-sidebar-light-box-shadow: #{$app-sidebar-light-box-shadow-dark}; --#{$prefix}app-sidebar-light-separator-color: #{$app-sidebar-light-separator-color-dark}; - --#{$prefix}app-sidebar-light-scrollbar-color: #{$app-sidebar-light-scrollbar-color-dark}; --#{$prefix}app-sidebar-light-scrollbar-color-hover: #{$app-sidebar-light-scrollbar-color-hover-dark}; --#{$prefix}app-sidebar-light-menu-heading-color: #{$app-sidebar-light-menu-heading-color-dark}; --#{$prefix}app-sidebar-light-menu-link-bg-color-active: #{$app-sidebar-light-menu-link-bg-color-active-dark}; --#{$prefix}app-sidebar-light-header-menu-link-bg-color-active: #{$app-sidebar-light-header-menu-link-bg-color-active-dark}; + --#{$prefix}app-sidebar-light-menu-link-color: #{$app-sidebar-light-menu-link-color-dark}; + --#{$prefix}app-sidebar-light-menu-link-icon-color: #{$app-sidebar-light-menu-link-icon-color-dark}; } diff --git a/resources/_keenthemes/src/sass/layout/_toolbar.scss b/resources/_keenthemes/src/sass/layout/_toolbar.scss index ca8776f..4ee5e71 100644 --- a/resources/_keenthemes/src/sass/layout/_toolbar.scss +++ b/resources/_keenthemes/src/sass/layout/_toolbar.scss @@ -5,7 +5,7 @@ // Form controls :is([data-kt-app-layout="light-sidebar"], [data-kt-app-layout="light-header"], [data-kt-app-layout="dark-header"]) { .app-toolbar { - .form-select.form-select { + .form-select { background-color: var(--#{$prefix}body-bg) !important; } } @@ -14,6 +14,10 @@ // Desktop mode @include media-breakpoint-up(lg) { .app-toolbar { + [data-kt-app-layout="light-sidebar"] & { + border-top: 1px solid var(--#{$prefix}border-color); + } + body:not([data-kt-app-toolbar-fixed="true"]) & { height: auto; background-color: transparent; diff --git a/resources/_keenthemes/src/sass/layout/_variables.custom.scss b/resources/_keenthemes/src/sass/layout/_variables.custom.scss index 844b539..85121b4 100644 --- a/resources/_keenthemes/src/sass/layout/_variables.custom.scss +++ b/resources/_keenthemes/src/sass/layout/_variables.custom.scss @@ -3,9 +3,9 @@ // // Reboot -$app-bg-color: #f5f8fa; -$app-bg-color-dark: #151521; -$app-blank-bg-color: $white; +$app-bg-color: #fcfcfc; +$app-bg-color-dark: $coal-400; +$app-blank-bg-color: $app-bg-color; $app-blank-bg-color-dark: $app-bg-color-dark; // General @@ -13,43 +13,58 @@ $app-general-root-font-size-desktop: 13px; $app-general-root-font-size-tablet: 12px; $app-general-root-font-size-mobile: 12px; +// Container +$app-container-padding-x: 30px; +$app-container-padding-x-mobile: 20px; + // Header base -$app-header-base-height: 70px; +$app-header-base-height: 74px; $app-header-base-height-mobile: 60px; -$app-header-base-bg-color: $body-bg; -$app-header-base-bg-color-dark: #1e1e2d; +$app-header-base-bg-color: transparent; +$app-header-base-bg-color-dark: $coal-500; $app-header-base-bg-color-mobile: $app-header-base-bg-color; $app-header-base-bg-color-mobile-dark: $app-header-base-bg-color-dark; -$app-header-base-box-shadow: 0px 10px 30px 0px rgba(82,63,105,0.05); +$app-header-base-box-shadow: none; $app-header-base-box-shadow-dark: none; -$app-header-base-menu-link-bg-color-active: $menu-link-bg-color-active; -$app-header-base-menu-link-bg-color-active-dark: #2A2A3C; + +// Header minimize +$app-header-minimize-height: 74px; +$app-header-minimize-height-mobile: 60px; +$app-header-minimize-bg-color: $body-bg; +$app-header-minimize-bg-color-dark: $app-header-base-bg-color-dark; +$app-header-minimize-box-shadow: 0px 10px 30px 0px rgba(82,63,105,0.05); +$app-header-minimize-box-shadow-dark: $box-shadow-sm-dark; // Header light $app-header-light-separator-color: #E4E6EF; $app-header-light-separator-color-dark: $border-color-dark; // Header dark -$app-header-dark-bg-color: #1e1e2d; +$app-header-dark-bg-color:$coal-600; $app-header-dark-separator-color: #282a3d; $app-header-dark-scrollbar-color: #3b3b64; $app-header-dark-scrollbar-color-hover: lighten($app-header-dark-scrollbar-color, 3%); +$app-header-dark-menu-active-link-bg-color: #242424; // Sidebar base $app-sidebar-base-width: 265px; $app-sidebar-base-width-mobile: 250px; -$app-sidebar-base-toggle-btn-box-shadow: 0px 0px 10px rgba(113, 121, 136, 0.1); +$app-sidebar-base-toggle-btn-box-shadow: 0px 8px 14px rgba(15, 42, 81, 0.04); $app-sidebar-base-toggle-btn-box-shadow-dark: none; $app-sidebar-base-toggle-btn-bg-color: $body-bg; -$app-sidebar-base-toggle-btn-bg-color-dark: $app-header-base-menu-link-bg-color-active-dark; +$app-sidebar-base-toggle-btn-bg-color-dark: $gray-200-dark; +$app-sidebar-base-toggle-btn-border-color: #F1F1F2; +$app-sidebar-base-toggle-btn-border-color-dark: none; +$app-sidebar-base-border-color: #F1F1F2; +$app-sidebar-base-border-color-dark: none; // Sidebar minimize $app-sidebar-minimize-width: 75px; // Sidebar light $app-sidebar-light-bg-color: $body-bg; -$app-sidebar-light-bg-color-dark: #1e1e2d; +$app-sidebar-light-bg-color-dark:$coal-500; $app-sidebar-light-box-shadow: 0 0 28px 0 rgba(82,63,105,.05); $app-sidebar-light-box-shadow-dark: none; @@ -57,40 +72,51 @@ $app-sidebar-light-box-shadow-dark: none; $app-sidebar-light-separator-color: $app-header-light-separator-color; $app-sidebar-light-separator-color-dark: $app-header-light-separator-color-dark; -$app-sidebar-light-scrollbar-color: $gray-200; -$app-sidebar-light-scrollbar-color-dark: $gray-200-dark; $app-sidebar-light-scrollbar-color-hover: $gray-200; $app-sidebar-light-scrollbar-color-hover-dark: $gray-200-dark; $app-sidebar-light-menu-heading-color: #B5B5C3; $app-sidebar-light-menu-heading-color-dark: $gray-500-dark; -$app-sidebar-light-menu-link-bg-color-active: #F4F6FA; -$app-sidebar-light-menu-link-bg-color-active-dark: #2A2A3C; -$app-sidebar-light-header-menu-link-bg-color-active: #EAEEF2; +$app-sidebar-light-menu-link-bg-color-active:#F7F8FB; +$app-sidebar-light-menu-link-bg-color-active-dark:#2A2A3C; +$app-sidebar-light-menu-link-color: #252F4A; +$app-sidebar-light-menu-link-color-dark: $gray-300; +$app-sidebar-light-menu-link-icon-color: #99A1B7; +$app-sidebar-light-menu-link-icon-color-dark: #7F8194; +$app-sidebar-light-header-menu-link-bg-color-active: #F7F8FB; $app-sidebar-light-header-menu-link-bg-color-active-dark: $gray-100-dark; // Sidebar dark -$app-sidebar-dark-bg-color: #1e1e2d; -$app-sidebar-dark-separator-color: #393945; -$app-sidebar-dark-scrollbar-color: $gray-300-dark; -$app-sidebar-dark-scrollbar-color-hover: $gray-300-dark; -$app-sidebar-dark-menu-heading-color: #646477; -$app-sidebar-dark-menu-link-bg-color-active: #2A2A3C; +$app-sidebar-dark-bg-color: $coal-500; +$app-sidebar-dark-separator-color: $light-light-dark; +$app-sidebar-dark-scrollbar-color-hover: lighten($app-sidebar-dark-separator-color, 2%); +$app-sidebar-dark-menu-heading-color: $gray-500-dark; +$app-sidebar-dark-menu-sub-link-color: $gray-600-dark;; +$app-sidebar-dark-menu-link-bg-color-active: #1C1C21; + +// Aside base +$app-aside-base-width: 320px; +$app-aside-base-width-mobile: 300px; +$app-aside-base-bg-color: $body-bg; +$app-aside-base-bg-color-dark: #131313; +$app-aside-base-gap-end: $app-container-padding-x; +$app-aside-base-gap-top: $app-container-padding-x; +$app-aside-base-gap-bottom: $app-container-padding-x; // Toolbar base $app-toolbar-base-height: 55px; -$app-toolbar-base-bg-color:$body-bg; -$app-toolbar-base-bg-color-dark: darken(#1e1e2d, 2%); +$app-toolbar-base-bg-color: $body-bg; +$app-toolbar-base-bg-color-dark: #131313; $app-toolbar-base-box-shadow: 0px 10px 30px 0px rgba(82,63,105,0.05); $app-toolbar-base-box-shadow-dark: none; -$app-toolbar-base-border-top: 1px solid $border-color; -$app-toolbar-base-border-top-dark: 0; +$app-toolbar-base-border-top: 1px dashed $border-dashed-color; +$app-toolbar-base-border-top-dark: 1px dashed $border-dashed-color-dark; // Footer $app-footer-height: 60px; $app-footer-height-mobile: auto; -$app-footer-bg-color: $body-bg; -$app-footer-bg-color-dark: #1e1e2d; -$app-footer-box-shadow: 0px 10px 30px 0px rgba(82,63,105,0.05); +$app-footer-bg-color: transparent; +$app-footer-bg-color-dark: transparent; +$app-footer-box-shadow: 0px 10px 30px 0px rgba(49, 25, 79, 0.05); $app-footer-box-shadow-dark: none; // Scrolltop @@ -103,4 +129,4 @@ $scrolltop-end-mobile: 5px; $app-layout-builder-toggle-end: 50px; $app-layout-builder-toggle-end-mobile: 40px; $app-layout-builder-toggle-bottom: 40px; -$app-layout-builder-toggle-bottom-mobile: 20px; \ No newline at end of file +$app-layout-builder-toggle-bottom-mobile: 20px; \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/layout/base/_root.scss b/resources/_keenthemes/src/sass/layout/base/_root.scss index 72e0454..d34538b 100644 --- a/resources/_keenthemes/src/sass/layout/base/_root.scss +++ b/resources/_keenthemes/src/sass/layout/base/_root.scss @@ -164,21 +164,15 @@ // Aside base @include property(--#{$prefix}app-aside-base-bg-color, $app-aside-base-bg-color); @include property(--#{$prefix}app-aside-base-box-shadow, $app-aside-base-box-shadow); - @include property(--#{$prefix}app-aside-base-border-start, $app-aside-base-border-start); - @include property(--#{$prefix}app-aside-base-border-end, $app-aside-base-border-end); // Aside sticky @include property(--#{$prefix}app-aside-sticky-bg-color, $app-aside-sticky-bg-color); @include property(--#{$prefix}app-aside-sticky-box-shadow, $app-aside-sticky-box-shadow); - @include property(--#{$prefix}app-aside-sticky-border-start, $app-aside-sticky-border-start); - @include property(--#{$prefix}app-aside-sticky-border-end, $app-aside-sticky-border-end); // Aside minimize @include property(--#{$prefix}app-aside-minimize-bg-color, $app-aside-minimize-bg-color); @include property(--#{$prefix}app-aside-minimize-box-shadow, $app-aside-minimize-box-shadow); @include property(--#{$prefix}app-aside-minimize-hover-box-shadow, $app-aside-minimize-hover-box-shadow); - @include property(--#{$prefix}app-aside-minimize-border-start, $app-aside-minimize-border-start); - @include property(--#{$prefix}app-aside-minimize-border-end, $app-aside-minimize-border-end); // Page @include property(--#{$prefix}app-page-bg-color, $app-page-bg-color); @@ -352,20 +346,14 @@ // Aside base @include property(--#{$prefix}app-aside-base-bg-color, $app-aside-base-bg-color-dark); @include property(--#{$prefix}app-aside-base-box-shadow, $app-aside-base-box-shadow-dark); - @include property(--#{$prefix}app-aside-base-border-start, $app-aside-base-border-start-dark); - @include property(--#{$prefix}app-aside-base-border-end, $app-aside-base-border-end-dark); // Aside sticky @include property(--#{$prefix}app-aside-sticky-bg-color, $app-aside-sticky-bg-color-dark); - @include property(--#{$prefix}app-aside-sticky-border-start, $app-aside-sticky-border-start-dark); - @include property(--#{$prefix}app-aside-sticky-border-end, $app-aside-sticky-border-end-dark); // Aside minimize @include property(--#{$prefix}app-aside-minimize-bg-color, $app-aside-minimize-bg-color-dark); @include property(--#{$prefix}app-aside-minimize-box-shadow, $app-aside-minimize-box-shadow-dark); @include property(--#{$prefix}app-aside-minimize-hover-box-shadow, $app-aside-minimize-hover-box-shadow-dark); - @include property(--#{$prefix}app-aside-minimize-border-start, $app-aside-minimize-border-start-dark); - @include property(--#{$prefix}app-aside-minimize-border-end, $app-aside-minimize-border-end-dark); // Page @include property(--#{$prefix}app-page-bg-color, $app-page-bg-color-dark); diff --git a/resources/_keenthemes/src/sass/layout/base/_variables.scss b/resources/_keenthemes/src/sass/layout/base/_variables.scss index bba8b42..6ecd03b 100644 --- a/resources/_keenthemes/src/sass/layout/base/_variables.scss +++ b/resources/_keenthemes/src/sass/layout/base/_variables.scss @@ -528,20 +528,8 @@ $app-aside-base-z-index: null !default; $app-aside-base-z-index-mobile: 106 !default; $app-aside-base-bg-color: null !default; $app-aside-base-bg-color-dark: null !default; -$app-aside-base-bg-color-mobile: null !default; -$app-aside-base-bg-color-mobile-dark: null !default; $app-aside-base-box-shadow: null !default; $app-aside-base-box-shadow-dark: null !default; -$app-aside-base-box-shadow-mobile: null !default; -$app-aside-base-box-shadow-mobile-dark: null !default; -$app-aside-base-border-start: null !default; -$app-aside-base-border-start-dark: null !default; -$app-aside-base-border-start-mobile: null !default; -$app-aside-base-border-start-mobile-dark: null !default; -$app-aside-base-border-end: null !default; -$app-aside-base-border-end-dark: null !default; -$app-aside-base-border-end-mobile: null !default; -$app-aside-base-border-end-mobile-dark: null !default; $app-aside-base-gap-start: 0px !default; $app-aside-base-gap-end: 0px !default; $app-aside-base-gap-top: 0px !default; @@ -552,7 +540,7 @@ $app-aside-base-gap-top-mobile: 0px !default; $app-aside-base-gap-bottom-mobile: 0px !default; // Aside fixed -$app-aside-fixed-z-index: 105 !default; +$app-aside-fixed-z-index: 99 !default; $app-aside-fixed-right: 0 !default; $app-aside-fixed-top: 0 !default; $app-aside-fixed-bottom: 0 !default; @@ -562,15 +550,11 @@ $app-aside-sticky-top: auto !default; $app-aside-sticky-bottom: auto !default; $app-aside-sticky-left: auto !default; $app-aside-sticky-width: 300px !default; -$app-aside-sticky-z-index: 105 !default; +$app-aside-sticky-z-index: 99 !default; $app-aside-sticky-bg-color: null !default; $app-aside-sticky-bg-color-dark: null !default; $app-aside-sticky-box-shadow: null !default; $app-aside-sticky-box-shadow-dark: null !default; -$app-aside-sticky-border-start: null !default; -$app-aside-sticky-border-start-dark: null !default; -$app-aside-sticky-border-end: null !default; -$app-aside-sticky-border-end-dark: null !default; $app-aside-sticky-gap-start: 0px !default; $app-aside-sticky-gap-end: 0px !default; $app-aside-sticky-gap-top: 0px !default; diff --git a/resources/_keenthemes/src/sass/layout/base/aside/_aside.scss b/resources/_keenthemes/src/sass/layout/base/aside/_aside.scss index 5b9ac04..61eab75 100644 --- a/resources/_keenthemes/src/sass/layout/base/aside/_aside.scss +++ b/resources/_keenthemes/src/sass/layout/base/aside/_aside.scss @@ -7,8 +7,6 @@ transition: $app-aside-base-transition; background-color: var(--#{$prefix}app-aside-base-bg-color); box-shadow: var(--#{$prefix}app-aside-base-box-shadow); - border-left: var(--#{$prefix}app-aside-base-border-left); - border-right: var(--#{$prefix}app-aside-base-border-right); } // Utilities diff --git a/resources/_keenthemes/src/sass/layout/base/header/_header.scss b/resources/_keenthemes/src/sass/layout/base/header/_header.scss index aa9a26c..892a2c0 100644 --- a/resources/_keenthemes/src/sass/layout/base/header/_header.scss +++ b/resources/_keenthemes/src/sass/layout/base/header/_header.scss @@ -25,6 +25,11 @@ --#{$prefix}app-header-height-actual: #{$app-header-base-height}; } + [data-kt-app-header-fixed="true"][data-kt-app-header-stacked="true"] { + --#{$prefix}app-header-height: calc(var(--#{$prefix}app-header-primary-height, 0px) + var(--#{$prefix}app-header-secondary-height, 0px) + var(--#{$prefix}app-header-tertiary-height, 0px)); + --#{$prefix}app-header-height-actual: calc(#{$app-header-primary-base-height} + #{$app-header-secondary-base-height} + #{$app-header-tertiary-base-height}); + } + [data-kt-app-header-sticky="on"] { --#{$prefix}app-header-height: #{$app-header-sticky-height}; --#{$prefix}app-header-height-actual: #{$app-header-base-height}; @@ -134,6 +139,16 @@ ); } + // Aside + [data-kt-app-header-fixed="true"][data-kt-app-aside-fixed="true"][data-kt-app-aside-push-header="true"] &, + [data-kt-app-header-fixed="true"][data-kt-app-aside-sticky="on"][data-kt-app-aside-push-header="true"] & { + right: calc( + var(--#{$prefix}app-aside-width) + + var(--#{$prefix}app-aside-gap-start, 0px) + + var(--#{$prefix}app-aside-gap-end, 0px) + ); + } + // Toolbar [data-kt-app-header-fixed="true"][data-kt-app-toolbar-fixed="true"] & { box-shadow: none; diff --git a/resources/_keenthemes/src/sass/layout/base/sidebar/_sidebar-panel.scss b/resources/_keenthemes/src/sass/layout/base/sidebar/_sidebar-panel.scss index 4b34b36..e03c2ce 100644 --- a/resources/_keenthemes/src/sass/layout/base/sidebar/_sidebar-panel.scss +++ b/resources/_keenthemes/src/sass/layout/base/sidebar/_sidebar-panel.scss @@ -199,6 +199,9 @@ // Vars :root { + --#{$prefix}app-sidebar-panel-width: #{$app-sidebar-panel-base-width-mobile}; + --#{$prefix}app-sidebar-panel-width-actual: #{$app-sidebar-panel-base-width-mobile}; + --#{$prefix}app-sidebar-panel-gap-start: #{$app-sidebar-panel-base-gap-start-mobile}; --#{$prefix}app-sidebar-panel-gap-end: #{$app-sidebar-panel-base-gap-end-mobile}; --#{$prefix}app-sidebar-panel-gap-top: #{$app-sidebar-panel-base-gap-top-mobile}; diff --git a/resources/_keenthemes/src/sass/layout/header/_header-dark.scss b/resources/_keenthemes/src/sass/layout/header/_header-dark.scss index 7b1191b..b17c054 100644 --- a/resources/_keenthemes/src/sass/layout/header/_header-dark.scss +++ b/resources/_keenthemes/src/sass/layout/header/_header-dark.scss @@ -9,72 +9,69 @@ .btn-custom { @include button-custom-variant( - $color:#B5B5C3, - $icon-color: #B5B5C3, + $color: $gray-600-dark, + $icon-color: $gray-600-dark, $border-color: null, $bg-color: null, - $color-active: #B5B5C3, + $color-active: var(--#{$prefix}primary), $icon-color-active: var(--#{$prefix}primary), $border-color-active: null, $bg-color-active: rgba(63, 66, 84, 0.35) ); } } + + + // General mode + .app-header-menu { + .menu { + // Menu root links + > .menu-item { + @include menu-link-default-state( + $title-color: $gray-600-dark, + $icon-color:$gray-600-dark, + $bullet-color:$gray-600-dark, + $arrow-color: $gray-600-dark, + $bg-color: null, + $all-links: false + ); - // Desktop mode - @include media-breakpoint-up(lg) { - // General mode - .app-header-menu { - .menu { - // Menu root links - > .menu-item { - @include menu-link-default-state( - $title-color: #9D9DA6, - $icon-color:#C5C5D8, - $bullet-color:#787887, - $arrow-color: #787887, - $bg-color: null, - $all-links: false - ); + @include menu-link-hover-state( + $title-color: var(--#{$prefix}primary-inverse), + $icon-color: var(--#{$prefix}primary-inverse), + $bullet-color: var(--#{$prefix}primary-inverse), + $arrow-color: var(--#{$prefix}primary-inverse), + $bg-color: null, + $all-links: false + ); - @include menu-link-hover-state( - $title-color: var(--#{$prefix}primary-inverse), - $icon-color: var(--#{$prefix}primary-inverse), - $bullet-color: var(--#{$prefix}primary-inverse), - $arrow-color: var(--#{$prefix}primary-inverse), - $bg-color: $app-sidebar-dark-menu-link-bg-color-active, - $all-links: false - ); + @include menu-link-show-state( + $title-color: var(--#{$prefix}primary-inverse), + $icon-color: var(--#{$prefix}primary-inverse), + $bullet-color: var(--#{$prefix}primary-inverse), + $arrow-color: var(--#{$prefix}primary-inverse), + $bg-color: null, + $all-links: false + ); - @include menu-link-show-state( - $title-color: var(--#{$prefix}primary-inverse), - $icon-color: var(--#{$prefix}primary-inverse), - $bullet-color: var(--#{$prefix}primary-inverse), - $arrow-color: var(--#{$prefix}primary-inverse), - $bg-color: null, - $all-links: false - ); - - @include menu-link-here-state( - $title-color: var(--#{$prefix}primary-inverse), - $icon-color: var(--#{$prefix}primary-inverse), - $bullet-color: var(--#{$prefix}primary-inverse), - $arrow-color: var(--#{$prefix}primary-inverse), - $bg-color: $app-sidebar-dark-menu-link-bg-color-active, - $all-links: false - ); - - @include menu-link-active-state( - $title-color: var(--#{$prefix}primary-inverse), - $icon-color: var(--#{$prefix}primary-inverse), - $bullet-color: var(--#{$prefix}primary-inverse), - $arrow-color: var(--#{$prefix}primary-inverse), - $bg-color: $app-sidebar-dark-menu-link-bg-color-active, - $all-links: false - ); - } + @include menu-link-here-state( + $title-color: var(--#{$prefix}primary-inverse), + $icon-color: var(--#{$prefix}primary-inverse), + $bullet-color: var(--#{$prefix}primary-inverse), + $arrow-color: var(--#{$prefix}primary-inverse), + $bg-color: $app-header-dark-menu-active-link-bg-color, + $all-links: false + ); + + @include menu-link-active-state( + $title-color: var(--#{$prefix}primary-inverse), + $icon-color: var(--#{$prefix}primary-inverse), + $bullet-color: var(--#{$prefix}primary-inverse), + $arrow-color: var(--#{$prefix}primary-inverse), + $bg-color: $app-header-dark-menu-active-link-bg-color, + $all-links: false + ); } } - } -} - + } +} \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/layout/header/_header-sidebar-light.scss b/resources/_keenthemes/src/sass/layout/header/_header-sidebar-light.scss index 33d75f8..db00e15 100644 --- a/resources/_keenthemes/src/sass/layout/header/_header-sidebar-light.scss +++ b/resources/_keenthemes/src/sass/layout/header/_header-sidebar-light.scss @@ -2,6 +2,7 @@ // Custom Header(used by Light Sidebar layout only) // + [data-kt-app-layout="light-sidebar"] { // Desktop mode @include media-breakpoint-up(lg) { @@ -14,7 +15,7 @@ $icon-color: var(--#{$prefix}primary), $bullet-color: var(--#{$prefix}primary), $arrow-color: var(--#{$prefix}primary), - $bg-color: var(--#{$prefix}app-sidebar-light-header-menu-link-bg-color-active), + $bg-color: null, $all-links: false ); @@ -23,12 +24,12 @@ $icon-color: var(--#{$prefix}primary), $bullet-color: var(--#{$prefix}primary), $arrow-color: var(--#{$prefix}primary), - $bg-color: var(--#{$prefix}app-sidebar-light-header-menu-link-bg-color-active), + $bg-color: var(--#{$prefix}gray-100), $all-links: false ); } } - } + } } } @@ -38,9 +39,9 @@ .app-header { background-color: transparent; box-shadow: none; - border-bottom: 1px solid var(--#{$prefix}app-sidebar-light-separator-color); + border-bottom: none; } - } + } } // Tablet & mobile modes @@ -48,8 +49,7 @@ [data-kt-app-layout="light-sidebar"]:not([data-kt-app-header-fixed-mobile="true"]) { .app-header { background-color: transparent; - box-shadow: none; - border-bottom: 1px solid var(--#{$prefix}app-sidebar-light-separator-color); + box-shadow: none; } } } \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/layout/header/_header.scss b/resources/_keenthemes/src/sass/layout/header/_header.scss index 3952459..a7d814a 100644 --- a/resources/_keenthemes/src/sass/layout/header/_header.scss +++ b/resources/_keenthemes/src/sass/layout/header/_header.scss @@ -5,13 +5,14 @@ // General mode .app-header-menu { .menu { + // General .menu-item { @include menu-link-default-state( $title-color: var(--#{$prefix}gray-700), $icon-color: var(--#{$prefix}gray-500), $bullet-color: var(--#{$prefix}gray-500), $arrow-color: var(--#{$prefix}gray-500), - $bg-color: null, + $bg-color: null ); @include menu-link-hover-state( @@ -19,7 +20,7 @@ $icon-color: var(--#{$prefix}primary), $bullet-color: var(--#{$prefix}primary), $arrow-color: var(--#{$prefix}primary), - $bg-color: var(--#{$prefix}menu-link-bg-color-active) + $bg-color: null ); @include menu-link-show-state( @@ -27,7 +28,7 @@ $icon-color: var(--#{$prefix}primary), $bullet-color: var(--#{$prefix}primary), $arrow-color: var(--#{$prefix}primary), - $bg-color: null, + $bg-color: null ); @include menu-link-here-state( @@ -35,7 +36,7 @@ $icon-color: var(--#{$prefix}primary), $bullet-color: var(--#{$prefix}primary), $arrow-color: var(--#{$prefix}primary), - $bg-color: var(--#{$prefix}menu-link-bg-color-active) + $bg-color: null ); @include menu-link-active-state( @@ -43,16 +44,25 @@ $icon-color: var(--#{$prefix}primary), $bullet-color: var(--#{$prefix}primary), $arrow-color: var(--#{$prefix}primary), - $bg-color: var(--#{$prefix}menu-link-bg-color-active) + $bg-color: var(--#{$prefix}gray-100) ); } + + // Root + > .menu-item { + > .menu-link { + > .menu-title { + font-weight: $font-weight-bold; + font-size: 1.1rem; + } + } + } } .menu-extended { --#{$prefix}menu-link-bg-color-active: rgba(var(--#{$prefix}gray-100-rgb), 0.7); --#{$prefix}menu-link-bg-color-hover: rgba(var(--#{$prefix}gray-100-rgb), 0.7); - - + .menu-custom-icon { background-color: var(--#{$prefix}gray-100); } @@ -76,29 +86,85 @@ > .menu-item { margin-right: 0.5rem; - > .menu-link { - padding-top: 0.775rem; - padding-bottom: 0.775rem; - font-weight: $font-weight-semibold; - } - @include menu-link-here-state( $title-color: var(--#{$prefix}primary), $icon-color: var(--#{$prefix}primary), $bullet-color: var(--#{$prefix}primary), $arrow-color: var(--#{$prefix}primary), - $bg-color: var(--#{$prefix}app-header-base-menu-link-bg-color-active) + $bg-color: var(--#{$prefix}gray-100) ); + + > .menu-link { + padding-top: 0.675rem; + padding-bottom: 0.675rem; + font-weight: $font-weight-semibold; + } } } - } + } + + [data-kt-app-layout="dark-sidebar"] { + .app-header-menu { + .menu { + // Menu root item + > .menu-item { + &.active, + &.here { + > .menu-link { + background-color: transparent; + box-shadow: 0px 3px 4px rgba(0, 0, 0, 0.03); + } + } + } + } + } + } + + [data-kt-app-toolbar-fixed="true"] { + .app-header { + background-color: var(--#{$prefix}app-header-minimize-bg-color); + } + } + + // Modal open fix + [data-kt-app-header-fixed="true"].modal-open { + .app-header { + padding-right: $body-scrollbar-width !important; + } + } +} + +// Dark mode +@include color-mode(dark) { + // Desktop mode + @include media-breakpoint-up(lg) { + [data-kt-app-layout="dark-sidebar"] { + .app-header-menu { + .menu { + // Menu root item + > .menu-item { + &.active, + &.here { + > .menu-link { + box-shadow: none; + background-color: var(--#{$prefix}gray-100); + } + } + } + } + } + } + } } // Tablet & mobile modes @include media-breakpoint-down(lg) { .app-header { + background-color: var(--#{$prefix}app-header-minimize-bg-color); + border-bottom: 1px solid var(--#{$prefix}border-color) !important; + .page-title { display: none !important; } - } + } } \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/layout/sidebar/_sidebar-dark.scss b/resources/_keenthemes/src/sass/layout/sidebar/_sidebar-dark.scss index 0690986..e87f418 100644 --- a/resources/_keenthemes/src/sass/layout/sidebar/_sidebar-dark.scss +++ b/resources/_keenthemes/src/sass/layout/sidebar/_sidebar-dark.scss @@ -5,10 +5,11 @@ [data-kt-app-layout="dark-sidebar"] { .app-sidebar { background-color: $app-sidebar-dark-bg-color; - border-right: 0 !important; + border-right: 0; + .scroll-y, .hover-scroll-overlay-y { - @include scrollbar-color($app-sidebar-dark-scrollbar-color, $app-sidebar-dark-scrollbar-color-hover); + @include scrollbar-color(transparent, $app-sidebar-dark-scrollbar-color-hover); } .app-sidebar-logo { @@ -35,43 +36,48 @@ } @include menu-link-default-state( - $title-color: #9D9DA6, - $icon-color:#C5C5D8, - $bullet-color:#787887, - $arrow-color: #787887, - $bg-color: null - ); - - @include menu-link-hover-state( - $title-color: var(--#{$prefix}primary-inverse), - $icon-color: var(--#{$prefix}primary-inverse), - $bullet-color: var(--#{$prefix}primary-inverse), - $arrow-color: var(--#{$prefix}primary-inverse), - $bg-color: null + $title-color: $gray-700-dark, + $icon-color: $gray-400-dark, + $bullet-color:$gray-400-dark, + $arrow-color: $gray-400-dark, + $bg-color: null, + $all-links: true ); @include menu-link-here-state( - $title-color: var(--#{$prefix}primary-inverse), - $icon-color: var(--#{$prefix}primary-inverse), - $bullet-color: var(--#{$prefix}primary-inverse), - $arrow-color: var(--#{$prefix}primary-inverse), - $bg-color: null + $title-color: $gray-900-dark, + $icon-color: $gray-900-dark, + $bullet-color: $gray-900-dark, + $arrow-color: $gray-900-dark, + $bg-color: null, + $all-links: true ); @include menu-link-show-state( - $title-color: var(--#{$prefix}primary-inverse), - $icon-color: var(--#{$prefix}primary-inverse), - $bullet-color: var(--#{$prefix}primary-inverse), - $arrow-color: var(--#{$prefix}primary-inverse), - $bg-color: null + $title-color: $gray-900-dark, + $icon-color: $gray-900-dark, + $bullet-color: $gray-900-dark, + $arrow-color: $gray-900-dark, + $bg-color: null, + $all-links: true + ); + + @include menu-link-hover-state( + $title-color: $gray-900-dark, + $icon-color: $gray-900-dark, + $bullet-color: $gray-900-dark, + $arrow-color: $gray-900-dark, + $bg-color: null, + $all-links: true ); @include menu-link-active-state( - $title-color: var(--#{$prefix}primary-inverse), - $icon-color: var(--#{$prefix}primary-inverse), - $bullet-color: var(--#{$prefix}primary-inverse), - $arrow-color: var(--#{$prefix}primary-inverse), - $bg-color: $app-sidebar-dark-menu-link-bg-color-active + $title-color: $gray-900-dark, + $icon-color: $gray-900-dark, + $bullet-color: $gray-900-dark, + $arrow-color: $gray-900-dark, + $bg-color: $app-sidebar-dark-menu-link-bg-color-active, + $all-links: true ); } } @@ -87,4 +93,13 @@ } } } +} + +// Dark mode +@include color-mode(dark) { + [data-kt-app-layout="dark-sidebar"] { + .app-sidebar { + border-right: 1px solid $app-sidebar-dark-separator-color; + } + } } \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/layout/sidebar/_sidebar-light.scss b/resources/_keenthemes/src/sass/layout/sidebar/_sidebar-light.scss index 1f89349..5e73163 100644 --- a/resources/_keenthemes/src/sass/layout/sidebar/_sidebar-light.scss +++ b/resources/_keenthemes/src/sass/layout/sidebar/_sidebar-light.scss @@ -5,14 +5,20 @@ [data-kt-app-layout="light-sidebar"] { .app-sidebar { background-color: var(--#{$prefix}app-sidebar-light-bg-color); - border-right: 0 !important; + border-right: 1px solid var(--#{$prefix}gray-200); + .scroll-y, .hover-scroll-overlay-y { - @include scrollbar-color(var(--#{$prefix}app-sidebar-light-scrollbar-color), var(--#{$prefix}app-sidebar-light-scrollbar-color-hover)); + @include scrollbar-color(transparent, var(--#{$prefix}app-sidebar-light-scrollbar-color-hover)); } .app-sidebar-logo { - border-bottom: 1px solid var(--#{$prefix}app-sidebar-light-separator-color); + border-bottom: 0; + } + + .app-sidebar-toggle { + border-radius: 50%; + box-shadow: none !important; } .menu { @@ -24,34 +30,34 @@ } @include menu-link-default-state( - $title-color: var(--#{$prefix}gray-700), - $icon-color: var(--#{$prefix}gray-500), - $bullet-color: var(--#{$prefix}gray-500), - $arrow-color: var(--#{$prefix}gray-500), + $title-color: var(--#{$prefix}app-sidebar-light-menu-link-color), + $icon-color: var(--#{$prefix}app-sidebar-light-menu-link-icon-color), + $bullet-color: var(--#{$prefix}app-sidebar-light-menu-link-icon-color), + $arrow-color: var(--#{$prefix}app-sidebar-light-menu-link-icon-color), $bg-color: null ); @include menu-link-hover-state( - $title-color: var(--#{$prefix}gray-900), - $icon-color: var(--#{$prefix}gray-700), - $bullet-color: var(--#{$prefix}gray-700), - $arrow-color: var(--#{$prefix}gray-700), + $title-color: var(--#{$prefix}app-sidebar-light-menu-link-color), + $icon-color: var(--#{$prefix}app-sidebar-light-menu-link-icon-color), + $bullet-color: var(--#{$prefix}app-sidebar-light-menu-link-icon-color), + $arrow-color: var(--#{$prefix}app-sidebar-light-menu-link-icon-color), $bg-color: null ); @include menu-link-show-state( - $title-color: var(--#{$prefix}gray-900), - $icon-color: var(--#{$prefix}gray-700), - $bullet-color: var(--#{$prefix}gray-700), - $arrow-color: var(--#{$prefix}gray-700), + $title-color: var(--#{$prefix}app-sidebar-light-menu-link-color), + $icon-color: var(--#{$prefix}app-sidebar-light-menu-link-icon-color), + $bullet-color: var(--#{$prefix}app-sidebar-light-menu-link-icon-color), + $arrow-color: var(--#{$prefix}app-sidebar-light-menu-link-icon-color), $bg-color: null ); @include menu-link-here-state( - $title-color: var(--#{$prefix}gray-900), - $icon-color: var(--#{$prefix}gray-700), - $bullet-color: var(--#{$prefix}gray-700), - $arrow-color: var(--#{$prefix}gray-700), + $title-color: var(--#{$prefix}app-sidebar-light-menu-link-color), + $icon-color: var(--#{$prefix}app-sidebar-light-menu-link-icon-color), + $bullet-color: var(--#{$prefix}app-sidebar-light-menu-link-icon-color), + $arrow-color: var(--#{$prefix}app-sidebar-light-menu-link-icon-color), $bg-color: null ); @@ -62,21 +68,38 @@ $arrow-color: var(--#{$prefix}primary), $bg-color: var(--#{$prefix}app-sidebar-light-menu-link-bg-color-active) ); + + .menu-sub { + .menu-item { + .menu-link { + .menu-title { + color: #4B5675; + } + + &.active { + .menu-title { + color: var(--#{$prefix}primary); + } + } + } + } + } } } } } [data-kt-app-layout="light-sidebar"][data-kt-app-header-fixed="true"] { - .app-header { - background-color: var(--#{$prefix}app-bg-color); - box-shadow: none; - border-bottom: 1px dashed var(--#{$prefix}app-sidebar-light-separator-color); - } + [data-kt-app-header-minimize=on] .app-header { + transition: none; + z-index: 100; + background-color: var(--bs-app-header-minimize-bg-color); + box-shadow: var(--bs-app-header-minimize-box-shadow); + } .app-sidebar { .app-sidebar-logo { - border-bottom: 1px dashed var(--#{$prefix}app-sidebar-light-separator-color); + border-bottom: 0; } } } \ No newline at end of file diff --git a/resources/_keenthemes/src/sass/layout/sidebar/_sidebar.scss b/resources/_keenthemes/src/sass/layout/sidebar/_sidebar.scss index e99e684..7f6566d 100644 --- a/resources/_keenthemes/src/sass/layout/sidebar/_sidebar.scss +++ b/resources/_keenthemes/src/sass/layout/sidebar/_sidebar.scss @@ -7,26 +7,27 @@ .app-sidebar-toggle { box-shadow: var(--#{$prefix}app-sidebar-base-toggle-btn-box-shadow) !important; background-color: var(--#{$prefix}app-sidebar-base-toggle-btn-bg-color) !important; + border: 1px solid var(--#{$prefix}app-sidebar-base-border-color) !important; - .active .svg-icon { + .active i { transform: rotateZ(0deg) !important; } } [dir="rtl"] { .app-sidebar-toggle { - .svg-icon { + i { transform: rotateZ(180deg); } - &.active .svg-icon { + &.active i { transform: rotateZ(0deg) !important; } } } .app-sidebar-logo { - height: var(--#{$prefix}app-header-height); + height: calc(var(--#{$prefix}app-header-height) + 1px); display: flex; align-items: center; justify-content: space-between; @@ -36,9 +37,17 @@ .app-sidebar-menu { .menu { - & > .menu-item { + // Root + > .menu-item { margin-left: 0.115rem; - } + + > .menu-link { + > .menu-title { + font-weight: $font-weight-bold; + font-size: 1.1rem; + } + } + } } } } diff --git a/resources/_keenthemes/src/sass/vendors/plugins/_apexcharts.scss b/resources/_keenthemes/src/sass/vendors/plugins/_apexcharts.scss index 5ef8651..73f9bbc 100644 --- a/resources/_keenthemes/src/sass/vendors/plugins/_apexcharts.scss +++ b/resources/_keenthemes/src/sass/vendors/plugins/_apexcharts.scss @@ -24,7 +24,7 @@ } .apexcharts-menu { - background-color: var(--#{$prefix}body-bg); + background: var(--#{$prefix}body-bg) !important; border: 0 !important; padding: 0.5rem 0 !important; box-shadow: var(--#{$prefix}dropdown-box-shadow); diff --git a/resources/_keenthemes/src/sass/vendors/plugins/_datatables.scss b/resources/_keenthemes/src/sass/vendors/plugins/_datatables.scss index fc625fb..dc44e20 100644 --- a/resources/_keenthemes/src/sass/vendors/plugins/_datatables.scss +++ b/resources/_keenthemes/src/sass/vendors/plugins/_datatables.scss @@ -114,7 +114,7 @@ div.dataTables_wrapper { div.dataTables_processing { @include border-radius($border-radius); box-shadow: var(--#{$prefix}dropdown-box-shadow); - background-color: var(--#{$prefix}tooltip-bg); + background-color: $tooltip-bg; color: var(--#{$prefix}gray-700); font-weight: $font-weight-semibold; margin: 0 !important; @@ -212,17 +212,22 @@ table.dataTable > tbody > tr.selected > * { // Scroll div.dataTables_scrollBody { border-left: 0 !important; + + .sorting_disabled.sorting_asc, + .sorting_disabled.sorting_desc { + &:after { + display: none !important; + } + } } -.dataTables_scroll .dataTables_scrollBody .table { - thead { - line-height: 0; - - .sorting { - &:after, - &:before { - display: none !important; - } +.dataTables_scroll > .dataTables_scrollBody > .table > thead { + line-height: 0; + + .sorting { + &:after, + &:before { + display: none !important; } } } @@ -261,7 +266,27 @@ table.dataTable tbody tr > .dtfc-fixed-right { // Child details .dtr-details { + display: table !important; + li { - display: flex; + display: table-row !important; + + .dtr-title { + padding-right: 0.75rem; + color: var(--#{$prefix}gray-900); + } + + .dtr-data { + color: var(--#{$prefix}gray-700); + } + + .dtr-title, + .dtr-data { + font-size: 1rem; + padding-top: 0.25rem; + padding-bottom: 0.25rem; + display: table-cell !important; + border-bottom: 1px solid var(--#{$prefix}border-color); + } } } diff --git a/resources/_keenthemes/src/sass/vendors/plugins/_daterangepicker.scss b/resources/_keenthemes/src/sass/vendors/plugins/_daterangepicker.scss index 537c576..b949fe6 100644 --- a/resources/_keenthemes/src/sass/vendors/plugins/_daterangepicker.scss +++ b/resources/_keenthemes/src/sass/vendors/plugins/_daterangepicker.scss @@ -185,7 +185,7 @@ color: var(--#{$prefix}gray-700); &.available.off { - color: var(--#{$prefix}gray-400); + color: var(--#{$prefix}gray-500); } &.active { @@ -210,8 +210,8 @@ &.today, &.today.active { - background: var(--#{$prefix}component-hover-bg) !important; - color: var(--#{$prefix}component-hover-color) !important; + background: var(--#{$prefix}gray-200) !important; + color: var(--#{$prefix}gray-700) !important; @include border-radius($border-radius); } diff --git a/resources/_keenthemes/src/sass/vendors/plugins/_draggable.scss b/resources/_keenthemes/src/sass/vendors/plugins/_draggable.scss index 6527cc9..9fe051b 100644 --- a/resources/_keenthemes/src/sass/vendors/plugins/_draggable.scss +++ b/resources/_keenthemes/src/sass/vendors/plugins/_draggable.scss @@ -9,7 +9,7 @@ &.draggable-mirror { opacity: 0.8; transition: opacity 0.3s ease; - border: 2px dashed var(--#{$prefix}gray-300) !important; + border: 1px dashed var(--#{$prefix}gray-300) !important; @include border-radius($border-radius); } diff --git a/resources/_keenthemes/src/sass/vendors/plugins/_flatpickr.scss b/resources/_keenthemes/src/sass/vendors/plugins/_flatpickr.scss index a42ce15..75fc85c 100644 --- a/resources/_keenthemes/src/sass/vendors/plugins/_flatpickr.scss +++ b/resources/_keenthemes/src/sass/vendors/plugins/_flatpickr.scss @@ -390,14 +390,14 @@ span.flatpickr-weekday { &.notAllowed, &.notAllowed.prevMonthDay, &.notAllowed.nextMonthDay { - color: var(--#{$prefix}gray-400); + color: var(--#{$prefix}gray-500); background: transparent; border-color: transparent; } &.flatpickr-disabled, &.flatpickr-disabled:hover { cursor: not-allowed; - color: var(--#{$prefix}gray-400); + color: var(--#{$prefix}gray-500); } } diff --git a/resources/_keenthemes/src/sass/vendors/plugins/_quill.scss b/resources/_keenthemes/src/sass/vendors/plugins/_quill.scss index e9c9814..ceab78c 100644 --- a/resources/_keenthemes/src/sass/vendors/plugins/_quill.scss +++ b/resources/_keenthemes/src/sass/vendors/plugins/_quill.scss @@ -38,8 +38,19 @@ } } +.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg { + right: 0; + + [direction="rtl"] &, + [dir="rtl"] & { + left: 0; + right: auto; + } +} + .ql-editor { color: var(--#{$prefix}input-color); + text-align: initial; &.ql-blank { &:before { diff --git a/resources/_keenthemes/src/sass/vendors/plugins/_select2.scss b/resources/_keenthemes/src/sass/vendors/plugins/_select2.scss index 1cd1371..6670b93 100644 --- a/resources/_keenthemes/src/sass/vendors/plugins/_select2.scss +++ b/resources/_keenthemes/src/sass/vendors/plugins/_select2.scss @@ -39,7 +39,7 @@ $select2-input-padding-y-lg: $input-padding-y-lg - $select2-tag-padding-y-lg * 2 .select2-container--bootstrap5 { // Selection .select2-selection { - box-shadow: none !important; + box-shadow: none; height: auto; outline: none !important; } @@ -75,6 +75,8 @@ $select2-input-padding-y-lg: $input-padding-y-lg - $select2-tag-padding-y-lg * 2 // Search .select2-search.select2-search--inline { + flex-grow: 1; + .select2-search__field { color: $input-color; @include placeholder($input-placeholder-color); @@ -317,7 +319,7 @@ $select2-input-padding-y-lg: $input-padding-y-lg - $select2-tag-padding-y-lg * 2 } // Options - .select2-results__options { + .select2-results > .select2-results__options { max-height: 250px; overflow-y: auto; } diff --git a/resources/_keenthemes/src/sass/vendors/plugins/_tiny-slider.scss b/resources/_keenthemes/src/sass/vendors/plugins/_tiny-slider.scss index 6270618..9fc8de6 100644 --- a/resources/_keenthemes/src/sass/vendors/plugins/_tiny-slider.scss +++ b/resources/_keenthemes/src/sass/vendors/plugins/_tiny-slider.scss @@ -105,6 +105,31 @@ margin: 0; } } + + &.tns-circle-nav { + .tns-nav { + display: flex; + justify-content: center; + align-items: center; + padding-top: 1.5rem; + padding-bottom: 1.5rem; + + button { + display: block; + outline: none; + width: 1.15rem; + height: 1.15rem; + background-color: var(--#{$prefix}gray-200); + margin: 0 0.55rem; + border: 0; + @include border-radius(50%); + + &.tns-nav-active{ + background-color: var(--#{$prefix}gray-400); + } + } + } + } } diff --git a/resources/_keenthemes/tools/gulp.config.js b/resources/_keenthemes/tools/gulp.config.js index ce98080..89637da 100644 --- a/resources/_keenthemes/tools/gulp.config.js +++ b/resources/_keenthemes/tools/gulp.config.js @@ -1,7 +1,7 @@ const gulpConfig = { - name: "metronic", + name: "{theme}", desc: "Gulp build config", - version: "8.1.8", + version: "{version}", config: { debug: false, compile: { @@ -23,11 +23,11 @@ const gulpConfig = { cssSourcemaps: false, }, path: { - src: "../src", - common_src: "../src", + src: "../src/{theme}/{demo}", + common_src: "../src/{theme}/{demo}", node_modules: "node_modules", }, - dist: ["../../../public/assets"], + dist: ["../../../themes/{theme}/html/assets"], }, build: { base: { @@ -94,11 +94,11 @@ const gulpConfig = { styles: [ "{$config.path.node_modules}/@eonasdan/tempus-dominus/dist/css/tempus-dominus.min.css", ], - scripts: [ + scripts: [ "{$config.path.node_modules}/@eonasdan/tempus-dominus/dist/js/tempus-dominus.min.js", "{$config.path.common_src}/js/vendors/plugins/tempus-dominus.init.js", "{$config.path.node_modules}/@eonasdan/tempus-dominus/dist/locales/de.js", - "{$config.path.node_modules}/@eonasdan/tempus-dominus/dist/plugins/customDateFormat.js", + "{$config.path.node_modules}/@eonasdan/tempus-dominus/dist/plugins/customDateFormat.js", ], }, flatpickr: { @@ -112,12 +112,13 @@ const gulpConfig = { }, formvalidation: { styles: [ - "{$config.path.common_src}/plugins/formvalidation/dist/css/formValidation.css", + "{$config.path.common_src}/plugins/@form-validation/umd/styles/index.css", ], scripts: [ "{$config.path.node_modules}/es6-shim/es6-shim.js", - "{$config.path.common_src}/plugins/formvalidation/dist/js/FormValidation.full.min.js", - "{$config.path.common_src}/plugins/formvalidation/dist/js/plugins/Bootstrap5.min.js" + "{$config.path.common_src}/plugins/@form-validation/umd/bundle/popular.min.js", + "{$config.path.common_src}/plugins/@form-validation/umd/bundle/full.min.js", + "{$config.path.common_src}/plugins/@form-validation/umd/plugin-bootstrap5/index.min.js" ], }, bootstrapmaxlength: { @@ -210,7 +211,7 @@ const gulpConfig = { ], }, chartjs: { - scripts: ["{$config.path.node_modules}/chart.js/dist/chart.js"], + scripts: ["{$config.path.node_modules}/chart.js/dist/chart.umd.js"], }, countupjs: { scripts: [ @@ -279,17 +280,7 @@ const gulpConfig = { draggable: { src: { scripts: [ - "{$config.path.node_modules}/@shopify/draggable/lib/draggable.bundle.js", - "{$config.path.node_modules}/@shopify/draggable/lib/draggable.bundle.legacy.js", - "{$config.path.node_modules}/@shopify/draggable/lib/draggable.js", - "{$config.path.node_modules}/@shopify/draggable/lib/sortable.js", - "{$config.path.node_modules}/@shopify/draggable/lib/droppable.js", - "{$config.path.node_modules}/@shopify/draggable/lib/swappable.js", - "{$config.path.node_modules}/@shopify/draggable/lib/plugins.js", - "{$config.path.node_modules}/@shopify/draggable/lib/plugins/collidable.js", - "{$config.path.node_modules}/@shopify/draggable/lib/plugins/resize-mirror.js", - "{$config.path.node_modules}/@shopify/draggable/lib/plugins/snappable.js", - "{$config.path.node_modules}/@shopify/draggable/lib/plugins/swap-animation.js", + "{$config.path.node_modules}/@shopify/draggable/build/umd/index.min.js", ], }, dist: { @@ -367,7 +358,7 @@ const gulpConfig = { "{$config.path.node_modules}/datatables.net-select-bs5/js/dataTables.bootstrap5.js", "{$config.path.node_modules}/datatables.net-datetime/dist/dataTables.dateTime.min.js", "{$config.path.node_modules}/datatables.net-plugins/features/conditionalPaging/dataTables.conditionalPaging.js", - ] + ], }, dist: { styles: "{$config.dist}/plugins/custom/datatables/datatables.bundle.css", @@ -403,7 +394,7 @@ const gulpConfig = { }, typedjs: { src: { - scripts: ["{$config.path.node_modules}/typed.js/lib/typed.js"], + scripts: ["{$config.path.node_modules}/typed.js/dist/typed.umd.js"], }, dist: { scripts: "{$config.dist}/plugins/custom/typedjs/typedjs.bundle.js", @@ -634,13 +625,9 @@ const gulpConfig = { styles: [ "{$config.path.node_modules}/tinymce/skins/**/*.css" ], - media: [ - "{$config.path.node_modules}/tiny-slider/dist/sourcemaps/tiny-slider.css.map", - ], }, dist: { styles: "{$config.dist}/plugins/custom/tinymce/skins/", - media: "{$config.dist}/plugins/global/sourcemaps/", } } } diff --git a/resources/_keenthemes/tools/gulp/compile.js b/resources/_keenthemes/tools/gulp/compile.js index c10330a..3ec65d3 100644 --- a/resources/_keenthemes/tools/gulp/compile.js +++ b/resources/_keenthemes/tools/gulp/compile.js @@ -67,13 +67,12 @@ let docsOption = Object.keys(argv).find((value) => { return value.indexOf('docs-') !== -1; }); if (typeof docsOption !== 'undefined') { - var l = docsOption.split('-'); - theme = l[1]; + theme = docsOption.replace('docs-', ''); if (theme === 'asp') { theme += '.net-core' } build.config.path.src = '../../../themes/docs/{theme}/src'; - build.config.dist = ['../../../themes/docs/{theme}/dist/assets']; + build.config.dist = ['../../../themes/docs/{theme}/assets']; } diff --git a/resources/_keenthemes/tools/gulp/helpers.js b/resources/_keenthemes/tools/gulp/helpers.js index d50d856..130f008 100644 --- a/resources/_keenthemes/tools/gulp/helpers.js +++ b/resources/_keenthemes/tools/gulp/helpers.js @@ -13,7 +13,7 @@ import rtlcss from "gulp-rtlcss"; import cleancss from "gulp-clean-css"; import yargs from "yargs"; import {hideBin} from 'yargs/helpers' -import glob from "glob"; +import {glob} from "glob"; import {fileURLToPath} from 'url'; import {build} from "./build.js"; @@ -104,14 +104,19 @@ const jsChannel = () => { .pipe(() => { return gulpif( jsSourcemaps, - sourcemaps.init({ loadMaps: true, debug: config.debug }) + sourcemaps.init({ loadMaps: true, debug: config.debug }), + sourcemaps.init({ loadMaps: true, debug: config.debug }), ); }) .pipe(() => { return gulpif(jsMinify, terser()); }) .pipe(() => { - return gulpif(jsSourcemaps, sourcemaps.write("./")); + return gulpif( + jsSourcemaps, + sourcemaps.write("./"), + sourcemaps.write(null, {addComment: false}) + ); }); }; @@ -557,6 +562,7 @@ const bundle = (bundle) => { break; + case "media": case "fonts": case "images": if (bundle.dist.hasOwnProperty(type)) { diff --git a/resources/_keenthemes/tools/package.json b/resources/_keenthemes/tools/package.json index 781e5d7..1fcad4e 100644 --- a/resources/_keenthemes/tools/package.json +++ b/resources/_keenthemes/tools/package.json @@ -2,140 +2,136 @@ "name": "keenthemes", "version": "1.0.0", "author": "Keenthemes", - "license": "ISC", "homepage": "https://keenthemes.com/", "description": "Packages used by yarn, npm, gulp and webpack", "main": "gulpfile.js", "type": "module", "dependencies": { - "@ckeditor/ckeditor5-alignment": "^35.2.1", - "@ckeditor/ckeditor5-build-balloon": "^35.2.1", - "@ckeditor/ckeditor5-build-balloon-block": "^35.2.1", - "@ckeditor/ckeditor5-build-classic": "^35.2.1", - "@ckeditor/ckeditor5-build-decoupled-document": "^35.2.1", - "@ckeditor/ckeditor5-build-inline": "^35.2.1", - "@eonasdan/tempus-dominus": "^6.2.10", - "@fortawesome/fontawesome-free": "^6.1.1", - "@popperjs/core": "2.11.6", - "@shopify/draggable": "^1.0.0-beta.12", - "@yaireo/tagify": "^4.9.2", - "acorn": "^8.0.4", - "apexcharts": "3.36.0", - "autosize": "^5.0.1", - "axios": "^0.21.1", - "bootstrap": "5.3.0-alpha1", - "bootstrap-cookie-alert": "^1.2.1", + "@ckeditor/ckeditor5-alignment": "40.2.0", + "@ckeditor/ckeditor5-build-balloon": "40.2.0", + "@ckeditor/ckeditor5-build-balloon-block": "40.2.0", + "@ckeditor/ckeditor5-build-classic": "40.2.0", + "@ckeditor/ckeditor5-build-decoupled-document": "40.2.0", + "@ckeditor/ckeditor5-build-inline": "40.2.0", + "@eonasdan/tempus-dominus": "^6.9.4", + "@fortawesome/fontawesome-free": "^6.5.1", + "@popperjs/core": "2.11.8", + "@shopify/draggable": "^1.1.3", + "@yaireo/tagify": "^4.17.9", + "acorn": "^8.10.0", + "apexcharts": "3.45.1", + "autosize": "^6.0.1", + "axios": "^1.6.2", + "bootstrap": "5.3.2", + "bootstrap-cookie-alert": "^1.2.2", "bootstrap-daterangepicker": "^3.1.0", - "bootstrap-icons": "^1.10.0", + "bootstrap-icons": "^1.11.2", "bootstrap-maxlength": "^1.10.1", "bootstrap-multiselectsplitter": "^1.0.4", - "chalk": "^4.1.0", - "chart.js": "^3.6.0", - "clipboard": "^2.0.8", - "countup.js": "^2.0.7", - "cropperjs": "^1.5.12", - "datatables.net": "^1.12.1", - "datatables.net-bs5": "^1.12.1", - "datatables.net-buttons": "^2.2.3", - "datatables.net-buttons-bs5": "^2.2.3", - "datatables.net-colreorder": "^1.5.6", - "datatables.net-colreorder-bs5": "^1.5.6", - "datatables.net-datetime": "^1.1.2", - "datatables.net-fixedcolumns": "^4.1.0", - "datatables.net-fixedcolumns-bs5": "^4.1.0", - "datatables.net-fixedheader": "^3.2.3", - "datatables.net-fixedheader-bs5": "^3.2.3", - "datatables.net-plugins": "^1.11.5", - "datatables.net-responsive": "^2.3.0", - "datatables.net-responsive-bs5": "^2.3.0", - "datatables.net-rowgroup": "^1.2.0", - "datatables.net-rowgroup-bs5": "^1.2.0", - "datatables.net-rowreorder": "^1.2.8", - "datatables.net-rowreorder-bs5": "^1.2.8", - "datatables.net-scroller": "^2.0.6", - "datatables.net-scroller-bs5": "^2.0.6", - "datatables.net-select": "^1.4.0", - "datatables.net-select-bs5": "^1.4.0", - "dropzone": "^5.9.2", + "chalk": "^5.3.0", + "chart.js": "^4.4.1", + "clipboard": "^2.0.11", + "countup.js": "^2.8.0", + "cropperjs": "^1.6.1", + "datatables.net": "^1.13.8", + "datatables.net-bs5": "^1.13.8", + "datatables.net-buttons": "^2.4.2", + "datatables.net-buttons-bs5": "^2.4.2", + "datatables.net-colreorder": "^1.7.0", + "datatables.net-colreorder-bs5": "^1.7.0", + "datatables.net-datetime": "^1.5.0", + "datatables.net-fixedcolumns": "^4.3.0", + "datatables.net-fixedcolumns-bs5": "^4.3.0", + "datatables.net-fixedheader": "^3.4.0", + "datatables.net-fixedheader-bs5": "^3.4.0", + "datatables.net-plugins": "^1.13.6", + "datatables.net-responsive": "^2.5.0", + "datatables.net-responsive-bs5": "^2.5.0", + "datatables.net-rowgroup": "^1.4.1", + "datatables.net-rowgroup-bs5": "^1.4.1", + "datatables.net-rowreorder": "^1.4.1", + "datatables.net-rowreorder-bs5": "^1.4.1", + "datatables.net-scroller": "^2.3.0", + "datatables.net-scroller-bs5": "^2.3.0", + "datatables.net-select": "^1.7.0", + "datatables.net-select-bs5": "^1.7.0", + "dropzone": "^5.9.3", "es6-promise": "^4.2.8", "es6-promise-polyfill": "^1.2.0", - "es6-shim": "^0.35.5", - "esri-leaflet": "^3.0.2", - "esri-leaflet-geocoder": "^3.0.0", - "flatpickr": "^4.6.9", - "flot": "^4.2.2", - "fslightbox": "^3.3.0-2", + "es6-shim": "^0.35.8", + "esri-leaflet": "^3.0.12", + "esri-leaflet-geocoder": "^3.1.4", + "flatpickr": "^4.6.13", + "flot": "^4.2.6", + "fslightbox": "^3.4.1", "fullcalendar": "^5.8.0", - "handlebars": "^4.7.7", - "inputmask": "^5.0.6", + "handlebars": "^4.7.8", + "inputmask": "^5.0.8", "jkanban": "^1.3.1", - "jquery": "3.6.0", + "jquery": "3.7.1", "jquery.repeater": "^1.2.1", - "jstree": "^3.3.11", - "jszip": "^3.6.0", - "leaflet": "^1.7.1", + "jstree": "^3.3.16", + "jszip": "^3.10.1", + "leaflet": "^1.9.4", "line-awesome": "^1.3.0", "lozad": "^1.16.0", - "moment": "^2.29.1", - "nouislider": "^15.2.0", - "npm": "^7.19.1", - "pdfmake": "^0.2.0", - "prism-themes": "^1.7.0", - "prismjs": "^1.24.1", + "moment": "^2.29.4", + "nouislider": "^15.7.1", + "npm": "^10.2.5", + "pdfmake": "^0.2.8", + "prism-themes": "^1.9.0", + "prismjs": "^1.29.0", "quill": "^1.3.7", "select2": "^4.1.0-rc.0", "smooth-scroll": "^16.1.3", "sweetalert2": "11.4.8", - "tiny-slider": "^2.9.3", + "tiny-slider": "^2.9.4", "tinymce": "^5.8.2", "toastr": "^2.1.4", - "typed.js": "2.0.12", - "vis-timeline": "^7.4.9", + "typed.js": "2.1.0", + "vis-timeline": "^7.7.3", "wnumb": "^1.2.0" }, "devDependencies": { - "@babel/core": "^7.13.14", - "@babel/plugin-transform-modules-commonjs": "^7.13.8", - "@babel/preset-env": "^7.13.12", - "@babel/register": "^7.13.14", - "copy-webpack-plugin": "^8.1.0", - "css-loader": "^5.2.0", - "css-minimizer-webpack-plugin": "^1.3.0", - "del": "^6.0.0", + "@babel/core": "^7.23.0", + "@babel/runtime": "^7.23.1", + "copy-webpack-plugin": "^11.0.0", + "css-loader": "^5.2.7", + "css-minimizer-webpack-plugin": "^5.0.1", + "del": "^6.1.1", "extract-loader": "^5.1.0", "file-loader": "^6.2.0", - "fs-extra": "^10.0.0", + "fs-extra": "^11.1.1", + "glob": "^10.3.10", "gulp": "^4.0.2", "gulp-clean-css": "^4.3.0", "gulp-concat": "^2.6.1", "gulp-connect": "^5.7.0", - "gulp-dart-sass": "^1.0.2", + "gulp-dart-sass": "^1.1.0", "gulp-if": "^3.0.0", "gulp-rename": "^2.0.0", "gulp-rewrite-css": "^1.1.2", - "gulp-rtlcss": "^1.4.1", + "gulp-rtlcss": "^2.0.0", "gulp-sourcemaps": "^3.0.0", - "gulp-terser": "^2.0.1", - "imports-loader": "^1.2.0", + "gulp-terser": "^2.1.0", + "imports-loader": "^4.0.1", "lazypipe": "^1.0.2", "merge-stream": "^2.0.0", - "mini-css-extract-plugin": "^1.3.4", - "postcss-loader": "^4.0.4", - "pretty": "^2.0.0", + "mini-css-extract-plugin": "^2.7.6", + "postcss-loader": "^7.3.3", "replace-in-file-webpack-plugin": "^1.0.6", - "rtlcss-webpack-plugin": "^4.0.6", - "sass-loader": "^10.1.0", - "script-loader": "^0.7.2", - "terser-webpack-plugin": "^5.0.3", + "rtlcss-webpack-plugin": "^4.0.7", + "sass-loader": "^13.3.2", + "terser-webpack-plugin": "^5.3.9", "url-loader": "^4.1.1", - "webpack": "^5.28.0", - "webpack-cli": "^4.6.0", - "webpack-dev-server": "^3.11.2", + "webpack": "^5.88.2", + "webpack-cli": "^5.1.4", + "webpack-dev-server": "^4.15.1", "webpack-exclude-assets-plugin": "^0.1.1", + "webpack-log": "^3.0.2", "webpack-merge-and-include-globally": "^2.3.4", "webpack-messages": "^2.0.4", - "yargs": "^16.2.0", - "yarn-install": "^1.0.0" + "yargs": "^17.7.2" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1", @@ -144,4 +140,4 @@ "localhost": "webpack serve", "sync": "node sync.js" } -} \ No newline at end of file +} diff --git a/resources/mix/.DS_Store b/resources/mix/.DS_Store new file mode 100644 index 0000000..12579a1 Binary files /dev/null and b/resources/mix/.DS_Store differ diff --git a/resources/mix/common/button-ajax.js b/resources/mix/common/button-ajax.js new file mode 100644 index 0000000..43743f7 --- /dev/null +++ b/resources/mix/common/button-ajax.js @@ -0,0 +1,27 @@ +$(document).on('click', '.button-ajax', function (e) { + e.preventDefault(); + var action = $(this).data('action'); + var method = $(this).data('method'); + var csrf = $(this).data('csrf'); + var reload = $(this).data('reload'); + var redirect = $(this).data('redirect'); + + axios.request({ + url: action, + method: method, + data: { + _token: csrf + }, + }) + .then(function (response) { + console.log(response); + }) + .catch(function (error) { + console.log(error); + }) + .then(function () { + if (reload) { + window.location = redirect; + } + }); +}); diff --git a/resources/mix/custom/authentication/sign-in/uim.js b/resources/mix/custom/authentication/sign-in/uim.js new file mode 100644 index 0000000..1dbfe81 --- /dev/null +++ b/resources/mix/custom/authentication/sign-in/uim.js @@ -0,0 +1,60 @@ +"use strict"; +var KTSigninGeneral = function () { + var t, e, r; + return { + init: function () { + t = document.querySelector("#kt_sign_in_form"), e = document.querySelector("#kt_sign_in_submit"), r = FormValidation.formValidation(t, { + fields: { + email: { + validators: { + notEmpty: {message: "User ID is required"} + } + }, password: {validators: {notEmpty: {message: "The password is required"}}} + }, + plugins: { + trigger: new FormValidation.plugins.Trigger, + bootstrap: new FormValidation.plugins.Bootstrap5({ + rowSelector: ".fv-row", + eleInvalidClass: "", + eleValidClass: "" + }) + } + }), e.addEventListener("click", (function (i) { + i.preventDefault(), r.validate().then((function (r) { + "Valid" == r ? (e.setAttribute("data-kt-indicator", "on"), e.disabled = !0, axios.post(e.closest("form").getAttribute("action"), new FormData(t)).then((function (e) { + if (e) { + t.reset(); + const e = t.getAttribute("data-kt-redirect-url"); + e && (location.href = e) + } else Swal.fire({ + text: "Sorry, the email or password is incorrect, please try again.", + icon: "error", + buttonsStyling: !1, + confirmButtonText: "Ok, got it!", + customClass: {confirmButton: "btn btn-primary"} + }) + })).catch((function (t) { + Swal.fire({ + text: "Sorry, looks like there are some errors detected, please try again.", + icon: "error", + buttonsStyling: !1, + confirmButtonText: "Ok, got it!", + customClass: {confirmButton: "btn btn-primary"} + }) + })).then((() => { + e.removeAttribute("data-kt-indicator"), e.disabled = !1 + }))) : Swal.fire({ + text: "Sorry, looks like there are some errors detected, please try again.", + icon: "error", + buttonsStyling: !1, + confirmButtonText: "Ok, got it!", + customClass: {confirmButton: "btn btn-primary"} + }) + })) + })) + } + } +}(); +KTUtil.onDOMContentLoaded((function () { + KTSigninGeneral.init() +})); diff --git a/resources/mix/plugins.js b/resources/mix/plugins.js index 4135468..005f021 100644 --- a/resources/mix/plugins.js +++ b/resources/mix/plugins.js @@ -39,8 +39,9 @@ module.exports = [ 'resources/_keenthemes/src/js/vendors/plugins/select2.init.js', // FormValidation - Best premium validation library for JavaScript. Zero dependencies. Learn more: https://formvalidation.io/ - 'resources/_keenthemes/src/plugins/formvalidation/dist/js/FormValidation.full.min.js', - 'resources/_keenthemes/src/plugins/formvalidation/dist/js/plugins/Bootstrap5.min.js', + "resources/_keenthemes/src/plugins/@form-validation/umd/bundle/popular.min.js", + "resources/_keenthemes/src/plugins/@form-validation/umd/bundle/full.min.js", + "resources/_keenthemes/src/plugins/@form-validation/umd/plugin-bootstrap5/index.min.js", // Bootstrap Maxlength - This plugin integrates by default with Twitter bootstrap using badges to display the maximum length of the field where the user is inserting text: https://github.com/mimo84/bootstrap-maxlength 'node_modules/bootstrap-maxlength/src/bootstrap-maxlength.js', @@ -89,7 +90,7 @@ module.exports = [ 'node_modules/countup.js/dist/countUp.umd.js', // Chart.js - Simple yet flexible JavaScript charting for designers & developers - 'node_modules/chart.js/dist/chart.js', + 'node_modules/chart.js/dist/chart.umd.js', // Tiny slider - for all purposes, inspired by Owl Carousel. 'node_modules/tiny-slider/dist/min/tiny-slider.js', @@ -106,8 +107,3 @@ module.exports = [ 'node_modules/@eonasdan/tempus-dominus/dist/js/tempus-dominus.min.js', 'node_modules/@eonasdan/tempus-dominus/dist/plugins/customDateFormat.js', ]; - -// window.axios.defaults.headers.common = { -// 'X-Requested-With': 'XMLHttpRequest', -// 'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').getAttribute('content') -// }; diff --git a/resources/mix/plugins.scss b/resources/mix/plugins.scss index 29c0af2..f112cb7 100644 --- a/resources/mix/plugins.scss +++ b/resources/mix/plugins.scss @@ -12,7 +12,7 @@ @import "~apexcharts/dist/apexcharts.css"; // FormValidation - Best premium validation library for JavaScript. Zero dependencies. Learn more: https://formvalidation.io/ -@import "../_keenthemes/src/plugins/formvalidation/dist/css/formValidation.css"; +@import "../_keenthemes/src/plugins/@form-validation/umd/styles/index.css"; // Bootstrap Daterangepicker @import "~bootstrap-daterangepicker/daterangepicker.css"; @@ -55,9 +55,6 @@ // Tiny slider - for all purposes, inspired by Owl Carousel. @import "~tiny-slider/dist/tiny-slider.css"; -// Fonticons - The world's most popular and easiest to use icon set just got an upgrade -@import "../_keenthemes/src/plugins/fonticon/fonticon.css"; - // Keenthemes Vendors customization @import "../_keenthemes/src/sass/plugins"; diff --git a/resources/mix/scripts.js b/resources/mix/scripts.js index e322708..759d52a 100644 --- a/resources/mix/scripts.js +++ b/resources/mix/scripts.js @@ -7,4 +7,5 @@ var coreLayoutJs = glob.sync(`resources/_keenthemes/src/js/layout/*.js`) || []; module.exports = [ ...componentJs, ...coreLayoutJs, + 'resources/mix/common/button-ajax.js' ]; diff --git a/resources/mix/vendors/.DS_Store b/resources/mix/vendors/.DS_Store new file mode 100644 index 0000000..5008ddf Binary files /dev/null and b/resources/mix/vendors/.DS_Store differ diff --git a/resources/mix/vendors/datatables/datatables.bundle.js b/resources/mix/vendors/datatables/datatables.bundle.js index c69febb..4829498 100644 --- a/resources/mix/vendors/datatables/datatables.bundle.js +++ b/resources/mix/vendors/datatables/datatables.bundle.js @@ -2,7 +2,7 @@ module.exports = [ 'node_modules/datatables.net/js/jquery.dataTables.js', 'node_modules/datatables.net-bs5/js/dataTables.bootstrap5.js', - // '@/js/vendors/plugins/datatables.init.js', + 'resources/_keenthemes/src/js/vendors/plugins/datatables.init.js', 'node_modules/jszip/dist/jszip.js', 'node_modules/pdfmake/build/pdfmake.js', 'node_modules/pdfmake/build/vfs_fonts.js', diff --git a/resources/mix/vendors/draggable/draggable.bundle.js b/resources/mix/vendors/draggable/draggable.bundle.js index 3c7834c..c109d12 100644 --- a/resources/mix/vendors/draggable/draggable.bundle.js +++ b/resources/mix/vendors/draggable/draggable.bundle.js @@ -1,15 +1,5 @@ // Draggable - a lightweight, responsive, modern drag & drop library: https://shopify.github.io/draggable/ module.exports = [ - 'node_modules/@shopify/draggable/lib/draggable.bundle.js', - 'node_modules/@shopify/draggable/lib/draggable.bundle.legacy.js', - 'node_modules/@shopify/draggable/lib/draggable.js', - 'node_modules/@shopify/draggable/lib/sortable.js', - 'node_modules/@shopify/draggable/lib/droppable.js', - 'node_modules/@shopify/draggable/lib/swappable.js', - 'node_modules/@shopify/draggable/lib/plugins.js', - 'node_modules/@shopify/draggable/lib/plugins/collidable.js', - 'node_modules/@shopify/draggable/lib/plugins/resize-mirror.js', - 'node_modules/@shopify/draggable/lib/plugins/snappable.js', - 'node_modules/@shopify/draggable/lib/plugins/swap-animation.js' + 'node_modules/@shopify/draggable/build/umd', ]; diff --git a/resources/mix/vendors/formrepeater/formrepeater.bundle.js b/resources/mix/vendors/formrepeater/formrepeater.bundle.js index 3b21f5f..3c392af 100644 --- a/resources/mix/vendors/formrepeater/formrepeater.bundle.js +++ b/resources/mix/vendors/formrepeater/formrepeater.bundle.js @@ -1,5 +1,7 @@ // Form Repeater - Creates an interface to add and remove a repeatable group of input elements: https://github.com/DubFriend/jquery.repeater module.exports = [ - 'node_modules/jquery.repeater/jquery.repeater.js' + 'node_modules/jquery.repeater/src/lib.js', + 'node_modules/jquery.repeater/src/jquery.input.js', + 'node_modules/jquery.repeater/src/repeater.js', ]; diff --git a/resources/mix/vendors/fullcalendar/fullcalendar.bundle.js b/resources/mix/vendors/fullcalendar/fullcalendar.bundle.js index a2a6304..e65cf60 100644 --- a/resources/mix/vendors/fullcalendar/fullcalendar.bundle.js +++ b/resources/mix/vendors/fullcalendar/fullcalendar.bundle.js @@ -1,5 +1,4 @@ - module.exports = [ 'node_modules/fullcalendar/main.js', 'node_modules/fullcalendar/locales-all.min.js', -]; +]; \ No newline at end of file diff --git a/resources/mix/vendors/fullcalendar/fullcalendar.bundle.scss b/resources/mix/vendors/fullcalendar/fullcalendar.bundle.scss index 792cc11..6e3f31a 100644 --- a/resources/mix/vendors/fullcalendar/fullcalendar.bundle.scss +++ b/resources/mix/vendors/fullcalendar/fullcalendar.bundle.scss @@ -1 +1 @@ -@import "fullcalendar/main.min.css"; +@import "~fullcalendar/main.min.css"; \ No newline at end of file diff --git a/resources/mix/vendors/tinymce/tinymce.js b/resources/mix/vendors/tinymce/tinymce.js index 6a652b0..43d9038 100644 --- a/resources/mix/vendors/tinymce/tinymce.js +++ b/resources/mix/vendors/tinymce/tinymce.js @@ -3,7 +3,5 @@ module.exports = [ 'node_modules/tinymce/tinymce.min.js', 'node_modules/tinymce/themes/silver/theme.js', - 'node_modules/tinymce/themes/mobile/theme.js', 'node_modules/tinymce/icons/default/icons.js', - // 'node_modules/tinymce/plugins/**/plugin', ]; diff --git a/resources/mix/vendors/typedjs/typedjs.js b/resources/mix/vendors/typedjs/typedjs.js index 53296c2..904e647 100644 --- a/resources/mix/vendors/typedjs/typedjs.js +++ b/resources/mix/vendors/typedjs/typedjs.js @@ -1,5 +1,5 @@ // Typed.js is a library that types. Enter in any string, and watch it type at the speed you've set, backspace what it's typed, and begin a new sentence for however many strings you've set. module.exports = [ - 'node_modules/typed.js/lib/typed.js', + 'node_modules/typed.js/dist/typed.umd.js', ]; diff --git a/resources/views/errors/404.blade.php b/resources/views/errors/404.blade.php index 879d9a8..a13a38a 100644 --- a/resources/views/errors/404.blade.php +++ b/resources/views/errors/404.blade.php @@ -1,3 +1,3 @@ - @include('pages.system.not_found') + @include('pages/system.not_found') diff --git a/resources/views/errors/500.blade.php b/resources/views/errors/500.blade.php index 8e1ab2e..43fe841 100644 --- a/resources/views/errors/500.blade.php +++ b/resources/views/errors/500.blade.php @@ -1,3 +1,3 @@ - @include('pages.system.error') + @include('pages/system.error') diff --git a/resources/views/layout/_auth.blade.php b/resources/views/layout/_auth.blade.php index 99b9617..f4365a9 100644 --- a/resources/views/layout/_auth.blade.php +++ b/resources/views/layout/_auth.blade.php @@ -23,12 +23,8 @@
-
- Terms - - Plans - - Contact Us +
+ PT Indo Artha Teknologi © {{ date('Y') }} - Daeng Deni Mardaeni
@@ -40,32 +36,11 @@
- - - Logo - - - - + - -

- Fast, Efficient and Productive -

- - -
- In this kind of post, the blogger - - introduces a person they’ve interviewed
and provides some background information about - - the interviewee - and their
work following this is a transcript of the interview. -
-
diff --git a/resources/views/layout/master.blade.php b/resources/views/layout/master.blade.php index abc04a3..f8fca7b 100644 --- a/resources/views/layout/master.blade.php +++ b/resources/views/layout/master.blade.php @@ -1,5 +1,5 @@ - + @@ -38,12 +38,12 @@ @endforeach - @yield('styles') + @livewireStyles - + @include('partials/theme-mode/_init') @@ -67,25 +67,39 @@ {!! sprintf('', asset($path)) !!} @endforeach +@stack('scripts') -@yield('scripts') -@stack('customscript') + +@livewireScripts diff --git a/resources/views/layout/partials/header-layout/_footer.blade.php b/resources/views/layout/partials/header-layout/_footer.blade.php index 34daa56..f4bddb7 100644 --- a/resources/views/layout/partials/header-layout/_footer.blade.php +++ b/resources/views/layout/partials/header-layout/_footer.blade.php @@ -3,7 +3,7 @@
-
+
{{ date('Y') }}© Keenthemes
diff --git a/resources/views/layout/partials/header-layout/_header.blade.php b/resources/views/layout/partials/header-layout/_header.blade.php index 8db2cd3..0a73398 100644 --- a/resources/views/layout/partials/header-layout/_header.blade.php +++ b/resources/views/layout/partials/header-layout/_header.blade.php @@ -4,7 +4,7 @@
diff --git a/resources/views/layout/partials/header-layout/_page-title.blade.php b/resources/views/layout/partials/header-layout/_page-title.blade.php index 1248ea5..f05e777 100644 --- a/resources/views/layout/partials/header-layout/_page-title.blade.php +++ b/resources/views/layout/partials/header-layout/_page-title.blade.php @@ -1,24 +1,12 @@
-

Multipurpose

+

+ @yield('title') +

- + @yield('breadcrumbs')
diff --git a/resources/views/layout/partials/header-layout/header/_menu/__dashboards.blade.php b/resources/views/layout/partials/header-layout/header/_menu/__dashboards.blade.php index 05c0c50..78a0226 100644 --- a/resources/views/layout/partials/header-layout/header/_menu/__dashboards.blade.php +++ b/resources/views/layout/partials/header-layout/header/_menu/__dashboards.blade.php @@ -11,7 +11,7 @@