diff --git a/app/Helpers/Helper.php b/app/Helpers/Helper.php index 1ac2a90a344c..686bd5f97978 100644 --- a/app/Helpers/Helper.php +++ b/app/Helpers/Helper.php @@ -1365,7 +1365,7 @@ public static function isDemoMode() { * @param int $round Round the result to decimals (Default false - No rounding) * @return float */ - public static function convertUnit($value, $srcUnit, $dstUnit, $round=false) { + public static function convertUnit($value, string $srcUnit, $dstUnit, $round=false) { $srcFactor = static::getUnitConversionFactor($srcUnit); $dstFactor = static::getUnitConversionFactor($dstUnit); $output = $value * $srcFactor / $dstFactor; diff --git a/app/Http/Controllers/Api/LabelsController.php b/app/Http/Controllers/Api/LabelsController.php index 126fe99438a1..6307e6081670 100644 --- a/app/Http/Controllers/Api/LabelsController.php +++ b/app/Http/Controllers/Api/LabelsController.php @@ -6,6 +6,7 @@ use App\Http\Controllers\Controller; use App\Http\Transformers\LabelsTransformer; use App\Models\Labels\Label; +use App\Models\LabelTemplate; use Illuminate\Http\Request; use Illuminate\Support\ItemNotFoundException; use Illuminate\Support\Facades\Auth; @@ -22,13 +23,11 @@ public function index(Request $request) { $this->authorize('view', Label::class); - $labels = Label::find(); + $labels = LabelTemplate::query(); if ($request->filled('search')) { $search = $request->get('search'); - $labels = $labels->filter(function ($label, $index) use ($search) { - return stripos($label->getName(), $search) !== false; - }); + $labels->where('name', 'LIKE', "%{$search}%"); } $total = $labels->count(); diff --git a/app/Http/Controllers/LabelsController.php b/app/Http/Controllers/LabelsController.php index 1c5715b35f52..a46ebcdf7e84 100755 --- a/app/Http/Controllers/LabelsController.php +++ b/app/Http/Controllers/LabelsController.php @@ -8,6 +8,7 @@ use App\Models\Company; use App\Models\CustomField; use App\Models\Labels\Label; +use App\Models\LabelTemplate; use App\Models\Location; use App\Models\Manufacturer; use App\Models\Setting; @@ -29,7 +30,8 @@ class LabelsController extends Controller public function show(string $labelName) { $labelName = str_replace('/', '\\', $labelName); - $template = Label::find($labelName); + $template = LabelTemplate::where('name', $labelName)->first(); + $exampleAsset = new Asset(); @@ -89,6 +91,7 @@ public function show(string $labelName) } } + return (new LabelView()) ->with('assets', collect([$exampleAsset])) ->with('settings', $settings) diff --git a/app/Http/Transformers/LabelsTransformer.php b/app/Http/Transformers/LabelsTransformer.php index 0ed5a09686fc..9ceb2ac5873b 100644 --- a/app/Http/Transformers/LabelsTransformer.php +++ b/app/Http/Transformers/LabelsTransformer.php @@ -6,63 +6,66 @@ use App\Models\Labels\Label; use App\Models\Labels\Sheet; use App\Models\Labels\RectangleSheet; +use App\Models\LabelTemplate; use Illuminate\Support\Collection; class LabelsTransformer { - public function transformLabels(Collection $labels, $total) + public function transformLabels() { + $label_templates = LabelTemplate::all(); + $total = count($label_templates); $array = []; - foreach ($labels as $label) { - $array[] = self::transformLabel($label); + foreach ($label_templates as $label_template) { + $array[] = self::transformLabel($label_template); } return (new DatatablesTransformer)->transformDatatables($array, $total); } - public function transformLabel(Label $label) + public function transformLabel(LabelTemplate $label) { $array = [ - 'name' => $label->getName(), - 'unit' => $label->getUnit(), + 'name' => $label->name, + 'unit' => $label->measurement_unit, - 'width' => number_format($label->getWidth(), 2), - 'height' => number_format($label->getHeight(), 2), + 'width' => $label->label_width ? number_format($label->label_width, 3) : number_format($label->tape_width, 3), + 'height' => $label->label_height ? number_format($label->label_height, 3) : number_format($label->tape_height, 3), - 'margin_top' => $label->getMarginTop(), - 'margin_bottom' => $label->getMarginBottom(), - 'margin_left' => $label->getMarginLeft(), - 'margin_right' => $label->getMarginRight(), + 'margin_top' => $label->margin_top, + 'margin_bottom' => $label->margin_bottom, + 'margin_left' => $label->margin_left, + 'margin_right' => $label->margin_right, - 'support_asset_tag' => $label->getSupportAssetTag(), - 'support_1d_barcode' => $label->getSupport1DBarcode(), - 'support_2d_barcode' => $label->getSupport2DBarcode(), - 'support_fields' => $label->getSupportFields(), - 'support_logo' => $label->getSupportLogo(), - 'support_title' => $label->getSupportTitle(), + 'tag_option' => $label->tag_option, + 'one_d_barcode_option' => $label->one_d_barcode_option, + 'two_d_barcode_option' => $label->two_d_barcode_option, + 'fields_supported' => $label->fields_supported, + 'logo_option' => $label->logo_option, + 'title_option' => $label->title_option, ]; - if ($label instanceof Sheet) { + if (strpos($label->label_type, 'Sheet') !== false) { $array['sheet_info'] = [ - 'label_width' => $label->getLabelWidth(), - 'label_height' => $label->getLabelHeight(), + 'label_width' => $label->label_width, + 'label_height' => $label->label_height, - 'label_margin_top' => $label->getLabelMarginTop(), - 'label_margin_bottom' => $label->getLabelMarginBottom(), - 'label_margin_left' => $label->getLabelMarginLeft(), - 'label_margin_right' => $label->getLabelMarginRight(), + 'label_margin_top' => $label->margin_top, + 'label_margin_bottom' => $label->margin_bottom, + 'label_margin_left' => $label->margin_left, + 'label_margin_right' => $label->margin_right, - 'labels_per_page' => $label->getLabelsPerPage(), - 'label_border' => $label->getLabelBorder(), + 'labels_per_page' => $label->labelsPerPage(), + 'label_border' => $label->LabelBorder(), ]; } - if ($label instanceof RectangleSheet) { + if (strpos($label->label_type, 'Rectangle') !== false) { $array['rectanglesheet_info'] = [ - 'columns' => $label->getColumns(), - 'rows' => $label->getRows(), - 'column_spacing' => $label->getLabelColumnSpacing(), - 'row_spacing' => $label->getLabelRowSpacing(), + 'columns' => $label->columns(), + 'rows' => $label->rows(), + 'column_spacing' => $label->columnSpacing(), + 'row_spacing' => $label->rowSpacing(), ]; } diff --git a/app/Models/LabelTemplate.php b/app/Models/LabelTemplate.php new file mode 100644 index 000000000000..505d61708c2f --- /dev/null +++ b/app/Models/LabelTemplate.php @@ -0,0 +1,266 @@ + 'required|string|max:255', + 'page_format' => 'string', + 'page_orientation' => 'string', + 'column1_x' => 'numeric|lt:column2_x', + 'column2_x' => 'numeric|gt:column1_x', + 'row1_y' => 'nullable|numeric', + 'row2_y' => 'nullable|numeric|gt:row1_y', + 'label_width' => 'numeric', + 'label_border' => 'numeric', + 'label_height' => 'numeric', + 'barcode_size' => 'nullable|numeric', + 'barcode_margin' => 'nullable|numeric', + 'title_size' => 'nullable|numeric', + 'title_margin' => 'nullable|numeric', + 'title_align' => 'string', + 'field_size' => 'nullable|numeric', + 'field_margin' => 'nullable|numeric', + 'label_size' => 'nullable|numeric', + 'label_margin' => 'nullable|numeric', + 'logo_max_width' => 'nullable|numeric', + 'logo_margin' => 'nullable|numeric', + 'measurement_unit' => 'required|string', + 'margin_top' => 'nullable|numeric', + 'margin_bottom' => 'nullable|numeric', + 'margin_left' => 'nullable|numeric', + 'margin_right' => 'nullable|numeric', + 'fields_supported' => 'nullable|integer', + 'tag_align' => 'nullable|string', + 'tag_option' => 'nullable|boolean', + 'tag_position' => 'nullable|string', + 'tag_size' => 'nullable|numeric', + 'one_d_barcode_option' => 'nullable|boolean', + 'two_d_barcode_option' => 'nullable|boolean', + 'logo_option' => 'nullable|boolean', + 'title_option' => 'nullable|boolean', + 'tape_height' => 'nullable|numeric', + 'tape_width' => 'nullable|numeric', + 'tape_margin_sides' => 'nullable|numeric', + 'tape_margin_ends' => 'nullable|numeric', + 'tape_text_size_mod' => 'nullable|numeric', + 'columns' => 'required|integer', + 'rows' => 'required|integer', + ]; + + protected $fillable = [ + 'name', + 'page_format', + 'page_orientation', + 'column1_x', + 'column2_x', + 'row1_y', + 'row2_y', + 'label_width', + 'label_height', + 'label_border', + 'barcode_size', + 'barcode_margin', + 'title_align', + 'title_size', + 'title_margin', + 'field_size', + 'field_margin', + 'label_size', + 'label_margin', + 'tag_size', + 'logo_max_width', + 'logo_margin', + 'measurement_unit', + 'margin_top', + 'margin_bottom', + 'margin_left', + 'margin_right', + 'fields_supported', + 'tag_option', + 'tag_position', + 'tag_align', + 'one_d_barcode_option', + 'two_d_barcode_option', + 'logo_option', + 'title_option', + 'tape_height', + 'tape_width', + 'tape_margin_sides', + 'tape_margin_ends', + 'tape_text_size_mod', + 'columns', + 'rows' + ]; + + public function labelsPerPage() { + + return $this->columns * $this->rows; + } + public function labelBorder() { + + return $this->label_border; + } + + public function getlabelPosition($index) { + $printIndex = $index + $this->label_index; + $row = (int)($printIndex / $this->columns); + + $col = $printIndex - ($row * $this->columns); + $x = $this->margin_left + (($this->label_Width() + $this->columnSpacing()) * $col); + $y = $this->margin_top + (( $this->label_Height() + $this->rowSpacing()) * $row); + return [ $x, $y ]; + } + public function columns() { + return $this->columns; + } + public function rows() { + return $this->rows; + } + public function labelRowSpacing(){ + + } + public function LabelColumnSpacing(){ + + } + /** + * Get the paper size in the specified format and orientation. + * + * @return object [width, height] based on the page format, orientation, and measurement unit . + */ + public function paperSize(){ + return static::fromFormat($this->page_format, $this->page_orientation, $this->measurement_unit, 2); + } + + /** + * Get the spacing between columns in points. + * + * @return float The column spacing in points. + */ + public function columnSpacing() + { + $columnSpacingPT = ($this->column2_x - $this->column1_x - $this->label_Width()); + return Helper::convertUnit($columnSpacingPT, 'pt', $this->measurement_unit); + + } + + /** + * Get the spacing between rows in points. + * + * @return float The row spacing in points. + */ + public function rowSpacing() { + $rowSpacingPT = ($this->row2_y - $this->row1_y - $this->label_Height()); + return Helper::convertUnit($rowSpacingPT, 'pt', $this->measurement_unit); + } + + public function labelIndexOffset() { + return 0; + } + + + /** + * Get the label width in points. + * + * @return float The label width in points. + */ + public function label_Width() + { + + if (isset($this->label_width)) { + return Helper::convertUnit($this->label_width, 'pt', $this->measurement_unit); + } + + return Helper::convertUnit($this->tape_width, 'pt', $this->measurement_unit); + + } + + /** + * Get the label height in points. + * + * @return float The label height in points. + */ + public function label_Height(): float + { + if (isset($this->label_height)) { + return Helper::convertUnit($this->label_height, 'pt', $this->measurement_unit); + } + + return Helper::convertUnit($this->tape_height, 'pt', $this->measurement_unit); + } + + /** + * Get the left margin in points. + * + * @return float The left margin in points. + */ + public function margin_Left(): float + { + return Helper::convertUnit($this->column1_x, 'pt', $this->measurement_unit); + } + + /** + * Get the top margin in points. + * + * @return float The top margin in points. + */ + public function margin_Top(): float + { + return Helper::convertUnit($this->row1_y, 'pt', $this->measurement_unit); + } + /** + * Public Static Functions + */ + + /** + * Find size of a page by its format. + * + * @param string $format Format name (eg: 'A4', 'LETTER', etc.) + * @param string $orientation 'L' for Landscape, 'P' for Portrait ('L' default) + * @param string $unit Unit of measure to return in ('mm' default) + * + * @return object (object)[ 'width' => (float)123.4, 'height' => (float)123.4 ] + */ + public static function fromFormat($format, $orientation='L', $unit='mm', $round=false) { + $size = collect(TCPDF_STATIC::getPageSizeFromFormat(strtoupper($format))) + ->sort() + ->map(function ($value) use ($unit) { + return Helper::convertUnit($value, 'pt', $unit); + }) + ->toArray(); + $width = ($orientation == 'L') ? $size[1] : $size[0]; + $height = ($orientation == 'L') ? $size[0] : $size[1]; + return (object)[ + 'width' => ($round !== false) ? round($width, $round) : $width, + 'height' => ($round !== false) ? round($height, $round) : $height, + ]; + } + + /** + * Returns the label's orientation as a string. + * 'L' = Landscape + * 'P' = Portrait + * + * @return string + */ + public function getOrientation(): string { + if (!empty($this->label_width) && !empty($this->label_height)) { + return ($this->label_width >= $this->label_height) ? 'L' : 'P'; + } + else{ + return ($this->tape_width >= $this->tape_height) ? 'L' : 'P'; + } + } + +} \ No newline at end of file diff --git a/app/Models/Labels/Label.php b/app/Models/Labels/Label.php index 8ea92d2e42bd..a8281bc4ddae 100644 --- a/app/Models/Labels/Label.php +++ b/app/Models/Labels/Label.php @@ -155,7 +155,12 @@ public final function getName() { * @return string */ public final function getOrientation() { - return ($this->getWidth() >= $this->getHeight()) ? 'L' : 'P'; + if (!empty($this->label_width) && !empty($this->label_height)) { + return ($this->label_width >= $this->label_height) ? 'L' : 'P'; + } + else{ + return ($this->tape_width >= $this->tape_height) ? 'L' : 'P'; + } } /** diff --git a/app/Models/Labels/LabelWriter.php b/app/Models/Labels/LabelWriter.php new file mode 100644 index 000000000000..8590a3e504dc --- /dev/null +++ b/app/Models/Labels/LabelWriter.php @@ -0,0 +1,441 @@ +label_type, 'Sheet') !== false) { + $prevPageNumber = -1; + + foreach ($data->toArray() as $recordIndex => $record) { + + $pageNumber = (int)($recordIndex / $label->labelsPerPage()); + if ($pageNumber != $prevPageNumber) { + $pdf->AddPage(); + $prevPageNumber = $pageNumber; + } + + $pageIndex = $recordIndex - ($label->labelsPerPage() * $pageNumber); + $position = $label->getlabelPosition($pageIndex); + + $pdf->StartTemplate(); + $this->write($pdf, $data->get($recordIndex), $label); + $template = $pdf->EndTemplate(); + + $pdf->printTemplate($template, $position[0], $position[1]); + + if ($label->label_border) { + $prevLineWidth = $pdf->GetLineWidth(); + + $borderThickness = $label->label_border; + $borderOffset = $borderThickness / 2; + $borderX = $position[0]- $borderOffset; + $borderY = $position[1] - $borderOffset; + $borderW = $label->label_Width() + $borderThickness; + $borderH = $label->label_Height() + $borderThickness; + + $pdf->setLineWidth($borderThickness); + $pdf->Rect($borderX, $borderY, $borderW, $borderH); + $pdf->setLineWidth($prevLineWidth); + } + } + }else { + $data->each(function ($record, $index) use ($label, $pdf) { + $pdf->AddPage(); + $this->write($pdf, $record, $label); + }); + } + } + /** + * Write the label information to the PDF. + * + * @param TCPDF $pdf The PDF object to write to. + * @param object $record The record containing the data to write on the label. + * + * @return void + */ + public function write(TCPDF $pdf, object $record, $template) + { + $pa = $this->getLabelPrintableArea($template); + $currentX = $pa->x1; + $currentY = $pa->y1; + $usableWidth = $pa->w; + $usableHeight = $pa->h; + if ($record->has('barcode1d')) { + $this->write1DBarcode( + $pdf, $record->get('barcode1d')->content, $record->get('barcode1d')->type, + $pa->x1, $pa->y2 - $template->barcode_size, + $pa->w, $template->barcode_size + ); + $usableHeight -= $template->barcode_size + $template->barcode_margin; + } + + if ($record->has('title')) { + $this->writeText( + $pdf, $record->get('title'), + $currentX, $currentY, + 'freesans', '', $template->title_size, $template->title_align ?? 'L', + $usableWidth, $template->title_size, true, 0 + ); + $currentY += $template->title_size + $template->title_margin; + $usableHeight -= $template->title_size + $template->title_margin; + } + + if ($record->has('barcode2d')) { + $barcodeSize = $this->options['barcode_size'] ?? $usableHeight; + $this->write2DBarcode( + $pdf, $record->get('barcode2d')->content, $record->get('barcode2d')->type, + $currentX, $currentY, + $barcodeSize, $barcodeSize + ); + $currentX += $barcodeSize + $template->barcode_margin; + $usableWidth -= $barcodeSize + $template->barcode_margin; + + if ($record->has('tag')) { + $this->writeText( + $pdf, $record->get('tag'), + $pa->x1, $pa->y2 - $template->tag_size, + 'freemono', 'b', $template->tag_size, 'C', + $barcodeSize, $template->tag_size, true, 0 + ); + } + } else if ($record->has('tag')) { + $tagPosition = $template->tag_position; + $tagY = $tagPosition === 'bottom' ? $pa->y2 - $template->tag_size : $currentY; + $this->writeText( + $pdf, $record->get('tag'), + $pa->x1, $tagY, + 'freemono', + 'b', $template->tag_size, + (string) $template->tag_align, + $usableWidth, + $template->tag_size, + true, + 0 + ); + if ($tagPosition === 'bottom') { + $currentY += $template->tag_size + $template->barcode_margin; + } + } + + + if ($record->has('logo')) { + $logoSize = $this->writeImage( + $pdf, $record->get('logo'), + $pa->x1, $pa->y1, + $template->logo_max_width, $usableHeight, + 'L', 'T', 300, true, false, 0.1 + ); + $currentX += $logoSize[0] + $template->logo_margin; + $usableWidth -= $logoSize[0] + $template->logo_margin; + } + + if ($record->has('tag')) { + $tagPosition = isset($template->tag_position) ? $template->tag_position : 'L'; + $tagY = $tagPosition === 'bottom' ? $pa->y2 - $template->tag_size : $currentY; + $this->writeText( + $pdf, $record->get('tag'), + $pa->x1, $tagY, + 'freemono', 'b', $template->tag_size, isset($template->tag_align) ? $template->tag_align : 'L', + $usableWidth, $template->tag_size, true, 0 + ); + if ($tagPosition === 'bottom') { + $currentY += $template->tag_size + $template->barcode_margin; + } + } + if ($record->has('fields')) { + foreach ($record->get('fields') as $field) { + $this->writeText( + $pdf, $field['label'], + $currentX, $currentY, + 'freesans', '', $template->label_size, 'L', + $usableWidth, $template->label_size, true, 0 + ); + $currentY += $template->label_size + $template->label_margin; + + $this->writeText( + $pdf, $field['value'], + $currentX, $currentY, + 'freemono', 'B', $template->field_size, 'C', + $usableWidth, $template->field_size, true, 0, 0.3 + ); + $currentY += $template->field_size + $template->field_margin; + } + } + + if ($record->has('tag') && isset($template->tag_position) && $template->tag_position === 'bottom') { + $this->writeText( + $pdf, $record->get('tag'), + $currentX, $pa->y2 - $template->barcode_size - $template->barcode_margin - $template->tag_size, + 'freemono', 'b', $template->tag_size, 'R', + $usableWidth, $template->tag_size, true, 0, 0.3 + ); + } + + } + + public function barcodeSize(){ + + } + /** + * Write a text cell. + * + * @param TCPDF $pdf The TCPDF instance + * @param string $text The text to write. Supports 'some **bold** text'. + * @param float $x X position of top-left + * @param float $y Y position of top-left + * @param string $font The font family + * @param string $style The font style + * @param int $size The font size in getUnit() units + * @param string $align Align text in the box. 'L' left, 'R' right, 'C' center. + * @param float $width Force text box width. NULL to auto-fit. + * @param float $height Force text box height. NULL to auto-fit. + * @param bool $squash Squash text if it's too big + * @param int $border Thickness of border. Default = 0. + * @param int $spacing Letter spacing. Default = 0. + */ + public function writeText(TCPDF $pdf, string $text, float $x,float $y, string $font=null, string $style=null, int $size=null, string $align='L', float $width=null, float $height=null, bool $squash=false, int $border=0, int $spacing=0) { + $prevFamily = $pdf->getFontFamily(); + $prevStyle = $pdf->getFontStyle(); + $prevSizePt = $pdf->getFontSizePt(); + $settings = Setting::getSettings(); + $template = LabelTemplate::where('name', '=', $settings->label2_template)->first(); + $text = !empty($text) ? $text : ''; + $fontFamily = !empty($font) ? $font : $prevFamily; + $fontStyle = !empty($style) ? $style : $prevStyle; + if ($size) $fontSizePt = Helper::convertUnit($size, $template->measurement_unit, 'pt', true); + else $fontSizePt = $prevSizePt; + +// $pdf->SetFontSpacing($spacing); + + $parts = collect(explode('**', $text)) + ->map(function ($part, $index) use ($pdf, $fontFamily, $fontStyle, $fontSizePt) { + $modStyle = ($index % 2 == 1) ? 'B' : $fontStyle; + $pdf->setFont($fontFamily, $modStyle, $fontSizePt); + return [ + 'text' => $part, + 'text_width' => $pdf->GetStringWidth($part), + 'font_family' => $fontFamily, + 'font_style' => $modStyle, + 'font_size' => $fontSizePt, + ]; + }); + + $textWidth = $parts->reduce(function ($carry, $part) { return $carry += $part['text_width']; }); + $cellWidth = !empty($width) ? $width : $textWidth; + + if ($squash && ($textWidth > 0)) { + $scaleFactor = min(1.0, $cellWidth / $textWidth); + $parts = $parts->map(function ($part, $index) use ($scaleFactor) { + $part['text_width'] = $part['text_width'] * $scaleFactor; + return $part; + }); + } + $cellHeight = !empty($height) ? $height : Helper::convertUnit($fontSizePt, 'pt', $template->measurement_unit); + + if ($border) { + $prevLineWidth = $pdf->getLineWidth(); + $pdf->setLineWidth($border); + $pdf->Rect($x, $y, $cellWidth, $cellHeight); + $pdf->setLineWidth($prevLineWidth); + } + + switch($align) { + case 'R': $startX = ($x + $cellWidth) - min($cellWidth, $textWidth); break; + case 'C': $startX = ($x + ($cellWidth / 2)) - (min($cellWidth, $textWidth) / 2); break; + case 'L': + default: $startX = $x; break; + } + + $parts->reduce(function ($currentX, $part) use ($pdf, $y, $cellHeight) { + $pdf->SetXY($currentX, $y); + $pdf->setFont($part['font_family'], $part['font_style'], $part['font_size']); + $pdf->Cell($part['text_width'], $cellHeight, $part['text'], 0, 0, '', false, '', 1, true); + return $currentX += $part['text_width']; + }, $startX); + + $pdf->SetFont($prevFamily, $prevStyle, $prevSizePt); + $pdf->SetFontSpacing(0); + } + /** + * Write an image. + * + * @param TCPDF $pdf The TCPDF instance + * @param string $image The image to write + * @param float $x X position of top-left + * @param float $y Y position of top-left + * @param float $width The container width + * @param float $height The container height + * @param string $halign Align text in the box. 'L' left, 'R' right, 'C' center. Default 'L'. + * @param string $valign Align text in the box. 'T' top, 'B' bottom, 'C' center. Default 'T'. + * @param int $dpi Pixels per inch + * @param bool $resize Resize to fit container + * @param bool $stretch Stretch (vs Scale) to fit container + * @param int $border Thickness of border. Default = 0. + * + * @return array Returns the final calculated size [w,h] + */ + public final function writeImage(TCPDF $pdf, $image, $x, $y, $template, $width=null, $height=null, $halign='L', $valign='L', $dpi=300, $resize=false, $stretch=false, $border=0) { + + if (empty($image)) return [0,0]; + + $imageInfo = getimagesize($image); + if (!$imageInfo) return [0,0]; // TODO: SVG or other + + $imageWidthPx = $imageInfo[0]; + $imageHeightPx = $imageInfo[1]; + $imageType = image_type_to_extension($imageInfo[2], false); + + $imageRatio = $imageWidthPx / $imageHeightPx; + $dpu = Helper::convertUnit($dpi, $template->measurement_unit, 'in'); + $imageWidth = $imageWidthPx / $dpu; + $imageHeight = $imageHeightPx / $dpu; + + $outputWidth = $imageWidth; + $outputHeight = $imageHeight; + + if ($resize) { + // Assign specified parameters + $limitWidth = $width; + $limitHeight = $height; + + // If not, try calculating from the other dimension + $limitWidth = ($limitWidth > 0) ? $limitWidth : ($limitHeight / $imageRatio); + $limitHeight = ($limitHeight > 0) ? $limitHeight : ($limitWidth * $imageRatio); + + // If not, just use the image size + $limitWidth = ($limitWidth > 0) ? $limitWidth : $imageWidth; + $limitHeight = ($limitHeight > 0) ? $limitHeight : $imageHeight; + + $scaleWidth = $limitWidth / $imageWidth; + $scaleHeight = $limitHeight / $imageHeight; + + // If non-stretch, make both scales factors equal + if (!$stretch) { + // Do we need to scale down at all? That's most important. + if (($scaleWidth < 1.0) || ($scaleHeight < 1.0)) { + // Choose largest scale-down + $scaleWidth = min($scaleWidth, $scaleHeight); + } else { + // Choose smallest scale-up + $scaleWidth = min(max($scaleWidth, 1.0), max($scaleHeight, 1.0)); + } + $scaleHeight = $scaleWidth; + } + + $outputWidth = $imageWidth * $scaleWidth; + $outputHeight = $imageHeight * $scaleHeight; + } + + // Container + $containerWidth = !empty($width) ? $width : $outputWidth; + $containerHeight = !empty($height) ? $height : $outputHeight; + + // Horizontal Position + switch ($halign) { + case 'R': $originX = ($x + $containerWidth) - $outputWidth; break; + case 'C': $originX = ($x + ($containerWidth / 2)) - ($outputWidth / 2); break; + case 'L': + default: $originX = $x; break; + } + + // Vertical Position + switch ($valign) { + case 'B': $originY = ($y + $containerHeight) - $outputHeight; break; + case 'C': $originY = ($y + ($containerHeight / 2)) - ($outputHeight / 2); break; + case 'T': + default: $originY = $y; break; + } + + // Actual Image + $pdf->Image($image, $originX, $originY, $outputWidth, $outputHeight, $imageType, '', '', true); + + // Border + if ($border) { + $prevLineWidth = $pdf->getLineWidth(); + $pdf->setLineWidth($border); + $pdf->Rect($x, $y, $containerWidth, $containerHeight); + $pdf->setLineWidth($prevLineWidth); + } + + return [ $outputWidth, $outputHeight ]; + } + /** + * Write a 1D barcode. + * + * @param TCPDF $pdf The TCPDF instance + * @param string $value The barcode content + * @param string $type The barcode type + * @param float $x X position of top-left + * @param float $y Y position of top-left + * @param float $width The container width + * @param float $height The container height + */ + public final function write1DBarcode(TCPDF $pdf, $value, $type, $x, $y, $width, $height) { + if (empty($value)) return; + try { + $pdf->write1DBarcode($value, $type, $x, $y, $width, $height, null, ['stretch'=>true]); + } catch (\Exception|TypeError $e) { + Log::debug('The 1D barcode ' . $value . ' is not compliant with the barcode type '. $type); + } + } + + /** + * Write a 2D barcode. + * + * @param TCPDF $pdf The TCPDF instance + * @param string $value The barcode content + * @param string $type The barcode type + * @param float $x X position of top-left + * @param float $y Y position of top-left + * @param float $width The container width + * @param float $height The container height + */ + public function write2DBarcode(TCPDF $pdf, string $value, string $type, float $x, float $y, float $width, float $height) { + if (empty($value)) return; + $pdf->write2DBarcode($value, $type, $x, $y, $width, $height, null, ['stretch'=>true]); + } + + /** + * Returns each label's printable area as an object. + * + * @return object [ 'x1'=>0.00, 'y1'=>0.00, 'x2'=>0.00, 'y2'=>0.00, 'w'=>0.00, 'h'=>0.00 ] + */ + public final function getLabelPrintableArea($template) : object + { + return (object) + [ 'x1' => $template->margin_left, + 'y1' => $template->margin_top, + 'x2' => $template->label_Width() - $template->margin_right, + 'y2' => $template->label_Height() - $template->margin_bottom, + 'w' => $template->label_Width() - $template->margin_left - $template->margin_right, + 'h' => $template->label_Height() - $template->margin_top - $template->margin_bottom, + ]; + } + + + + +} \ No newline at end of file diff --git a/app/Presenters/LabelPresenter.php b/app/Presenters/LabelPresenter.php index db919e659a12..294738455c52 100644 --- a/app/Presenters/LabelPresenter.php +++ b/app/Presenters/LabelPresenter.php @@ -42,14 +42,14 @@ public static function dataTableLayout() 'visible' => true, 'formatter' => 'labelPerPageFormatter' ], [ - 'field' => 'support_fields', + 'field' => 'fields_supported', 'searchable' => false, 'sortable' => false, 'switchable' => true, 'title' => trans('admin/labels/table.support_fields'), 'visible' => true ], [ - 'field' => 'support_asset_tag', + 'field' => 'tag_option', 'searchable' => false, 'sortable' => false, 'switchable' => true, @@ -57,7 +57,7 @@ public static function dataTableLayout() 'visible' => true, 'formatter' => 'trueFalseFormatter' ], [ - 'field' => 'support_1d_barcode', + 'field' => 'one_d_barcode_option', 'searchable' => false, 'sortable' => false, 'switchable' => true, @@ -65,7 +65,7 @@ public static function dataTableLayout() 'visible' => true, 'formatter' => 'trueFalseFormatter' ], [ - 'field' => 'support_2d_barcode', + 'field' => 'two_d_barcode_option', 'searchable' => false, 'sortable' => false, 'switchable' => true, @@ -73,7 +73,7 @@ public static function dataTableLayout() 'visible' => true, 'formatter' => 'trueFalseFormatter' ], [ - 'field' => 'support_logo', + 'field' => 'logo_option', 'searchable' => false, 'sortable' => false, 'switchable' => true, @@ -81,7 +81,7 @@ public static function dataTableLayout() 'visible' => true, 'formatter' => 'trueFalseFormatter' ], [ - 'field' => 'support_title', + 'field' => 'title_option', 'searchable' => false, 'sortable' => false, 'switchable' => true, diff --git a/app/View/Label.php b/app/View/Label.php index 3ec3a4099c60..6a49a28585f8 100644 --- a/app/View/Label.php +++ b/app/View/Label.php @@ -5,10 +5,13 @@ use App\Models\Labels\Field; use App\Models\Labels\Label as LabelModel; use App\Models\Labels\Sheet; +use App\Models\LabelTemplate; use Illuminate\Contracts\View\View; use Illuminate\Support\Collection; +use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Storage; use Illuminate\Support\Traits\Macroable; +use App\Models\Labels\LabelWriter; use TCPDF; class Label implements View @@ -38,8 +41,18 @@ public function render(callable $callback = null) $settings = $this->data->get('settings'); $assets = $this->data->get('assets'); $offset = $this->data->get('offset'); - $template = LabelModel::find($settings->label2_template); - + $template = LabelTemplate::where('name', '=', $settings->label2_template)->first(); + if ($template === null) { + // Handle the case when the template is not found + // For example, log an error, throw an exception, or return a default response + Log::error("LabelTemplate not found for name: " . $settings->label2_template); + // Optionally, you can return a view or a default response + return view('hardware/labels') + ->with('assets', $assets) + ->with('settings', $settings) + ->with('bulkedit', $this->data->get('bulkedit')) + ->with('count', $this->data->get('count')); + } // If disabled, pass to legacy view if ((!$settings->label2_enable)) { return view('hardware/labels') @@ -49,12 +62,10 @@ public function render(callable $callback = null) ->with('count', $this->data->get('count')); } - $template->validate(); - $pdf = new TCPDF( $template->getOrientation(), - $template->getUnit(), - [ $template->getWidth(), $template->getHeight() ] + $template->measurement_unit, + [ $template->labelWidth, $template->labelHeight ] ); // Reset parameters @@ -66,7 +77,7 @@ public function render(callable $callback = null) $pdf->SetCellPaddings(0, 0, 0, 0); $pdf->setCreator('Snipe-IT'); $pdf->SetSubject('Asset Labels'); - $template->preparePDF($pdf); +// $this->preparePDF($pdf); // Get fields from settings $fieldDefinitions = collect(explode(';', $settings->label2_fields)) @@ -83,12 +94,12 @@ public function render(callable $callback = null) $assetData->put('id', $asset->id); $assetData->put('tag', $asset->asset_tag); - if ($template->getSupportTitle() && !empty($settings->label2_title)) { + if ($template->title_option && !empty($settings->label2_title)) { $title = str_replace('{COMPANY}', data_get($asset, 'company.name'), $settings->label2_title); $assetData->put('title', $title); } - if ($template->getSupportLogo()) { + if ($template->logo_option) { $logo = null; @@ -106,7 +117,7 @@ public function render(callable $callback = null) } if ($settings->alt_barcode_enabled) { - if ($template->getSupport1DBarcode()) { + if ($template->one_d_barcode_option) { $barcode1DType = $settings->alt_barcode; if ($barcode1DType != 'none') { $assetData->put('barcode1d', (object)[ @@ -117,7 +128,7 @@ public function render(callable $callback = null) } } - if ($template->getSupport2DBarcode()) { + if ($template->two_d_barcode_option) { $barcode2DType = $settings->label2_2d_type; $barcode2DType = ($barcode2DType == 'default') ? $settings->barcode_type : @@ -172,15 +183,17 @@ public function render(callable $callback = null) return $toAdd ? $myFields->push($toAdd) : $myFields; }, new Collection()); - $assetData->put('fields', $fields->take($template->getSupportFields())); + $assetData->put('fields', $fields->take($template->fields_supported)); return $assetData; }); - - if ($template instanceof Sheet) { - $template->setLabelIndexOffset($offset ?? 0); + + if (strpos($template->label_type, 'Sheet') !== false){ + $template->label_index; + } - $template->writeAll($pdf, $data); + $writer = new LabelWriter(); + $writer->writeAll($pdf, $data, $template); $filename = $assets->count() > 1 ? 'assets.pdf' : $assets->first()->asset_tag.'.pdf'; $pdf->Output($filename, 'I'); diff --git a/composer.lock b/composer.lock index 9640a69e0a86..9ebe8df53e21 100644 --- a/composer.lock +++ b/composer.lock @@ -137,16 +137,16 @@ }, { "name": "aws/aws-crt-php", - "version": "v1.2.4", + "version": "v1.2.5", "source": { "type": "git", "url": "https://github.com/awslabs/aws-crt-php.git", - "reference": "eb0c6e4e142224a10b08f49ebf87f32611d162b2" + "reference": "0ea1f04ec5aa9f049f97e012d1ed63b76834a31b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/awslabs/aws-crt-php/zipball/eb0c6e4e142224a10b08f49ebf87f32611d162b2", - "reference": "eb0c6e4e142224a10b08f49ebf87f32611d162b2", + "url": "https://api.github.com/repos/awslabs/aws-crt-php/zipball/0ea1f04ec5aa9f049f97e012d1ed63b76834a31b", + "reference": "0ea1f04ec5aa9f049f97e012d1ed63b76834a31b", "shasum": "" }, "require": { @@ -185,22 +185,22 @@ ], "support": { "issues": "https://github.com/awslabs/aws-crt-php/issues", - "source": "https://github.com/awslabs/aws-crt-php/tree/v1.2.4" + "source": "https://github.com/awslabs/aws-crt-php/tree/v1.2.5" }, - "time": "2023-11-08T00:42:13+00:00" + "time": "2024-04-19T21:30:56+00:00" }, { "name": "aws/aws-sdk-php", - "version": "3.303.1", + "version": "3.314.4", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "e695623e9f6f278bed69172fddb932de3705030f" + "reference": "fd1261a60495a7aeb2661d8b7eecfd5fc16abd41" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/e695623e9f6f278bed69172fddb932de3705030f", - "reference": "e695623e9f6f278bed69172fddb932de3705030f", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/fd1261a60495a7aeb2661d8b7eecfd5fc16abd41", + "reference": "fd1261a60495a7aeb2661d8b7eecfd5fc16abd41", "shasum": "" }, "require": { @@ -280,9 +280,9 @@ "support": { "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80", "issues": "https://github.com/aws/aws-sdk-php/issues", - "source": "https://github.com/aws/aws-sdk-php/tree/3.303.1" + "source": "https://github.com/aws/aws-sdk-php/tree/3.314.4" }, - "time": "2024-04-02T18:09:38+00:00" + "time": "2024-06-18T18:13:34+00:00" }, { "name": "bacon/bacon-qr-code", @@ -340,16 +340,16 @@ }, { "name": "barryvdh/laravel-debugbar", - "version": "v3.13.0", + "version": "v3.13.5", "source": { "type": "git", "url": "https://github.com/barryvdh/laravel-debugbar.git", - "reference": "354a42f3e0b083cdd6f9da5a9d1c0c63b074547a" + "reference": "92d86be45ee54edff735e46856f64f14b6a8bb07" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/354a42f3e0b083cdd6f9da5a9d1c0c63b074547a", - "reference": "354a42f3e0b083cdd6f9da5a9d1c0c63b074547a", + "url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/92d86be45ee54edff735e46856f64f14b6a8bb07", + "reference": "92d86be45ee54edff735e46856f64f14b6a8bb07", "shasum": "" }, "require": { @@ -408,7 +408,7 @@ ], "support": { "issues": "https://github.com/barryvdh/laravel-debugbar/issues", - "source": "https://github.com/barryvdh/laravel-debugbar/tree/v3.13.0" + "source": "https://github.com/barryvdh/laravel-debugbar/tree/v3.13.5" }, "funding": [ { @@ -420,24 +420,24 @@ "type": "github" } ], - "time": "2024-04-01T16:39:30+00:00" + "time": "2024-04-12T11:20:37+00:00" }, { "name": "barryvdh/laravel-dompdf", - "version": "v2.1.1", + "version": "v2.2.0", "source": { "type": "git", "url": "https://github.com/barryvdh/laravel-dompdf.git", - "reference": "cb37868365f9b937039d316727a1fced1e87b31c" + "reference": "c96f90c97666cebec154ca1ffb67afed372114d8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-dompdf/zipball/cb37868365f9b937039d316727a1fced1e87b31c", - "reference": "cb37868365f9b937039d316727a1fced1e87b31c", + "url": "https://api.github.com/repos/barryvdh/laravel-dompdf/zipball/c96f90c97666cebec154ca1ffb67afed372114d8", + "reference": "c96f90c97666cebec154ca1ffb67afed372114d8", "shasum": "" }, "require": { - "dompdf/dompdf": "^2.0.3", + "dompdf/dompdf": "^2.0.7", "illuminate/support": "^6|^7|^8|^9|^10|^11", "php": "^7.2 || ^8.0" }, @@ -485,7 +485,7 @@ ], "support": { "issues": "https://github.com/barryvdh/laravel-dompdf/issues", - "source": "https://github.com/barryvdh/laravel-dompdf/tree/v2.1.1" + "source": "https://github.com/barryvdh/laravel-dompdf/tree/v2.2.0" }, "funding": [ { @@ -497,29 +497,29 @@ "type": "github" } ], - "time": "2024-03-15T12:48:39+00:00" + "time": "2024-04-25T13:16:04+00:00" }, { "name": "brick/math", - "version": "0.11.0", + "version": "0.12.1", "source": { "type": "git", "url": "https://github.com/brick/math.git", - "reference": "0ad82ce168c82ba30d1c01ec86116ab52f589478" + "reference": "f510c0a40911935b77b86859eb5223d58d660df1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/brick/math/zipball/0ad82ce168c82ba30d1c01ec86116ab52f589478", - "reference": "0ad82ce168c82ba30d1c01ec86116ab52f589478", + "url": "https://api.github.com/repos/brick/math/zipball/f510c0a40911935b77b86859eb5223d58d660df1", + "reference": "f510c0a40911935b77b86859eb5223d58d660df1", "shasum": "" }, "require": { - "php": "^8.0" + "php": "^8.1" }, "require-dev": { "php-coveralls/php-coveralls": "^2.2", - "phpunit/phpunit": "^9.0", - "vimeo/psalm": "5.0.0" + "phpunit/phpunit": "^10.1", + "vimeo/psalm": "5.16.0" }, "type": "library", "autoload": { @@ -539,12 +539,17 @@ "arithmetic", "bigdecimal", "bignum", + "bignumber", "brick", - "math" + "decimal", + "integer", + "math", + "mathematics", + "rational" ], "support": { "issues": "https://github.com/brick/math/issues", - "source": "https://github.com/brick/math/tree/0.11.0" + "source": "https://github.com/brick/math/tree/0.12.1" }, "funding": [ { @@ -552,7 +557,7 @@ "type": "github" } ], - "time": "2023-01-15T23:15:59+00:00" + "time": "2023-11-29T23:19:16+00:00" }, { "name": "carbonphp/carbon-doctrine-types", @@ -916,16 +921,16 @@ }, { "name": "doctrine/dbal", - "version": "3.8.3", + "version": "3.8.5", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", - "reference": "db922ba9436b7b18a23d1653a0b41ff2369ca41c" + "reference": "0e3536ba088a749985c8801105b6b3ac6c1280b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/db922ba9436b7b18a23d1653a0b41ff2369ca41c", - "reference": "db922ba9436b7b18a23d1653a0b41ff2369ca41c", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/0e3536ba088a749985c8801105b6b3ac6c1280b6", + "reference": "0e3536ba088a749985c8801105b6b3ac6c1280b6", "shasum": "" }, "require": { @@ -941,12 +946,12 @@ "doctrine/coding-standard": "12.0.0", "fig/log-test": "^1", "jetbrains/phpstorm-stubs": "2023.1", - "phpstan/phpstan": "1.10.58", - "phpstan/phpstan-strict-rules": "^1.5", - "phpunit/phpunit": "9.6.16", + "phpstan/phpstan": "1.11.1", + "phpstan/phpstan-strict-rules": "^1.6", + "phpunit/phpunit": "9.6.19", "psalm/plugin-phpunit": "0.18.4", "slevomat/coding-standard": "8.13.1", - "squizlabs/php_codesniffer": "3.9.0", + "squizlabs/php_codesniffer": "3.9.2", "symfony/cache": "^5.4|^6.0|^7.0", "symfony/console": "^4.4|^5.4|^6.0|^7.0", "vimeo/psalm": "4.30.0" @@ -1009,7 +1014,7 @@ ], "support": { "issues": "https://github.com/doctrine/dbal/issues", - "source": "https://github.com/doctrine/dbal/tree/3.8.3" + "source": "https://github.com/doctrine/dbal/tree/3.8.5" }, "funding": [ { @@ -1025,7 +1030,7 @@ "type": "tidelift" } ], - "time": "2024-03-03T15:55:06+00:00" + "time": "2024-06-08T17:49:56+00:00" }, { "name": "doctrine/deprecations", @@ -1076,16 +1081,16 @@ }, { "name": "doctrine/event-manager", - "version": "2.0.0", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/doctrine/event-manager.git", - "reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32" + "reference": "b680156fa328f1dfd874fd48c7026c41570b9c6e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/event-manager/zipball/750671534e0241a7c50ea5b43f67e23eb5c96f32", - "reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32", + "url": "https://api.github.com/repos/doctrine/event-manager/zipball/b680156fa328f1dfd874fd48c7026c41570b9c6e", + "reference": "b680156fa328f1dfd874fd48c7026c41570b9c6e", "shasum": "" }, "require": { @@ -1095,10 +1100,10 @@ "doctrine/common": "<2.9" }, "require-dev": { - "doctrine/coding-standard": "^10", + "doctrine/coding-standard": "^12", "phpstan/phpstan": "^1.8.8", - "phpunit/phpunit": "^9.5", - "vimeo/psalm": "^4.28" + "phpunit/phpunit": "^10.5", + "vimeo/psalm": "^5.24" }, "type": "library", "autoload": { @@ -1147,7 +1152,7 @@ ], "support": { "issues": "https://github.com/doctrine/event-manager/issues", - "source": "https://github.com/doctrine/event-manager/tree/2.0.0" + "source": "https://github.com/doctrine/event-manager/tree/2.0.1" }, "funding": [ { @@ -1163,7 +1168,7 @@ "type": "tidelift" } ], - "time": "2022-10-12T20:59:15+00:00" + "time": "2024-05-22T20:47:39+00:00" }, { "name": "doctrine/inflector", @@ -1405,16 +1410,16 @@ }, { "name": "dompdf/dompdf", - "version": "v2.0.4", + "version": "v2.0.8", "source": { "type": "git", "url": "https://github.com/dompdf/dompdf.git", - "reference": "093f2d9739cec57428e39ddadedfd4f3ae862c0f" + "reference": "c20247574601700e1f7c8dab39310fca1964dc52" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dompdf/dompdf/zipball/093f2d9739cec57428e39ddadedfd4f3ae862c0f", - "reference": "093f2d9739cec57428e39ddadedfd4f3ae862c0f", + "url": "https://api.github.com/repos/dompdf/dompdf/zipball/c20247574601700e1f7c8dab39310fca1964dc52", + "reference": "c20247574601700e1f7c8dab39310fca1964dc52", "shasum": "" }, "require": { @@ -1422,7 +1427,7 @@ "ext-mbstring": "*", "masterminds/html5": "^2.0", "phenx/php-font-lib": ">=0.5.4 <1.0.0", - "phenx/php-svg-lib": ">=0.3.3 <1.0.0", + "phenx/php-svg-lib": ">=0.5.2 <1.0.0", "php": "^7.1 || ^8.0" }, "require-dev": { @@ -1461,9 +1466,9 @@ "homepage": "https://github.com/dompdf/dompdf", "support": { "issues": "https://github.com/dompdf/dompdf/issues", - "source": "https://github.com/dompdf/dompdf/tree/v2.0.4" + "source": "https://github.com/dompdf/dompdf/tree/v2.0.8" }, - "time": "2023-12-12T20:19:39+00:00" + "time": "2024-04-29T13:06:17+00:00" }, { "name": "dragonmantank/cron-expression", @@ -1831,26 +1836,26 @@ }, { "name": "firebase/php-jwt", - "version": "v6.10.0", + "version": "v6.10.1", "source": { "type": "git", "url": "https://github.com/firebase/php-jwt.git", - "reference": "a49db6f0a5033aef5143295342f1c95521b075ff" + "reference": "500501c2ce893c824c801da135d02661199f60c5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/firebase/php-jwt/zipball/a49db6f0a5033aef5143295342f1c95521b075ff", - "reference": "a49db6f0a5033aef5143295342f1c95521b075ff", + "url": "https://api.github.com/repos/firebase/php-jwt/zipball/500501c2ce893c824c801da135d02661199f60c5", + "reference": "500501c2ce893c824c801da135d02661199f60c5", "shasum": "" }, "require": { - "php": "^7.4||^8.0" + "php": "^8.0" }, "require-dev": { - "guzzlehttp/guzzle": "^6.5||^7.4", + "guzzlehttp/guzzle": "^7.4", "phpspec/prophecy-phpunit": "^2.0", "phpunit/phpunit": "^9.5", - "psr/cache": "^1.0||^2.0", + "psr/cache": "^2.0||^3.0", "psr/http-client": "^1.0", "psr/http-factory": "^1.0" }, @@ -1888,9 +1893,9 @@ ], "support": { "issues": "https://github.com/firebase/php-jwt/issues", - "source": "https://github.com/firebase/php-jwt/tree/v6.10.0" + "source": "https://github.com/firebase/php-jwt/tree/v6.10.1" }, - "time": "2023-12-01T16:26:39+00:00" + "time": "2024-05-18T18:05:11+00:00" }, { "name": "fruitcake/php-cors", @@ -2670,16 +2675,16 @@ }, { "name": "laravel/framework", - "version": "v10.48.4", + "version": "v10.48.13", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "7e0701bf59cb76a51f7c1f7bea51c0c0c29c0b72" + "reference": "2c6816d697a4362c09c066118addda251b70b98a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/7e0701bf59cb76a51f7c1f7bea51c0c0c29c0b72", - "reference": "7e0701bf59cb76a51f7c1f7bea51c0c0c29c0b72", + "url": "https://api.github.com/repos/laravel/framework/zipball/2c6816d697a4362c09c066118addda251b70b98a", + "reference": "2c6816d697a4362c09c066118addda251b70b98a", "shasum": "" }, "require": { @@ -2873,7 +2878,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2024-03-21T13:36:36+00:00" + "time": "2024-06-18T16:46:35+00:00" }, { "name": "laravel/helpers", @@ -3012,16 +3017,16 @@ }, { "name": "laravel/prompts", - "version": "v0.1.17", + "version": "v0.1.24", "source": { "type": "git", "url": "https://github.com/laravel/prompts.git", - "reference": "8ee9f87f7f9eadcbe21e9e72cd4176b2f06cd5b5" + "reference": "409b0b4305273472f3754826e68f4edbd0150149" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/prompts/zipball/8ee9f87f7f9eadcbe21e9e72cd4176b2f06cd5b5", - "reference": "8ee9f87f7f9eadcbe21e9e72cd4176b2f06cd5b5", + "url": "https://api.github.com/repos/laravel/prompts/zipball/409b0b4305273472f3754826e68f4edbd0150149", + "reference": "409b0b4305273472f3754826e68f4edbd0150149", "shasum": "" }, "require": { @@ -3061,11 +3066,12 @@ "license": [ "MIT" ], + "description": "Add beautiful and user-friendly forms to your command-line applications.", "support": { "issues": "https://github.com/laravel/prompts/issues", - "source": "https://github.com/laravel/prompts/tree/v0.1.17" + "source": "https://github.com/laravel/prompts/tree/v0.1.24" }, - "time": "2024-03-13T16:05:43+00:00" + "time": "2024-06-17T13:58:22+00:00" }, { "name": "laravel/serializable-closure", @@ -3190,26 +3196,28 @@ }, { "name": "laravel/socialite", - "version": "v5.12.1", + "version": "v5.15.0", "source": { "type": "git", "url": "https://github.com/laravel/socialite.git", - "reference": "7dae1b072573809f32ab6dcf4aebb57c8b3e8acf" + "reference": "c8234bfb286a8210df8d62f94562c71bfda4a446" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/socialite/zipball/7dae1b072573809f32ab6dcf4aebb57c8b3e8acf", - "reference": "7dae1b072573809f32ab6dcf4aebb57c8b3e8acf", + "url": "https://api.github.com/repos/laravel/socialite/zipball/c8234bfb286a8210df8d62f94562c71bfda4a446", + "reference": "c8234bfb286a8210df8d62f94562c71bfda4a446", "shasum": "" }, "require": { "ext-json": "*", + "firebase/php-jwt": "^6.4", "guzzlehttp/guzzle": "^6.0|^7.0", "illuminate/contracts": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0", "illuminate/http": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0", "illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0", "league/oauth1-client": "^1.10.1", - "php": "^7.2|^8.0" + "php": "^7.2|^8.0", + "phpseclib/phpseclib": "^3.0" }, "require-dev": { "mockery/mockery": "^1.0", @@ -3256,7 +3264,7 @@ "issues": "https://github.com/laravel/socialite/issues", "source": "https://github.com/laravel/socialite" }, - "time": "2024-02-16T08:58:20+00:00" + "time": "2024-06-11T13:33:20+00:00" }, { "name": "laravel/tinker", @@ -3326,16 +3334,16 @@ }, { "name": "laravel/ui", - "version": "v4.5.1", + "version": "v4.5.2", "source": { "type": "git", "url": "https://github.com/laravel/ui.git", - "reference": "a3562953123946996a503159199d6742d5534e61" + "reference": "c75396f63268c95b053c8e4814eb70e0875e9628" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/ui/zipball/a3562953123946996a503159199d6742d5534e61", - "reference": "a3562953123946996a503159199d6742d5534e61", + "url": "https://api.github.com/repos/laravel/ui/zipball/c75396f63268c95b053c8e4814eb70e0875e9628", + "reference": "c75396f63268c95b053c8e4814eb70e0875e9628", "shasum": "" }, "require": { @@ -3383,9 +3391,9 @@ "ui" ], "support": { - "source": "https://github.com/laravel/ui/tree/v4.5.1" + "source": "https://github.com/laravel/ui/tree/v4.5.2" }, - "time": "2024-03-21T18:12:29+00:00" + "time": "2024-05-08T18:07:10+00:00" }, { "name": "laravelcollective/html", @@ -3462,39 +3470,38 @@ }, { "name": "lcobucci/jwt", - "version": "4.3.0", + "version": "5.3.0", "source": { "type": "git", "url": "https://github.com/lcobucci/jwt.git", - "reference": "4d7de2fe0d51a96418c0d04004986e410e87f6b4" + "reference": "08071d8d2c7f4b00222cc4b1fb6aa46990a80f83" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/lcobucci/jwt/zipball/4d7de2fe0d51a96418c0d04004986e410e87f6b4", - "reference": "4d7de2fe0d51a96418c0d04004986e410e87f6b4", + "url": "https://api.github.com/repos/lcobucci/jwt/zipball/08071d8d2c7f4b00222cc4b1fb6aa46990a80f83", + "reference": "08071d8d2c7f4b00222cc4b1fb6aa46990a80f83", "shasum": "" }, "require": { - "ext-hash": "*", - "ext-json": "*", - "ext-mbstring": "*", "ext-openssl": "*", "ext-sodium": "*", - "lcobucci/clock": "^2.0 || ^3.0", - "php": "^7.4 || ^8.0" + "php": "~8.1.0 || ~8.2.0 || ~8.3.0", + "psr/clock": "^1.0" }, "require-dev": { - "infection/infection": "^0.21", - "lcobucci/coding-standard": "^6.0", - "mikey179/vfsstream": "^1.6.7", - "phpbench/phpbench": "^1.2", - "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^1.4", - "phpstan/phpstan-deprecation-rules": "^1.0", - "phpstan/phpstan-phpunit": "^1.0", - "phpstan/phpstan-strict-rules": "^1.0", - "phpunit/php-invoker": "^3.1", - "phpunit/phpunit": "^9.5" + "infection/infection": "^0.27.0", + "lcobucci/clock": "^3.0", + "lcobucci/coding-standard": "^11.0", + "phpbench/phpbench": "^1.2.9", + "phpstan/extension-installer": "^1.2", + "phpstan/phpstan": "^1.10.7", + "phpstan/phpstan-deprecation-rules": "^1.1.3", + "phpstan/phpstan-phpunit": "^1.3.10", + "phpstan/phpstan-strict-rules": "^1.5.0", + "phpunit/phpunit": "^10.2.6" + }, + "suggest": { + "lcobucci/clock": ">= 3.0" }, "type": "library", "autoload": { @@ -3520,7 +3527,7 @@ ], "support": { "issues": "https://github.com/lcobucci/jwt/issues", - "source": "https://github.com/lcobucci/jwt/tree/4.3.0" + "source": "https://github.com/lcobucci/jwt/tree/5.3.0" }, "funding": [ { @@ -3532,7 +3539,7 @@ "type": "patreon" } ], - "time": "2023-01-02T13:28:00+00:00" + "time": "2024-04-11T23:07:54+00:00" }, { "name": "league/commonmark", @@ -3724,40 +3731,39 @@ }, { "name": "league/csv", - "version": "9.15.0", + "version": "9.16.0", "source": { "type": "git", "url": "https://github.com/thephpleague/csv.git", - "reference": "fa7e2441c0bc9b2360f4314fd6c954f7ff40d435" + "reference": "998280c6c34bd67d8125fdc8b45bae28d761b440" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/csv/zipball/fa7e2441c0bc9b2360f4314fd6c954f7ff40d435", - "reference": "fa7e2441c0bc9b2360f4314fd6c954f7ff40d435", + "url": "https://api.github.com/repos/thephpleague/csv/zipball/998280c6c34bd67d8125fdc8b45bae28d761b440", + "reference": "998280c6c34bd67d8125fdc8b45bae28d761b440", "shasum": "" }, "require": { "ext-filter": "*", - "ext-json": "*", - "ext-mbstring": "*", "php": "^8.1.2" }, "require-dev": { - "doctrine/collections": "^2.1.4", + "doctrine/collections": "^2.2.2", "ext-dom": "*", "ext-xdebug": "*", - "friendsofphp/php-cs-fixer": "^v3.22.0", + "friendsofphp/php-cs-fixer": "^3.57.1", "phpbench/phpbench": "^1.2.15", - "phpstan/phpstan": "^1.10.57", - "phpstan/phpstan-deprecation-rules": "^1.1.4", - "phpstan/phpstan-phpunit": "^1.3.15", - "phpstan/phpstan-strict-rules": "^1.5.2", - "phpunit/phpunit": "^10.5.9", - "symfony/var-dumper": "^6.4.2" + "phpstan/phpstan": "^1.11.1", + "phpstan/phpstan-deprecation-rules": "^1.2.0", + "phpstan/phpstan-phpunit": "^1.4.0", + "phpstan/phpstan-strict-rules": "^1.6.0", + "phpunit/phpunit": "^10.5.16 || ^11.1.3", + "symfony/var-dumper": "^6.4.6 || ^7.0.7" }, "suggest": { "ext-dom": "Required to use the XMLConverter and the HTMLConverter classes", - "ext-iconv": "Needed to ease transcoding CSV using iconv stream filters" + "ext-iconv": "Needed to ease transcoding CSV using iconv stream filters", + "ext-mbstring": "Needed to ease transcoding CSV using mb stream filters" }, "type": "library", "extra": { @@ -3809,7 +3815,7 @@ "type": "github" } ], - "time": "2024-02-20T20:00:00+00:00" + "time": "2024-05-24T11:04:54+00:00" }, { "name": "league/event", @@ -3867,16 +3873,16 @@ }, { "name": "league/flysystem", - "version": "3.26.0", + "version": "3.28.0", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem.git", - "reference": "072735c56cc0da00e10716dd90d5a7f7b40b36be" + "reference": "e611adab2b1ae2e3072fa72d62c62f52c2bf1f0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/072735c56cc0da00e10716dd90d5a7f7b40b36be", - "reference": "072735c56cc0da00e10716dd90d5a7f7b40b36be", + "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/e611adab2b1ae2e3072fa72d62c62f52c2bf1f0c", + "reference": "e611adab2b1ae2e3072fa72d62c62f52c2bf1f0c", "shasum": "" }, "require": { @@ -3900,10 +3906,13 @@ "composer/semver": "^3.0", "ext-fileinfo": "*", "ext-ftp": "*", + "ext-mongodb": "^1.3", "ext-zip": "*", "friendsofphp/php-cs-fixer": "^3.5", "google/cloud-storage": "^1.23", + "guzzlehttp/psr7": "^2.6", "microsoft/azure-storage-blob": "^1.1", + "mongodb/mongodb": "^1.2", "phpseclib/phpseclib": "^3.0.36", "phpstan/phpstan": "^1.10", "phpunit/phpunit": "^9.5.11|^10.0", @@ -3941,32 +3950,22 @@ ], "support": { "issues": "https://github.com/thephpleague/flysystem/issues", - "source": "https://github.com/thephpleague/flysystem/tree/3.26.0" + "source": "https://github.com/thephpleague/flysystem/tree/3.28.0" }, - "funding": [ - { - "url": "https://ecologi.com/frankdejonge", - "type": "custom" - }, - { - "url": "https://github.com/frankdejonge", - "type": "github" - } - ], - "time": "2024-03-25T11:49:53+00:00" + "time": "2024-05-22T10:09:12+00:00" }, { "name": "league/flysystem-aws-s3-v3", - "version": "3.26.0", + "version": "3.28.0", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem-aws-s3-v3.git", - "reference": "885d0a758c71ae3cd6c503544573a1fdb8dc754f" + "reference": "22071ef1604bc776f5ff2468ac27a752514665c8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/885d0a758c71ae3cd6c503544573a1fdb8dc754f", - "reference": "885d0a758c71ae3cd6c503544573a1fdb8dc754f", + "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/22071ef1604bc776f5ff2468ac27a752514665c8", + "reference": "22071ef1604bc776f5ff2468ac27a752514665c8", "shasum": "" }, "require": { @@ -4006,32 +4005,22 @@ "storage" ], "support": { - "source": "https://github.com/thephpleague/flysystem-aws-s3-v3/tree/3.26.0" + "source": "https://github.com/thephpleague/flysystem-aws-s3-v3/tree/3.28.0" }, - "funding": [ - { - "url": "https://ecologi.com/frankdejonge", - "type": "custom" - }, - { - "url": "https://github.com/frankdejonge", - "type": "github" - } - ], - "time": "2024-03-24T21:11:18+00:00" + "time": "2024-05-06T20:05:52+00:00" }, { "name": "league/flysystem-local", - "version": "3.25.1", + "version": "3.28.0", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem-local.git", - "reference": "61a6a90d6e999e4ddd9ce5adb356de0939060b92" + "reference": "13f22ea8be526ea58c2ddff9e158ef7c296e4f40" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem-local/zipball/61a6a90d6e999e4ddd9ce5adb356de0939060b92", - "reference": "61a6a90d6e999e4ddd9ce5adb356de0939060b92", + "url": "https://api.github.com/repos/thephpleague/flysystem-local/zipball/13f22ea8be526ea58c2ddff9e158ef7c296e4f40", + "reference": "13f22ea8be526ea58c2ddff9e158ef7c296e4f40", "shasum": "" }, "require": { @@ -4065,19 +4054,9 @@ "local" ], "support": { - "source": "https://github.com/thephpleague/flysystem-local/tree/3.25.1" + "source": "https://github.com/thephpleague/flysystem-local/tree/3.28.0" }, - "funding": [ - { - "url": "https://ecologi.com/frankdejonge", - "type": "custom" - }, - { - "url": "https://github.com/frankdejonge", - "type": "github" - } - ], - "time": "2024-03-15T19:58:44+00:00" + "time": "2024-05-06T20:05:52+00:00" }, { "name": "league/mime-type-detection", @@ -4548,16 +4527,16 @@ }, { "name": "masterminds/html5", - "version": "2.8.1", + "version": "2.9.0", "source": { "type": "git", "url": "https://github.com/Masterminds/html5-php.git", - "reference": "f47dcf3c70c584de14f21143c55d9939631bc6cf" + "reference": "f5ac2c0b0a2eefca70b2ce32a5809992227e75a6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/f47dcf3c70c584de14f21143c55d9939631bc6cf", - "reference": "f47dcf3c70c584de14f21143c55d9939631bc6cf", + "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/f5ac2c0b0a2eefca70b2ce32a5809992227e75a6", + "reference": "f5ac2c0b0a2eefca70b2ce32a5809992227e75a6", "shasum": "" }, "require": { @@ -4565,7 +4544,7 @@ "php": ">=5.3.0" }, "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7.21 || ^6 || ^7 || ^8" + "phpunit/phpunit": "^4.8.35 || ^5.7.21 || ^6 || ^7 || ^8 || ^9" }, "type": "library", "extra": { @@ -4609,22 +4588,22 @@ ], "support": { "issues": "https://github.com/Masterminds/html5-php/issues", - "source": "https://github.com/Masterminds/html5-php/tree/2.8.1" + "source": "https://github.com/Masterminds/html5-php/tree/2.9.0" }, - "time": "2023-05-10T11:58:31+00:00" + "time": "2024-03-31T07:05:07+00:00" }, { "name": "maximebf/debugbar", - "version": "v1.22.1", + "version": "v1.22.3", "source": { "type": "git", "url": "https://github.com/maximebf/php-debugbar.git", - "reference": "d7b6e1dc2dc85c01ed63ab158b00a7f46abdebcc" + "reference": "7aa9a27a0b1158ed5ad4e7175e8d3aee9a818b96" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/d7b6e1dc2dc85c01ed63ab158b00a7f46abdebcc", - "reference": "d7b6e1dc2dc85c01ed63ab158b00a7f46abdebcc", + "url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/7aa9a27a0b1158ed5ad4e7175e8d3aee9a818b96", + "reference": "7aa9a27a0b1158ed5ad4e7175e8d3aee9a818b96", "shasum": "" }, "require": { @@ -4677,22 +4656,22 @@ ], "support": { "issues": "https://github.com/maximebf/php-debugbar/issues", - "source": "https://github.com/maximebf/php-debugbar/tree/v1.22.1" + "source": "https://github.com/maximebf/php-debugbar/tree/v1.22.3" }, - "time": "2024-04-01T10:44:20+00:00" + "time": "2024-04-03T19:39:26+00:00" }, { "name": "monolog/monolog", - "version": "3.5.0", + "version": "3.6.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "c915e2634718dbc8a4a15c61b0e62e7a44e14448" + "reference": "4b18b21a5527a3d5ffdac2fd35d3ab25a9597654" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/c915e2634718dbc8a4a15c61b0e62e7a44e14448", - "reference": "c915e2634718dbc8a4a15c61b0e62e7a44e14448", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/4b18b21a5527a3d5ffdac2fd35d3ab25a9597654", + "reference": "4b18b21a5527a3d5ffdac2fd35d3ab25a9597654", "shasum": "" }, "require": { @@ -4715,7 +4694,7 @@ "phpstan/phpstan": "^1.9", "phpstan/phpstan-deprecation-rules": "^1.0", "phpstan/phpstan-strict-rules": "^1.4", - "phpunit/phpunit": "^10.1", + "phpunit/phpunit": "^10.5.17", "predis/predis": "^1.1 || ^2", "ruflin/elastica": "^7", "symfony/mailer": "^5.4 || ^6", @@ -4768,7 +4747,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/3.5.0" + "source": "https://github.com/Seldaek/monolog/tree/3.6.0" }, "funding": [ { @@ -4780,7 +4759,7 @@ "type": "tidelift" } ], - "time": "2023-10-27T15:32:31+00:00" + "time": "2024-04-12T21:02:21+00:00" }, { "name": "mtdowling/jmespath.php", @@ -4891,16 +4870,16 @@ }, { "name": "nesbot/carbon", - "version": "2.72.3", + "version": "2.72.5", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "0c6fd108360c562f6e4fd1dedb8233b423e91c83" + "reference": "afd46589c216118ecd48ff2b95d77596af1e57ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/0c6fd108360c562f6e4fd1dedb8233b423e91c83", - "reference": "0c6fd108360c562f6e4fd1dedb8233b423e91c83", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/afd46589c216118ecd48ff2b95d77596af1e57ed", + "reference": "afd46589c216118ecd48ff2b95d77596af1e57ed", "shasum": "" }, "require": { @@ -4934,8 +4913,8 @@ "type": "library", "extra": { "branch-alias": { - "dev-3.x": "3.x-dev", - "dev-master": "2.x-dev" + "dev-master": "3.x-dev", + "dev-2.x": "2.x-dev" }, "laravel": { "providers": [ @@ -4994,7 +4973,7 @@ "type": "tidelift" } ], - "time": "2024-01-25T10:35:09+00:00" + "time": "2024-06-03T19:18:41+00:00" }, { "name": "nette/schema", @@ -5514,16 +5493,16 @@ }, { "name": "onelogin/php-saml", - "version": "3.6.1", + "version": "3.7.0", "source": { "type": "git", - "url": "https://github.com/onelogin/php-saml.git", - "reference": "a7328b11887660ad248ea10952dd67a5aa73ba3b" + "url": "https://github.com/SAML-Toolkits/php-saml.git", + "reference": "91c1a3b3e2390aba9facc64ba81b407a50962ebb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/onelogin/php-saml/zipball/a7328b11887660ad248ea10952dd67a5aa73ba3b", - "reference": "a7328b11887660ad248ea10952dd67a5aa73ba3b", + "url": "https://api.github.com/repos/SAML-Toolkits/php-saml/zipball/91c1a3b3e2390aba9facc64ba81b407a50962ebb", + "reference": "91c1a3b3e2390aba9facc64ba81b407a50962ebb", "shasum": "" }, "require": { @@ -5553,32 +5532,40 @@ "license": [ "MIT" ], - "description": "OneLogin PHP SAML Toolkit", - "homepage": "https://developers.onelogin.com/saml/php", + "description": "PHP SAML Toolkit", + "homepage": "https://github.com/SAML-Toolkits/php-saml", "keywords": [ + "Federation", "SAML2", - "onelogin", + "SSO", + "identity", "saml" ], "support": { - "email": "sixto.garcia@onelogin.com", - "issues": "https://github.com/onelogin/php-saml/issues", - "source": "https://github.com/onelogin/php-saml/" + "email": "sixto.martin.garcia@gmail.com", + "issues": "https://github.com/onelogin/SAML-Toolkits/issues", + "source": "https://github.com/onelogin/SAML-Toolkits/" }, - "time": "2021-03-02T10:13:07+00:00" + "funding": [ + { + "url": "https://github.com/SAML-Toolkits", + "type": "github" + } + ], + "time": "2024-05-30T15:14:26+00:00" }, { "name": "paragonie/constant_time_encoding", - "version": "v2.6.3", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/paragonie/constant_time_encoding.git", - "reference": "58c3f47f650c94ec05a151692652a868995d2938" + "reference": "52a0d99e69f56b9ec27ace92ba56897fe6993105" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/58c3f47f650c94ec05a151692652a868995d2938", - "reference": "58c3f47f650c94ec05a151692652a868995d2938", + "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/52a0d99e69f56b9ec27ace92ba56897fe6993105", + "reference": "52a0d99e69f56b9ec27ace92ba56897fe6993105", "shasum": "" }, "require": { @@ -5632,7 +5619,7 @@ "issues": "https://github.com/paragonie/constant_time_encoding/issues", "source": "https://github.com/paragonie/constant_time_encoding" }, - "time": "2022-06-14T06:56:20+00:00" + "time": "2024-05-08T12:18:48+00:00" }, { "name": "paragonie/random_compat", @@ -5686,16 +5673,16 @@ }, { "name": "paragonie/sodium_compat", - "version": "v1.20.0", + "version": "v1.21.1", "source": { "type": "git", "url": "https://github.com/paragonie/sodium_compat.git", - "reference": "e592a3e06d1fa0d43988c7c7d9948ca836f644b6" + "reference": "bb312875dcdd20680419564fe42ba1d9564b9e37" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/paragonie/sodium_compat/zipball/e592a3e06d1fa0d43988c7c7d9948ca836f644b6", - "reference": "e592a3e06d1fa0d43988c7c7d9948ca836f644b6", + "url": "https://api.github.com/repos/paragonie/sodium_compat/zipball/bb312875dcdd20680419564fe42ba1d9564b9e37", + "reference": "bb312875dcdd20680419564fe42ba1d9564b9e37", "shasum": "" }, "require": { @@ -5766,9 +5753,9 @@ ], "support": { "issues": "https://github.com/paragonie/sodium_compat/issues", - "source": "https://github.com/paragonie/sodium_compat/tree/v1.20.0" + "source": "https://github.com/paragonie/sodium_compat/tree/v1.21.1" }, - "time": "2023-04-30T00:54:53+00:00" + "time": "2024-04-22T22:05:04+00:00" }, { "name": "phenx/php-font-lib", @@ -5816,16 +5803,16 @@ }, { "name": "phenx/php-svg-lib", - "version": "0.5.3", + "version": "0.5.4", "source": { "type": "git", "url": "https://github.com/dompdf/php-svg-lib.git", - "reference": "0e46722c154726a5f9ac218197ccc28adba16fcf" + "reference": "46b25da81613a9cf43c83b2a8c2c1bdab27df691" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dompdf/php-svg-lib/zipball/0e46722c154726a5f9ac218197ccc28adba16fcf", - "reference": "0e46722c154726a5f9ac218197ccc28adba16fcf", + "url": "https://api.github.com/repos/dompdf/php-svg-lib/zipball/46b25da81613a9cf43c83b2a8c2c1bdab27df691", + "reference": "46b25da81613a9cf43c83b2a8c2c1bdab27df691", "shasum": "" }, "require": { @@ -5856,9 +5843,9 @@ "homepage": "https://github.com/PhenX/php-svg-lib", "support": { "issues": "https://github.com/dompdf/php-svg-lib/issues", - "source": "https://github.com/dompdf/php-svg-lib/tree/0.5.3" + "source": "https://github.com/dompdf/php-svg-lib/tree/0.5.4" }, - "time": "2024-02-23T20:39:24+00:00" + "time": "2024-04-08T12:52:34+00:00" }, { "name": "phpdocumentor/reflection-common", @@ -5915,28 +5902,35 @@ }, { "name": "phpdocumentor/reflection-docblock", - "version": "5.3.0", + "version": "5.4.1", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "622548b623e81ca6d78b721c5e029f4ce664f170" + "reference": "9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/622548b623e81ca6d78b721c5e029f4ce664f170", - "reference": "622548b623e81ca6d78b721c5e029f4ce664f170", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c", + "reference": "9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c", "shasum": "" }, "require": { + "doctrine/deprecations": "^1.1", "ext-filter": "*", - "php": "^7.2 || ^8.0", + "php": "^7.4 || ^8.0", "phpdocumentor/reflection-common": "^2.2", - "phpdocumentor/type-resolver": "^1.3", + "phpdocumentor/type-resolver": "^1.7", + "phpstan/phpdoc-parser": "^1.7", "webmozart/assert": "^1.9.1" }, "require-dev": { - "mockery/mockery": "~1.3.2", - "psalm/phar": "^4.8" + "mockery/mockery": "~1.3.5", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-mockery": "^1.1", + "phpstan/phpstan-webmozart-assert": "^1.2", + "phpunit/phpunit": "^9.5", + "vimeo/psalm": "^5.13" }, "type": "library", "extra": { @@ -5960,15 +5954,15 @@ }, { "name": "Jaap van Otterdijk", - "email": "account@ijaap.nl" + "email": "opensource@ijaap.nl" } ], "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", "support": { "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", - "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.3.0" + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.4.1" }, - "time": "2021-10-19T17:43:47+00:00" + "time": "2024-05-21T05:55:05+00:00" }, { "name": "phpdocumentor/type-resolver", @@ -6105,20 +6099,20 @@ }, { "name": "phpseclib/phpseclib", - "version": "3.0.37", + "version": "3.0.38", "source": { "type": "git", "url": "https://github.com/phpseclib/phpseclib.git", - "reference": "cfa2013d0f68c062055180dd4328cc8b9d1f30b8" + "reference": "b18b8788e51156c4dd97b7f220a31149a0052067" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/cfa2013d0f68c062055180dd4328cc8b9d1f30b8", - "reference": "cfa2013d0f68c062055180dd4328cc8b9d1f30b8", + "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/b18b8788e51156c4dd97b7f220a31149a0052067", + "reference": "b18b8788e51156c4dd97b7f220a31149a0052067", "shasum": "" }, "require": { - "paragonie/constant_time_encoding": "^1|^2", + "paragonie/constant_time_encoding": "^1|^2|^3", "paragonie/random_compat": "^1.4|^2.0|^9.99.99", "php": ">=5.6.1" }, @@ -6195,7 +6189,7 @@ ], "support": { "issues": "https://github.com/phpseclib/phpseclib/issues", - "source": "https://github.com/phpseclib/phpseclib/tree/3.0.37" + "source": "https://github.com/phpseclib/phpseclib/tree/3.0.38" }, "funding": [ { @@ -6211,7 +6205,7 @@ "type": "tidelift" } ], - "time": "2024-03-03T02:14:58+00:00" + "time": "2024-06-17T10:11:32+00:00" }, { "name": "phpspec/prophecy", @@ -6284,16 +6278,16 @@ }, { "name": "phpstan/phpdoc-parser", - "version": "1.27.0", + "version": "1.29.1", "source": { "type": "git", "url": "https://github.com/phpstan/phpdoc-parser.git", - "reference": "86e4d5a4b036f8f0be1464522f4c6b584c452757" + "reference": "fcaefacf2d5c417e928405b71b400d4ce10daaf4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/86e4d5a4b036f8f0be1464522f4c6b584c452757", - "reference": "86e4d5a4b036f8f0be1464522f4c6b584c452757", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/fcaefacf2d5c417e928405b71b400d4ce10daaf4", + "reference": "fcaefacf2d5c417e928405b71b400d4ce10daaf4", "shasum": "" }, "require": { @@ -6325,9 +6319,9 @@ "description": "PHPDoc parser with support for nullable, intersection and generic types", "support": { "issues": "https://github.com/phpstan/phpdoc-parser/issues", - "source": "https://github.com/phpstan/phpdoc-parser/tree/1.27.0" + "source": "https://github.com/phpstan/phpdoc-parser/tree/1.29.1" }, - "time": "2024-03-21T13:14:53+00:00" + "time": "2024-05-31T08:52:43+00:00" }, { "name": "pragmarx/google2fa", @@ -6772,20 +6766,20 @@ }, { "name": "psr/http-factory", - "version": "1.0.2", + "version": "1.1.0", "source": { "type": "git", "url": "https://github.com/php-fig/http-factory.git", - "reference": "e616d01114759c4c489f93b099585439f795fe35" + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35", - "reference": "e616d01114759c4c489f93b099585439f795fe35", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", "shasum": "" }, "require": { - "php": ">=7.0.0", + "php": ">=7.1", "psr/http-message": "^1.0 || ^2.0" }, "type": "library", @@ -6809,7 +6803,7 @@ "homepage": "https://www.php-fig.org/" } ], - "description": "Common interfaces for PSR-7 HTTP message factories", + "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories", "keywords": [ "factory", "http", @@ -6821,9 +6815,9 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-factory/tree/1.0.2" + "source": "https://github.com/php-fig/http-factory" }, - "time": "2023-04-10T20:10:41+00:00" + "time": "2024-04-15T12:06:14+00:00" }, { "name": "psr/http-message", @@ -6981,16 +6975,16 @@ }, { "name": "psy/psysh", - "version": "v0.12.3", + "version": "v0.12.4", "source": { "type": "git", "url": "https://github.com/bobthecow/psysh.git", - "reference": "b6b6cce7d3ee8fbf31843edce5e8f5a72eff4a73" + "reference": "2fd717afa05341b4f8152547f142cd2f130f6818" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/bobthecow/psysh/zipball/b6b6cce7d3ee8fbf31843edce5e8f5a72eff4a73", - "reference": "b6b6cce7d3ee8fbf31843edce5e8f5a72eff4a73", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/2fd717afa05341b4f8152547f142cd2f130f6818", + "reference": "2fd717afa05341b4f8152547f142cd2f130f6818", "shasum": "" }, "require": { @@ -7054,9 +7048,9 @@ ], "support": { "issues": "https://github.com/bobthecow/psysh/issues", - "source": "https://github.com/bobthecow/psysh/tree/v0.12.3" + "source": "https://github.com/bobthecow/psysh/tree/v0.12.4" }, - "time": "2024-04-02T15:57:53+00:00" + "time": "2024-06-10T01:18:23+00:00" }, { "name": "ralouphie/getallheaders", @@ -7193,20 +7187,20 @@ }, { "name": "ramsey/uuid", - "version": "4.7.5", + "version": "4.7.6", "source": { "type": "git", "url": "https://github.com/ramsey/uuid.git", - "reference": "5f0df49ae5ad6efb7afa69e6bfab4e5b1e080d8e" + "reference": "91039bc1faa45ba123c4328958e620d382ec7088" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ramsey/uuid/zipball/5f0df49ae5ad6efb7afa69e6bfab4e5b1e080d8e", - "reference": "5f0df49ae5ad6efb7afa69e6bfab4e5b1e080d8e", + "url": "https://api.github.com/repos/ramsey/uuid/zipball/91039bc1faa45ba123c4328958e620d382ec7088", + "reference": "91039bc1faa45ba123c4328958e620d382ec7088", "shasum": "" }, "require": { - "brick/math": "^0.8.8 || ^0.9 || ^0.10 || ^0.11", + "brick/math": "^0.8.8 || ^0.9 || ^0.10 || ^0.11 || ^0.12", "ext-json": "*", "php": "^8.0", "ramsey/collection": "^1.2 || ^2.0" @@ -7269,7 +7263,7 @@ ], "support": { "issues": "https://github.com/ramsey/uuid/issues", - "source": "https://github.com/ramsey/uuid/tree/4.7.5" + "source": "https://github.com/ramsey/uuid/tree/4.7.6" }, "funding": [ { @@ -7281,7 +7275,7 @@ "type": "tidelift" } ], - "time": "2023-11-08T05:53:05+00:00" + "time": "2024-04-27T21:32:50+00:00" }, { "name": "robrichards/xmlseclibs", @@ -7807,16 +7801,16 @@ }, { "name": "spatie/backtrace", - "version": "1.5.3", + "version": "1.6.1", "source": { "type": "git", "url": "https://github.com/spatie/backtrace.git", - "reference": "483f76a82964a0431aa836b6ed0edde0c248e3ab" + "reference": "8373b9d51638292e3bfd736a9c19a654111b4a23" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/backtrace/zipball/483f76a82964a0431aa836b6ed0edde0c248e3ab", - "reference": "483f76a82964a0431aa836b6ed0edde0c248e3ab", + "url": "https://api.github.com/repos/spatie/backtrace/zipball/8373b9d51638292e3bfd736a9c19a654111b4a23", + "reference": "8373b9d51638292e3bfd736a9c19a654111b4a23", "shasum": "" }, "require": { @@ -7824,6 +7818,7 @@ }, "require-dev": { "ext-json": "*", + "laravel/serializable-closure": "^1.3", "phpunit/phpunit": "^9.3", "spatie/phpunit-snapshot-assertions": "^4.2", "symfony/var-dumper": "^5.1" @@ -7853,7 +7848,7 @@ "spatie" ], "support": { - "source": "https://github.com/spatie/backtrace/tree/1.5.3" + "source": "https://github.com/spatie/backtrace/tree/1.6.1" }, "funding": [ { @@ -7865,20 +7860,20 @@ "type": "other" } ], - "time": "2023-06-28T12:59:17+00:00" + "time": "2024-04-24T13:22:11+00:00" }, { "name": "spatie/db-dumper", - "version": "3.4.3", + "version": "3.6.0", "source": { "type": "git", "url": "https://github.com/spatie/db-dumper.git", - "reference": "c566852826f3e9dceea27eef5173bad93b83e61c" + "reference": "faca5056830bccea04eadf07e8074669cb9e905e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/db-dumper/zipball/c566852826f3e9dceea27eef5173bad93b83e61c", - "reference": "c566852826f3e9dceea27eef5173bad93b83e61c", + "url": "https://api.github.com/repos/spatie/db-dumper/zipball/faca5056830bccea04eadf07e8074669cb9e905e", + "reference": "faca5056830bccea04eadf07e8074669cb9e905e", "shasum": "" }, "require": { @@ -7916,7 +7911,7 @@ "spatie" ], "support": { - "source": "https://github.com/spatie/db-dumper/tree/3.4.3" + "source": "https://github.com/spatie/db-dumper/tree/3.6.0" }, "funding": [ { @@ -7928,26 +7923,100 @@ "type": "github" } ], - "time": "2024-04-01T07:37:06+00:00" + "time": "2024-04-24T14:54:13+00:00" + }, + { + "name": "spatie/error-solutions", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/spatie/error-solutions.git", + "reference": "202108314a6988ede156fba1b3ea80a784c1734a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/error-solutions/zipball/202108314a6988ede156fba1b3ea80a784c1734a", + "reference": "202108314a6988ede156fba1b3ea80a784c1734a", + "shasum": "" + }, + "require": { + "php": "^8.0" + }, + "require-dev": { + "illuminate/broadcasting": "^10.0|^11.0", + "illuminate/cache": "^10.0|^11.0", + "illuminate/support": "^10.0|^11.0", + "livewire/livewire": "^2.11|^3.3.5", + "openai-php/client": "^0.10.1", + "orchestra/testbench": "^7.0|8.22.3|^9.0", + "pestphp/pest": "^2.20", + "phpstan/phpstan": "^1.11", + "psr/simple-cache": "^3.0", + "psr/simple-cache-implementation": "^3.0", + "spatie/ray": "^1.28", + "symfony/cache": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.0|^7.0", + "vlucas/phpdotenv": "^5.5" + }, + "suggest": { + "openai-php/client": "Require get solutions from OpenAI", + "simple-cache-implementation": "To cache solutions from OpenAI" + }, + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\Ignition\\": "legacy/ignition", + "Spatie\\ErrorSolutions\\": "src", + "Spatie\\LaravelIgnition\\": "legacy/laravel-ignition" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ruben Van Assche", + "email": "ruben@spatie.be", + "role": "Developer" + } + ], + "description": "This is my package error-solutions", + "homepage": "https://github.com/spatie/error-solutions", + "keywords": [ + "error-solutions", + "spatie" + ], + "support": { + "issues": "https://github.com/spatie/error-solutions/issues", + "source": "https://github.com/spatie/error-solutions/tree/1.0.0" + }, + "funding": [ + { + "url": "https://github.com/Spatie", + "type": "github" + } + ], + "time": "2024-06-12T14:49:54+00:00" }, { "name": "spatie/flare-client-php", - "version": "1.4.4", + "version": "1.7.0", "source": { "type": "git", "url": "https://github.com/spatie/flare-client-php.git", - "reference": "17082e780752d346c2db12ef5d6bee8e835e399c" + "reference": "097040ff51e660e0f6fc863684ac4b02c93fa234" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/flare-client-php/zipball/17082e780752d346c2db12ef5d6bee8e835e399c", - "reference": "17082e780752d346c2db12ef5d6bee8e835e399c", + "url": "https://api.github.com/repos/spatie/flare-client-php/zipball/097040ff51e660e0f6fc863684ac4b02c93fa234", + "reference": "097040ff51e660e0f6fc863684ac4b02c93fa234", "shasum": "" }, "require": { "illuminate/pipeline": "^8.0|^9.0|^10.0|^11.0", "php": "^8.0", - "spatie/backtrace": "^1.5.2", + "spatie/backtrace": "^1.6.1", "symfony/http-foundation": "^5.2|^6.0|^7.0", "symfony/mime": "^5.2|^6.0|^7.0", "symfony/process": "^5.2|^6.0|^7.0", @@ -7989,7 +8058,7 @@ ], "support": { "issues": "https://github.com/spatie/flare-client-php/issues", - "source": "https://github.com/spatie/flare-client-php/tree/1.4.4" + "source": "https://github.com/spatie/flare-client-php/tree/1.7.0" }, "funding": [ { @@ -7997,28 +8066,28 @@ "type": "github" } ], - "time": "2024-01-31T14:18:45+00:00" + "time": "2024-06-12T14:39:14+00:00" }, { "name": "spatie/ignition", - "version": "1.13.1", + "version": "1.15.0", "source": { "type": "git", "url": "https://github.com/spatie/ignition.git", - "reference": "889bf1dfa59e161590f677728b47bf4a6893983b" + "reference": "e3a68e137371e1eb9edc7f78ffa733f3b98991d2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/ignition/zipball/889bf1dfa59e161590f677728b47bf4a6893983b", - "reference": "889bf1dfa59e161590f677728b47bf4a6893983b", + "url": "https://api.github.com/repos/spatie/ignition/zipball/e3a68e137371e1eb9edc7f78ffa733f3b98991d2", + "reference": "e3a68e137371e1eb9edc7f78ffa733f3b98991d2", "shasum": "" }, "require": { "ext-json": "*", "ext-mbstring": "*", "php": "^8.0", - "spatie/backtrace": "^1.5.3", - "spatie/flare-client-php": "^1.4.0", + "spatie/error-solutions": "^1.0", + "spatie/flare-client-php": "^1.7", "symfony/console": "^5.4|^6.0|^7.0", "symfony/var-dumper": "^5.4|^6.0|^7.0" }, @@ -8080,20 +8149,20 @@ "type": "github" } ], - "time": "2024-03-29T14:03:47+00:00" + "time": "2024-06-12T14:55:22+00:00" }, { "name": "spatie/laravel-backup", - "version": "8.6.0", + "version": "8.8.1", "source": { "type": "git", "url": "https://github.com/spatie/laravel-backup.git", - "reference": "c6a7607c0eea80efc2cf6628ffcd172f73a2088f" + "reference": "a9c2d2f726f4c60c2dc5d7c0c8380f72492638c2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-backup/zipball/c6a7607c0eea80efc2cf6628ffcd172f73a2088f", - "reference": "c6a7607c0eea80efc2cf6628ffcd172f73a2088f", + "url": "https://api.github.com/repos/spatie/laravel-backup/zipball/a9c2d2f726f4c60c2dc5d7c0c8380f72492638c2", + "reference": "a9c2d2f726f4c60c2dc5d7c0c8380f72492638c2", "shasum": "" }, "require": { @@ -8167,7 +8236,7 @@ ], "support": { "issues": "https://github.com/spatie/laravel-backup/issues", - "source": "https://github.com/spatie/laravel-backup/tree/8.6.0" + "source": "https://github.com/spatie/laravel-backup/tree/8.8.1" }, "funding": [ { @@ -8179,20 +8248,20 @@ "type": "other" } ], - "time": "2024-02-06T20:39:11+00:00" + "time": "2024-06-04T11:31:33+00:00" }, { "name": "spatie/laravel-ignition", - "version": "2.5.1", + "version": "2.8.0", "source": { "type": "git", "url": "https://github.com/spatie/laravel-ignition.git", - "reference": "0c864b3cbd66ce67a2096c5f743e07ce8f1d6ab9" + "reference": "3c067b75bfb50574db8f7e2c3978c65eed71126c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/0c864b3cbd66ce67a2096c5f743e07ce8f1d6ab9", - "reference": "0c864b3cbd66ce67a2096c5f743e07ce8f1d6ab9", + "url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/3c067b75bfb50574db8f7e2c3978c65eed71126c", + "reference": "3c067b75bfb50574db8f7e2c3978c65eed71126c", "shasum": "" }, "require": { @@ -8201,8 +8270,7 @@ "ext-mbstring": "*", "illuminate/support": "^10.0|^11.0", "php": "^8.1", - "spatie/flare-client-php": "^1.3.5", - "spatie/ignition": "^1.13", + "spatie/ignition": "^1.15", "symfony/console": "^6.2.3|^7.0", "symfony/var-dumper": "^6.2.3|^7.0" }, @@ -8210,11 +8278,11 @@ "livewire/livewire": "^2.11|^3.3.5", "mockery/mockery": "^1.5.1", "openai-php/client": "^0.8.1", - "orchestra/testbench": "^8.0|^9.0", - "pestphp/pest": "^2.30", - "phpstan/extension-installer": "^1.2", + "orchestra/testbench": "8.22.3|^9.0", + "pestphp/pest": "^2.34", + "phpstan/extension-installer": "^1.3.1", "phpstan/phpstan-deprecation-rules": "^1.1.1", - "phpstan/phpstan-phpunit": "^1.3.3", + "phpstan/phpstan-phpunit": "^1.3.16", "vlucas/phpdotenv": "^5.5" }, "suggest": { @@ -8271,7 +8339,7 @@ "type": "github" } ], - "time": "2024-04-02T06:30:22+00:00" + "time": "2024-06-12T15:01:18+00:00" }, { "name": "spatie/laravel-package-tools", @@ -8470,16 +8538,16 @@ }, { "name": "symfony/console", - "version": "v6.4.4", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "0d9e4eb5ad413075624378f474c4167ea202de78" + "reference": "be5854cee0e8c7b110f00d695d11debdfa1a2a91" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/0d9e4eb5ad413075624378f474c4167ea202de78", - "reference": "0d9e4eb5ad413075624378f474c4167ea202de78", + "url": "https://api.github.com/repos/symfony/console/zipball/be5854cee0e8c7b110f00d695d11debdfa1a2a91", + "reference": "be5854cee0e8c7b110f00d695d11debdfa1a2a91", "shasum": "" }, "require": { @@ -8544,7 +8612,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.4.4" + "source": "https://github.com/symfony/console/tree/v6.4.8" }, "funding": [ { @@ -8560,7 +8628,7 @@ "type": "tidelift" } ], - "time": "2024-02-22T20:27:10+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/css-selector", @@ -8630,16 +8698,16 @@ }, { "name": "symfony/deprecation-contracts", - "version": "v3.4.0", + "version": "v3.5.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf" + "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/7c3aff79d10325257a001fcf92d991f24fc967cf", - "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", + "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", "shasum": "" }, "require": { @@ -8648,7 +8716,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.4-dev" + "dev-main": "3.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -8677,7 +8745,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.4.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.0" }, "funding": [ { @@ -8693,20 +8761,20 @@ "type": "tidelift" } ], - "time": "2023-05-23T14:45:45+00:00" + "time": "2024-04-18T09:32:20+00:00" }, { "name": "symfony/error-handler", - "version": "v6.4.4", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "c725219bdf2afc59423c32793d5019d2a904e13a" + "reference": "ef836152bf13472dc5fb5b08b0c0c4cfeddc0fcc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/c725219bdf2afc59423c32793d5019d2a904e13a", - "reference": "c725219bdf2afc59423c32793d5019d2a904e13a", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/ef836152bf13472dc5fb5b08b0c0c4cfeddc0fcc", + "reference": "ef836152bf13472dc5fb5b08b0c0c4cfeddc0fcc", "shasum": "" }, "require": { @@ -8752,7 +8820,7 @@ "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.4.4" + "source": "https://github.com/symfony/error-handler/tree/v6.4.8" }, "funding": [ { @@ -8768,20 +8836,20 @@ "type": "tidelift" } ], - "time": "2024-02-22T20:27:10+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v6.4.3", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "ae9d3a6f3003a6caf56acd7466d8d52378d44fef" + "reference": "8d7507f02b06e06815e56bb39aa0128e3806208b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/ae9d3a6f3003a6caf56acd7466d8d52378d44fef", - "reference": "ae9d3a6f3003a6caf56acd7466d8d52378d44fef", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/8d7507f02b06e06815e56bb39aa0128e3806208b", + "reference": "8d7507f02b06e06815e56bb39aa0128e3806208b", "shasum": "" }, "require": { @@ -8832,7 +8900,7 @@ "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.4.3" + "source": "https://github.com/symfony/event-dispatcher/tree/v6.4.8" }, "funding": [ { @@ -8848,20 +8916,20 @@ "type": "tidelift" } ], - "time": "2024-01-23T14:51:35+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.4.0", + "version": "v3.5.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "a76aed96a42d2b521153fb382d418e30d18b59df" + "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/a76aed96a42d2b521153fb382d418e30d18b59df", - "reference": "a76aed96a42d2b521153fb382d418e30d18b59df", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/8f93aec25d41b72493c6ddff14e916177c9efc50", + "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50", "shasum": "" }, "require": { @@ -8871,7 +8939,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.4-dev" + "dev-main": "3.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -8908,7 +8976,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.4.0" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.0" }, "funding": [ { @@ -8924,20 +8992,20 @@ "type": "tidelift" } ], - "time": "2023-05-23T14:45:45+00:00" + "time": "2024-04-18T09:32:20+00:00" }, { "name": "symfony/finder", - "version": "v6.4.0", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "11d736e97f116ac375a81f96e662911a34cd50ce" + "reference": "3ef977a43883215d560a2cecb82ec8e62131471c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/11d736e97f116ac375a81f96e662911a34cd50ce", - "reference": "11d736e97f116ac375a81f96e662911a34cd50ce", + "url": "https://api.github.com/repos/symfony/finder/zipball/3ef977a43883215d560a2cecb82ec8e62131471c", + "reference": "3ef977a43883215d560a2cecb82ec8e62131471c", "shasum": "" }, "require": { @@ -8972,7 +9040,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.4.0" + "source": "https://github.com/symfony/finder/tree/v6.4.8" }, "funding": [ { @@ -8988,20 +9056,20 @@ "type": "tidelift" } ], - "time": "2023-10-31T17:30:12+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/http-foundation", - "version": "v6.4.4", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "ebc713bc6e6f4b53f46539fc158be85dfcd77304" + "reference": "27de8cc95e11db7a50b027e71caaab9024545947" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/ebc713bc6e6f4b53f46539fc158be85dfcd77304", - "reference": "ebc713bc6e6f4b53f46539fc158be85dfcd77304", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/27de8cc95e11db7a50b027e71caaab9024545947", + "reference": "27de8cc95e11db7a50b027e71caaab9024545947", "shasum": "" }, "require": { @@ -9049,7 +9117,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v6.4.4" + "source": "https://github.com/symfony/http-foundation/tree/v6.4.8" }, "funding": [ { @@ -9065,20 +9133,20 @@ "type": "tidelift" } ], - "time": "2024-02-08T15:01:18+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/http-kernel", - "version": "v6.4.5", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "f6947cb939d8efee137797382cb4db1af653ef75" + "reference": "6c519aa3f32adcfd1d1f18d923f6b227d9acf3c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/f6947cb939d8efee137797382cb4db1af653ef75", - "reference": "f6947cb939d8efee137797382cb4db1af653ef75", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/6c519aa3f32adcfd1d1f18d923f6b227d9acf3c1", + "reference": "6c519aa3f32adcfd1d1f18d923f6b227d9acf3c1", "shasum": "" }, "require": { @@ -9133,6 +9201,7 @@ "symfony/translation-contracts": "^2.5|^3", "symfony/uid": "^5.4|^6.0|^7.0", "symfony/validator": "^6.4|^7.0", + "symfony/var-dumper": "^5.4|^6.4|^7.0", "symfony/var-exporter": "^6.2|^7.0", "twig/twig": "^2.13|^3.0.4" }, @@ -9162,7 +9231,7 @@ "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.4.5" + "source": "https://github.com/symfony/http-kernel/tree/v6.4.8" }, "funding": [ { @@ -9178,20 +9247,20 @@ "type": "tidelift" } ], - "time": "2024-03-04T21:00:47+00:00" + "time": "2024-06-02T16:06:25+00:00" }, { "name": "symfony/mailer", - "version": "v6.4.4", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/mailer.git", - "reference": "791c5d31a8204cf3db0c66faab70282307f4376b" + "reference": "76326421d44c07f7824b19487cfbf87870b37efc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/791c5d31a8204cf3db0c66faab70282307f4376b", - "reference": "791c5d31a8204cf3db0c66faab70282307f4376b", + "url": "https://api.github.com/repos/symfony/mailer/zipball/76326421d44c07f7824b19487cfbf87870b37efc", + "reference": "76326421d44c07f7824b19487cfbf87870b37efc", "shasum": "" }, "require": { @@ -9242,7 +9311,7 @@ "description": "Helps sending emails", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailer/tree/v6.4.4" + "source": "https://github.com/symfony/mailer/tree/v6.4.8" }, "funding": [ { @@ -9258,20 +9327,20 @@ "type": "tidelift" } ], - "time": "2024-02-03T21:33:47+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/mime", - "version": "v6.4.3", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "5017e0a9398c77090b7694be46f20eb796262a34" + "reference": "618597ab8b78ac86d1c75a9d0b35540cda074f33" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/5017e0a9398c77090b7694be46f20eb796262a34", - "reference": "5017e0a9398c77090b7694be46f20eb796262a34", + "url": "https://api.github.com/repos/symfony/mime/zipball/618597ab8b78ac86d1c75a9d0b35540cda074f33", + "reference": "618597ab8b78ac86d1c75a9d0b35540cda074f33", "shasum": "" }, "require": { @@ -9292,6 +9361,7 @@ "league/html-to-markdown": "^5.0", "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.4|^7.0", "symfony/property-access": "^5.4|^6.0|^7.0", "symfony/property-info": "^5.4|^6.0|^7.0", "symfony/serializer": "^6.3.2|^7.0" @@ -9326,7 +9396,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v6.4.3" + "source": "https://github.com/symfony/mime/tree/v6.4.8" }, "funding": [ { @@ -9342,7 +9412,7 @@ "type": "tidelift" } ], - "time": "2024-01-30T08:32:12+00:00" + "time": "2024-06-01T07:50:16+00:00" }, { "name": "symfony/polyfill-ctype", @@ -10057,16 +10127,16 @@ }, { "name": "symfony/process", - "version": "v6.4.4", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "710e27879e9be3395de2b98da3f52a946039f297" + "reference": "8d92dd79149f29e89ee0f480254db595f6a6a2c5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/710e27879e9be3395de2b98da3f52a946039f297", - "reference": "710e27879e9be3395de2b98da3f52a946039f297", + "url": "https://api.github.com/repos/symfony/process/zipball/8d92dd79149f29e89ee0f480254db595f6a6a2c5", + "reference": "8d92dd79149f29e89ee0f480254db595f6a6a2c5", "shasum": "" }, "require": { @@ -10098,7 +10168,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.4.4" + "source": "https://github.com/symfony/process/tree/v6.4.8" }, "funding": [ { @@ -10114,7 +10184,7 @@ "type": "tidelift" } ], - "time": "2024-02-20T12:31:00+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/psr-http-message-bridge", @@ -10207,16 +10277,16 @@ }, { "name": "symfony/routing", - "version": "v6.4.5", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "7fe30068e207d9c31c0138501ab40358eb2d49a4" + "reference": "8a40d0f9b01f0fbb80885d3ce0ad6714fb603a58" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/7fe30068e207d9c31c0138501ab40358eb2d49a4", - "reference": "7fe30068e207d9c31c0138501ab40358eb2d49a4", + "url": "https://api.github.com/repos/symfony/routing/zipball/8a40d0f9b01f0fbb80885d3ce0ad6714fb603a58", + "reference": "8a40d0f9b01f0fbb80885d3ce0ad6714fb603a58", "shasum": "" }, "require": { @@ -10270,7 +10340,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v6.4.5" + "source": "https://github.com/symfony/routing/tree/v6.4.8" }, "funding": [ { @@ -10286,25 +10356,26 @@ "type": "tidelift" } ], - "time": "2024-02-27T12:33:30+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.4.1", + "version": "v3.5.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "fe07cbc8d837f60caf7018068e350cc5163681a0" + "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/fe07cbc8d837f60caf7018068e350cc5163681a0", - "reference": "fe07cbc8d837f60caf7018068e350cc5163681a0", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/bd1d9e59a81d8fa4acdcea3f617c581f7475a80f", + "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f", "shasum": "" }, "require": { "php": ">=8.1", - "psr/container": "^1.1|^2.0" + "psr/container": "^1.1|^2.0", + "symfony/deprecation-contracts": "^2.5|^3" }, "conflict": { "ext-psr": "<1.1|>=2" @@ -10312,7 +10383,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.4-dev" + "dev-main": "3.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -10352,7 +10423,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.4.1" + "source": "https://github.com/symfony/service-contracts/tree/v3.5.0" }, "funding": [ { @@ -10368,20 +10439,20 @@ "type": "tidelift" } ], - "time": "2023-12-26T14:02:43+00:00" + "time": "2024-04-18T09:32:20+00:00" }, { "name": "symfony/string", - "version": "v6.4.4", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "4e465a95bdc32f49cf4c7f07f751b843bbd6dcd9" + "reference": "a147c0f826c4a1f3afb763ab8e009e37c877a44d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/4e465a95bdc32f49cf4c7f07f751b843bbd6dcd9", - "reference": "4e465a95bdc32f49cf4c7f07f751b843bbd6dcd9", + "url": "https://api.github.com/repos/symfony/string/zipball/a147c0f826c4a1f3afb763ab8e009e37c877a44d", + "reference": "a147c0f826c4a1f3afb763ab8e009e37c877a44d", "shasum": "" }, "require": { @@ -10438,7 +10509,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.4.4" + "source": "https://github.com/symfony/string/tree/v6.4.8" }, "funding": [ { @@ -10454,20 +10525,20 @@ "type": "tidelift" } ], - "time": "2024-02-01T13:16:41+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/translation", - "version": "v6.4.4", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "bce6a5a78e94566641b2594d17e48b0da3184a8e" + "reference": "a002933b13989fc4bd0b58e04bf7eec5210e438a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/bce6a5a78e94566641b2594d17e48b0da3184a8e", - "reference": "bce6a5a78e94566641b2594d17e48b0da3184a8e", + "url": "https://api.github.com/repos/symfony/translation/zipball/a002933b13989fc4bd0b58e04bf7eec5210e438a", + "reference": "a002933b13989fc4bd0b58e04bf7eec5210e438a", "shasum": "" }, "require": { @@ -10533,7 +10604,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v6.4.4" + "source": "https://github.com/symfony/translation/tree/v6.4.8" }, "funding": [ { @@ -10549,20 +10620,20 @@ "type": "tidelift" } ], - "time": "2024-02-20T13:16:58+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/translation-contracts", - "version": "v3.4.1", + "version": "v3.5.0", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "06450585bf65e978026bda220cdebca3f867fde7" + "reference": "b9d2189887bb6b2e0367a9fc7136c5239ab9b05a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/06450585bf65e978026bda220cdebca3f867fde7", - "reference": "06450585bf65e978026bda220cdebca3f867fde7", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/b9d2189887bb6b2e0367a9fc7136c5239ab9b05a", + "reference": "b9d2189887bb6b2e0367a9fc7136c5239ab9b05a", "shasum": "" }, "require": { @@ -10571,7 +10642,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.4-dev" + "dev-main": "3.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -10611,7 +10682,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.4.1" + "source": "https://github.com/symfony/translation-contracts/tree/v3.5.0" }, "funding": [ { @@ -10627,20 +10698,20 @@ "type": "tidelift" } ], - "time": "2023-12-26T14:02:43+00:00" + "time": "2024-04-18T09:32:20+00:00" }, { "name": "symfony/uid", - "version": "v6.4.3", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/uid.git", - "reference": "1d31267211cc3a2fff32bcfc7c1818dac41b6fc0" + "reference": "35904eca37a84bb764c560cbfcac9f0ac2bcdbdf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/uid/zipball/1d31267211cc3a2fff32bcfc7c1818dac41b6fc0", - "reference": "1d31267211cc3a2fff32bcfc7c1818dac41b6fc0", + "url": "https://api.github.com/repos/symfony/uid/zipball/35904eca37a84bb764c560cbfcac9f0ac2bcdbdf", + "reference": "35904eca37a84bb764c560cbfcac9f0ac2bcdbdf", "shasum": "" }, "require": { @@ -10685,7 +10756,7 @@ "uuid" ], "support": { - "source": "https://github.com/symfony/uid/tree/v6.4.3" + "source": "https://github.com/symfony/uid/tree/v6.4.8" }, "funding": [ { @@ -10701,20 +10772,20 @@ "type": "tidelift" } ], - "time": "2024-01-23T14:51:35+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/var-dumper", - "version": "v6.4.4", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "b439823f04c98b84d4366c79507e9da6230944b1" + "reference": "ad23ca4312395f0a8a8633c831ef4c4ee542ed25" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/b439823f04c98b84d4366c79507e9da6230944b1", - "reference": "b439823f04c98b84d4366c79507e9da6230944b1", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/ad23ca4312395f0a8a8633c831ef4c4ee542ed25", + "reference": "ad23ca4312395f0a8a8633c831ef4c4ee542ed25", "shasum": "" }, "require": { @@ -10770,7 +10841,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.4.4" + "source": "https://github.com/symfony/var-dumper/tree/v6.4.8" }, "funding": [ { @@ -10786,7 +10857,7 @@ "type": "tidelift" } ], - "time": "2024-02-15T11:23:52+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "tecnickcom/tc-lib-barcode", @@ -11702,16 +11773,16 @@ }, { "name": "amphp/byte-stream", - "version": "v1.8.1", + "version": "v1.8.2", "source": { "type": "git", "url": "https://github.com/amphp/byte-stream.git", - "reference": "acbd8002b3536485c997c4e019206b3f10ca15bd" + "reference": "4f0e968ba3798a423730f567b1b50d3441c16ddc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/amphp/byte-stream/zipball/acbd8002b3536485c997c4e019206b3f10ca15bd", - "reference": "acbd8002b3536485c997c4e019206b3f10ca15bd", + "url": "https://api.github.com/repos/amphp/byte-stream/zipball/4f0e968ba3798a423730f567b1b50d3441c16ddc", + "reference": "4f0e968ba3798a423730f567b1b50d3441c16ddc", "shasum": "" }, "require": { @@ -11727,11 +11798,6 @@ "psalm/phar": "^3.11.4" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, "autoload": { "files": [ "lib/functions.php" @@ -11755,7 +11821,7 @@ } ], "description": "A stream abstraction to make working with non-blocking I/O simple.", - "homepage": "http://amphp.org/byte-stream", + "homepage": "https://amphp.org/byte-stream", "keywords": [ "amp", "amphp", @@ -11765,9 +11831,8 @@ "stream" ], "support": { - "irc": "irc://irc.freenode.org/amphp", "issues": "https://github.com/amphp/byte-stream/issues", - "source": "https://github.com/amphp/byte-stream/tree/v1.8.1" + "source": "https://github.com/amphp/byte-stream/tree/v1.8.2" }, "funding": [ { @@ -11775,7 +11840,7 @@ "type": "github" } ], - "time": "2021-03-30T17:13:30+00:00" + "time": "2024-04-13T18:00:56+00:00" }, { "name": "brianium/paratest", @@ -11869,6 +11934,70 @@ ], "time": "2024-03-13T06:54:29+00:00" }, + { + "name": "clue/ndjson-react", + "version": "v1.3.0", + "source": { + "type": "git", + "url": "https://github.com/clue/reactphp-ndjson.git", + "reference": "392dc165fce93b5bb5c637b67e59619223c931b0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/clue/reactphp-ndjson/zipball/392dc165fce93b5bb5c637b67e59619223c931b0", + "reference": "392dc165fce93b5bb5c637b67e59619223c931b0", + "shasum": "" + }, + "require": { + "php": ">=5.3", + "react/stream": "^1.2" + }, + "require-dev": { + "phpunit/phpunit": "^9.5 || ^5.7 || ^4.8.35", + "react/event-loop": "^1.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Clue\\React\\NDJson\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering" + } + ], + "description": "Streaming newline-delimited JSON (NDJSON) parser and encoder for ReactPHP.", + "homepage": "https://github.com/clue/reactphp-ndjson", + "keywords": [ + "NDJSON", + "json", + "jsonlines", + "newline", + "reactphp", + "streaming" + ], + "support": { + "issues": "https://github.com/clue/reactphp-ndjson/issues", + "source": "https://github.com/clue/reactphp-ndjson/tree/v1.3.0" + }, + "funding": [ + { + "url": "https://clue.engineering/support", + "type": "custom" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "time": "2022-12-23T10:58:28+00:00" + }, { "name": "cmgmyr/phploc", "version": "8.0.3", @@ -11936,16 +12065,16 @@ }, { "name": "composer/pcre", - "version": "3.1.3", + "version": "3.1.4", "source": { "type": "git", "url": "https://github.com/composer/pcre.git", - "reference": "5b16e25a5355f1f3afdfc2f954a0a80aec4826a8" + "reference": "04229f163664973f68f38f6f73d917799168ef24" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/pcre/zipball/5b16e25a5355f1f3afdfc2f954a0a80aec4826a8", - "reference": "5b16e25a5355f1f3afdfc2f954a0a80aec4826a8", + "url": "https://api.github.com/repos/composer/pcre/zipball/04229f163664973f68f38f6f73d917799168ef24", + "reference": "04229f163664973f68f38f6f73d917799168ef24", "shasum": "" }, "require": { @@ -11987,7 +12116,7 @@ ], "support": { "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.1.3" + "source": "https://github.com/composer/pcre/tree/3.1.4" }, "funding": [ { @@ -12003,7 +12132,7 @@ "type": "tidelift" } ], - "time": "2024-03-19T10:26:25+00:00" + "time": "2024-05-27T13:40:54+00:00" }, { "name": "composer/semver", @@ -12088,16 +12217,16 @@ }, { "name": "composer/xdebug-handler", - "version": "3.0.4", + "version": "3.0.5", "source": { "type": "git", "url": "https://github.com/composer/xdebug-handler.git", - "reference": "4f988f8fdf580d53bdb2d1278fe93d1ed5462255" + "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/4f988f8fdf580d53bdb2d1278fe93d1ed5462255", - "reference": "4f988f8fdf580d53bdb2d1278fe93d1ed5462255", + "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/6c1925561632e83d60a44492e0b344cf48ab85ef", + "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef", "shasum": "" }, "require": { @@ -12134,7 +12263,7 @@ "support": { "irc": "ircs://irc.libera.chat:6697/composer", "issues": "https://github.com/composer/xdebug-handler/issues", - "source": "https://github.com/composer/xdebug-handler/tree/3.0.4" + "source": "https://github.com/composer/xdebug-handler/tree/3.0.5" }, "funding": [ { @@ -12150,7 +12279,7 @@ "type": "tidelift" } ], - "time": "2024-03-26T18:29:49+00:00" + "time": "2024-05-06T16:37:16+00:00" }, { "name": "dealerdirect/phpcodesniffer-composer-installer", @@ -12267,6 +12396,53 @@ }, "time": "2019-12-04T15:06:13+00:00" }, + { + "name": "evenement/evenement", + "version": "v3.0.2", + "source": { + "type": "git", + "url": "https://github.com/igorw/evenement.git", + "reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/igorw/evenement/zipball/0a16b0d71ab13284339abb99d9d2bd813640efbc", + "reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc", + "shasum": "" + }, + "require": { + "php": ">=7.0" + }, + "require-dev": { + "phpunit/phpunit": "^9 || ^6" + }, + "type": "library", + "autoload": { + "psr-4": { + "Evenement\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Igor Wiedler", + "email": "igor@wiedler.ch" + } + ], + "description": "Événement is a very simple event dispatching library for PHP", + "keywords": [ + "event-dispatcher", + "event-emitter" + ], + "support": { + "issues": "https://github.com/igorw/evenement/issues", + "source": "https://github.com/igorw/evenement/tree/v3.0.2" + }, + "time": "2023-08-08T05:53:35+00:00" + }, { "name": "fakerphp/faker", "version": "v1.23.1", @@ -12494,25 +12670,32 @@ }, { "name": "friendsofphp/php-cs-fixer", - "version": "v3.52.1", + "version": "v3.59.3", "source": { "type": "git", "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git", - "reference": "6e77207f0d851862ceeb6da63e6e22c01b1587bc" + "reference": "30ba9ecc2b0e5205e578fe29973c15653d9bfd29" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/6e77207f0d851862ceeb6da63e6e22c01b1587bc", - "reference": "6e77207f0d851862ceeb6da63e6e22c01b1587bc", + "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/30ba9ecc2b0e5205e578fe29973c15653d9bfd29", + "reference": "30ba9ecc2b0e5205e578fe29973c15653d9bfd29", "shasum": "" }, "require": { + "clue/ndjson-react": "^1.0", "composer/semver": "^3.4", "composer/xdebug-handler": "^3.0.3", "ext-filter": "*", "ext-json": "*", "ext-tokenizer": "*", + "fidry/cpu-core-counter": "^1.0", "php": "^7.4 || ^8.0", + "react/child-process": "^0.6.5", + "react/event-loop": "^1.0", + "react/promise": "^2.0 || ^3.0", + "react/socket": "^1.0", + "react/stream": "^1.0", "sebastian/diff": "^4.0 || ^5.0 || ^6.0", "symfony/console": "^5.4 || ^6.0 || ^7.0", "symfony/event-dispatcher": "^5.4 || ^6.0 || ^7.0", @@ -12526,15 +12709,16 @@ "symfony/stopwatch": "^5.4 || ^6.0 || ^7.0" }, "require-dev": { - "facile-it/paraunit": "^1.3 || ^2.0", + "facile-it/paraunit": "^1.3 || ^2.3", + "infection/infection": "^0.29.5", "justinrainbow/json-schema": "^5.2", "keradus/cli-executor": "^2.1", "mikey179/vfsstream": "^1.6.11", "php-coveralls/php-coveralls": "^2.7", "php-cs-fixer/accessible-object": "^1.1", - "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.4", - "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.4", - "phpunit/phpunit": "^9.6 || ^10.5.5 || ^11.0.2", + "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.5", + "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.5", + "phpunit/phpunit": "^9.6.19 || ^10.5.21 || ^11.2", "symfony/var-dumper": "^5.4 || ^6.0 || ^7.0", "symfony/yaml": "^5.4 || ^6.0 || ^7.0" }, @@ -12549,7 +12733,10 @@ "autoload": { "psr-4": { "PhpCsFixer\\": "src/" - } + }, + "exclude-from-classmap": [ + "src/Fixer/Internal/*" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -12574,7 +12761,7 @@ ], "support": { "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues", - "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.52.1" + "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.59.3" }, "funding": [ { @@ -12582,7 +12769,7 @@ "type": "github" } ], - "time": "2024-03-19T21:02:43+00:00" + "time": "2024-06-16T14:17:03+00:00" }, { "name": "hamcrest/hamcrest-php", @@ -12699,12 +12886,12 @@ "version": "v5.2.13", "source": { "type": "git", - "url": "https://github.com/justinrainbow/json-schema.git", + "url": "https://github.com/jsonrainbow/json-schema.git", "reference": "fbbe7e5d79f618997bc3332a6f49246036c45793" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/fbbe7e5d79f618997bc3332a6f49246036c45793", + "url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/fbbe7e5d79f618997bc3332a6f49246036c45793", "reference": "fbbe7e5d79f618997bc3332a6f49246036c45793", "shasum": "" }, @@ -12759,8 +12946,8 @@ "schema" ], "support": { - "issues": "https://github.com/justinrainbow/json-schema/issues", - "source": "https://github.com/justinrainbow/json-schema/tree/v5.2.13" + "issues": "https://github.com/jsonrainbow/json-schema/issues", + "source": "https://github.com/jsonrainbow/json-schema/tree/v5.2.13" }, "time": "2023-09-26T02:20:38+00:00" }, @@ -12848,16 +13035,16 @@ }, { "name": "mockery/mockery", - "version": "1.6.11", + "version": "1.6.12", "source": { "type": "git", "url": "https://github.com/mockery/mockery.git", - "reference": "81a161d0b135df89951abd52296adf97deb0723d" + "reference": "1f4efdd7d3beafe9807b08156dfcb176d18f1699" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mockery/mockery/zipball/81a161d0b135df89951abd52296adf97deb0723d", - "reference": "81a161d0b135df89951abd52296adf97deb0723d", + "url": "https://api.github.com/repos/mockery/mockery/zipball/1f4efdd7d3beafe9807b08156dfcb176d18f1699", + "reference": "1f4efdd7d3beafe9807b08156dfcb176d18f1699", "shasum": "" }, "require": { @@ -12927,20 +13114,20 @@ "security": "https://github.com/mockery/mockery/security/advisories", "source": "https://github.com/mockery/mockery" }, - "time": "2024-03-21T18:34:15+00:00" + "time": "2024-05-16T03:13:13+00:00" }, { "name": "myclabs/deep-copy", - "version": "1.11.1", + "version": "1.12.0", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c" + "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", - "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", + "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", "shasum": "" }, "require": { @@ -12948,11 +13135,12 @@ }, "conflict": { "doctrine/collections": "<1.6.8", - "doctrine/common": "<2.13.3 || >=3,<3.2.2" + "doctrine/common": "<2.13.3 || >=3 <3.2.2" }, "require-dev": { "doctrine/collections": "^1.6.8", "doctrine/common": "^2.13.3 || ^3.2.2", + "phpspec/prophecy": "^1.10", "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13" }, "type": "library", @@ -12978,7 +13166,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1" + "source": "https://github.com/myclabs/DeepCopy/tree/1.12.0" }, "funding": [ { @@ -12986,7 +13174,7 @@ "type": "tidelift" } ], - "time": "2023-03-08T13:26:56+00:00" + "time": "2024-06-12T14:39:25+00:00" }, { "name": "netresearch/jsonmapper", @@ -13041,16 +13229,16 @@ }, { "name": "nunomaduro/larastan", - "version": "v2.9.2", + "version": "v2.9.7", "source": { "type": "git", "url": "https://github.com/larastan/larastan.git", - "reference": "a79b46b96060504b400890674b83f66aa7f5db6d" + "reference": "5c805f636095cc2e0b659e3954775cf8f1dad1bb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/larastan/larastan/zipball/a79b46b96060504b400890674b83f66aa7f5db6d", - "reference": "a79b46b96060504b400890674b83f66aa7f5db6d", + "url": "https://api.github.com/repos/larastan/larastan/zipball/5c805f636095cc2e0b659e3954775cf8f1dad1bb", + "reference": "5c805f636095cc2e0b659e3954775cf8f1dad1bb", "shasum": "" }, "require": { @@ -13063,15 +13251,15 @@ "illuminate/pipeline": "^9.52.16 || ^10.28.0 || ^11.0", "illuminate/support": "^9.52.16 || ^10.28.0 || ^11.0", "php": "^8.0.2", - "phpmyadmin/sql-parser": "^5.8.2", - "phpstan/phpstan": "^1.10.50" + "phpmyadmin/sql-parser": "^5.9.0", + "phpstan/phpstan": "^1.11.1" }, "require-dev": { "doctrine/coding-standard": "^12.0", - "nikic/php-parser": "^4.17.1", - "orchestra/canvas": "^7.11.1 || ^8.11.0 || ^9.0.0", - "orchestra/testbench": "^7.33.0 || ^8.13.0 || ^9.0.0", - "phpunit/phpunit": "^9.6.13 || ^10.5" + "nikic/php-parser": "^4.19.1", + "orchestra/canvas": "^7.11.1 || ^8.11.0 || ^9.0.2", + "orchestra/testbench": "^7.33.0 || ^8.13.0 || ^9.0.3", + "phpunit/phpunit": "^9.6.13 || ^10.5.16" }, "suggest": { "orchestra/testbench": "Using Larastan for analysing a package needs Testbench" @@ -13119,7 +13307,7 @@ ], "support": { "issues": "https://github.com/larastan/larastan/issues", - "source": "https://github.com/larastan/larastan/tree/v2.9.2" + "source": "https://github.com/larastan/larastan/tree/v2.9.7" }, "funding": [ { @@ -13140,7 +13328,7 @@ } ], "abandoned": "larastan/larastan", - "time": "2024-02-27T03:16:03+00:00" + "time": "2024-05-27T18:33:26+00:00" }, { "name": "nunomaduro/phpinsights", @@ -13724,16 +13912,16 @@ }, { "name": "phpstan/phpstan", - "version": "1.10.66", + "version": "1.11.5", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "94779c987e4ebd620025d9e5fdd23323903950bd" + "reference": "490f0ae1c92b082f154681d7849aee776a7c1443" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/94779c987e4ebd620025d9e5fdd23323903950bd", - "reference": "94779c987e4ebd620025d9e5fdd23323903950bd", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/490f0ae1c92b082f154681d7849aee776a7c1443", + "reference": "490f0ae1c92b082f154681d7849aee776a7c1443", "shasum": "" }, "require": { @@ -13776,13 +13964,9 @@ { "url": "https://github.com/phpstan", "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan", - "type": "tidelift" } ], - "time": "2024-03-28T16:17:31+00:00" + "time": "2024-06-17T15:10:54+00:00" }, { "name": "phpunit/php-code-coverage", @@ -14165,16 +14349,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.18", + "version": "9.6.19", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "32c2c2d6580b1d8ab3c10b1e9e4dc263cc69bb04" + "reference": "a1a54a473501ef4cdeaae4e06891674114d79db8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/32c2c2d6580b1d8ab3c10b1e9e4dc263cc69bb04", - "reference": "32c2c2d6580b1d8ab3c10b1e9e4dc263cc69bb04", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a1a54a473501ef4cdeaae4e06891674114d79db8", + "reference": "a1a54a473501ef4cdeaae4e06891674114d79db8", "shasum": "" }, "require": { @@ -14248,7 +14432,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.18" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.19" }, "funding": [ { @@ -14264,48 +14448,578 @@ "type": "tidelift" } ], - "time": "2024-03-21T12:07:32+00:00" + "time": "2024-04-05T04:35:58+00:00" }, { - "name": "sebastian/cli-parser", - "version": "1.0.2", + "name": "react/cache", + "version": "v1.2.0", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/cli-parser.git", - "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b" + "url": "https://github.com/reactphp/cache.git", + "reference": "d47c472b64aa5608225f47965a484b75c7817d5b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2b56bea83a09de3ac06bb18b92f068e60cc6f50b", - "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b", + "url": "https://api.github.com/repos/reactphp/cache/zipball/d47c472b64aa5608225f47965a484b75c7817d5b", + "reference": "d47c472b64aa5608225f47965a484b75c7817d5b", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=5.3.0", + "react/promise": "^3.0 || ^2.0 || ^1.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^9.5 || ^5.7 || ^4.8.35" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, "autoload": { - "classmap": [ - "src/" - ] + "psr-4": { + "React\\Cache\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "Async, Promise-based cache interface for ReactPHP", + "keywords": [ + "cache", + "caching", + "promise", + "reactphp" + ], + "support": { + "issues": "https://github.com/reactphp/cache/issues", + "source": "https://github.com/reactphp/cache/tree/v1.2.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "time": "2022-11-30T15:59:55+00:00" + }, + { + "name": "react/child-process", + "version": "v0.6.5", + "source": { + "type": "git", + "url": "https://github.com/reactphp/child-process.git", + "reference": "e71eb1aa55f057c7a4a0d08d06b0b0a484bead43" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/child-process/zipball/e71eb1aa55f057c7a4a0d08d06b0b0a484bead43", + "reference": "e71eb1aa55f057c7a4a0d08d06b0b0a484bead43", + "shasum": "" + }, + "require": { + "evenement/evenement": "^3.0 || ^2.0 || ^1.0", + "php": ">=5.3.0", + "react/event-loop": "^1.2", + "react/stream": "^1.2" + }, + "require-dev": { + "phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.35", + "react/socket": "^1.8", + "sebastian/environment": "^5.0 || ^3.0 || ^2.0 || ^1.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "React\\ChildProcess\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "Event-driven library for executing child processes with ReactPHP.", + "keywords": [ + "event-driven", + "process", + "reactphp" + ], + "support": { + "issues": "https://github.com/reactphp/child-process/issues", + "source": "https://github.com/reactphp/child-process/tree/v0.6.5" + }, + "funding": [ + { + "url": "https://github.com/WyriHaximus", + "type": "github" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "time": "2022-09-16T13:41:56+00:00" + }, + { + "name": "react/dns", + "version": "v1.13.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/dns.git", + "reference": "eb8ae001b5a455665c89c1df97f6fb682f8fb0f5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/dns/zipball/eb8ae001b5a455665c89c1df97f6fb682f8fb0f5", + "reference": "eb8ae001b5a455665c89c1df97f6fb682f8fb0f5", + "shasum": "" + }, + "require": { + "php": ">=5.3.0", + "react/cache": "^1.0 || ^0.6 || ^0.5", + "react/event-loop": "^1.2", + "react/promise": "^3.2 || ^2.7 || ^1.2.1" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36", + "react/async": "^4.3 || ^3 || ^2", + "react/promise-timer": "^1.11" + }, + "type": "library", + "autoload": { + "psr-4": { + "React\\Dns\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "Async DNS resolver for ReactPHP", + "keywords": [ + "async", + "dns", + "dns-resolver", + "reactphp" + ], + "support": { + "issues": "https://github.com/reactphp/dns/issues", + "source": "https://github.com/reactphp/dns/tree/v1.13.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "time": "2024-06-13T14:18:03+00:00" + }, + { + "name": "react/event-loop", + "version": "v1.5.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/event-loop.git", + "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/event-loop/zipball/bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354", + "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36" + }, + "suggest": { + "ext-pcntl": "For signal handling support when using the StreamSelectLoop" + }, + "type": "library", + "autoload": { + "psr-4": { + "React\\EventLoop\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "ReactPHP's core reactor event loop that libraries can use for evented I/O.", + "keywords": [ + "asynchronous", + "event-loop" + ], + "support": { + "issues": "https://github.com/reactphp/event-loop/issues", + "source": "https://github.com/reactphp/event-loop/tree/v1.5.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "time": "2023-11-13T13:48:05+00:00" + }, + { + "name": "react/promise", + "version": "v3.2.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/promise.git", + "reference": "8a164643313c71354582dc850b42b33fa12a4b63" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/promise/zipball/8a164643313c71354582dc850b42b33fa12a4b63", + "reference": "8a164643313c71354582dc850b42b33fa12a4b63", + "shasum": "" + }, + "require": { + "php": ">=7.1.0" + }, + "require-dev": { + "phpstan/phpstan": "1.10.39 || 1.4.10", + "phpunit/phpunit": "^9.6 || ^7.5" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions_include.php" + ], + "psr-4": { + "React\\Promise\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "A lightweight implementation of CommonJS Promises/A for PHP", + "keywords": [ + "promise", + "promises" + ], + "support": { + "issues": "https://github.com/reactphp/promise/issues", + "source": "https://github.com/reactphp/promise/tree/v3.2.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "time": "2024-05-24T10:39:05+00:00" + }, + { + "name": "react/socket", + "version": "v1.15.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/socket.git", + "reference": "216d3aec0b87f04a40ca04f481e6af01bdd1d038" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/socket/zipball/216d3aec0b87f04a40ca04f481e6af01bdd1d038", + "reference": "216d3aec0b87f04a40ca04f481e6af01bdd1d038", + "shasum": "" + }, + "require": { + "evenement/evenement": "^3.0 || ^2.0 || ^1.0", + "php": ">=5.3.0", + "react/dns": "^1.11", + "react/event-loop": "^1.2", + "react/promise": "^3 || ^2.6 || ^1.2.1", + "react/stream": "^1.2" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36", + "react/async": "^4 || ^3 || ^2", + "react/promise-stream": "^1.4", + "react/promise-timer": "^1.10" + }, + "type": "library", + "autoload": { + "psr-4": { + "React\\Socket\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "Async, streaming plaintext TCP/IP and secure TLS socket server and client connections for ReactPHP", + "keywords": [ + "Connection", + "Socket", + "async", + "reactphp", + "stream" + ], + "support": { + "issues": "https://github.com/reactphp/socket/issues", + "source": "https://github.com/reactphp/socket/tree/v1.15.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "time": "2023-12-15T11:02:10+00:00" + }, + { + "name": "react/stream", + "version": "v1.4.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/stream.git", + "reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/stream/zipball/1e5b0acb8fe55143b5b426817155190eb6f5b18d", + "reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d", + "shasum": "" + }, + "require": { + "evenement/evenement": "^3.0 || ^2.0 || ^1.0", + "php": ">=5.3.8", + "react/event-loop": "^1.2" + }, + "require-dev": { + "clue/stream-filter": "~1.2", + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36" + }, + "type": "library", + "autoload": { + "psr-4": { + "React\\Stream\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "Event-driven readable and writable streams for non-blocking I/O in ReactPHP", + "keywords": [ + "event-driven", + "io", + "non-blocking", + "pipe", + "reactphp", + "readable", + "stream", + "writable" + ], + "support": { + "issues": "https://github.com/reactphp/stream/issues", + "source": "https://github.com/reactphp/stream/tree/v1.4.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "time": "2024-06-11T12:45:25+00:00" + }, + { + "name": "sebastian/cli-parser", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/cli-parser.git", + "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2b56bea83a09de3ac06bb18b92f068e60cc6f50b", + "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.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", @@ -15016,16 +15730,16 @@ }, { "name": "spatie/array-to-xml", - "version": "3.2.3", + "version": "3.3.0", "source": { "type": "git", "url": "https://github.com/spatie/array-to-xml.git", - "reference": "c95fd4db94ec199f798d4b5b4a81757bd20d88ab" + "reference": "f56b220fe2db1ade4c88098d83413ebdfc3bf876" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/array-to-xml/zipball/c95fd4db94ec199f798d4b5b4a81757bd20d88ab", - "reference": "c95fd4db94ec199f798d4b5b4a81757bd20d88ab", + "url": "https://api.github.com/repos/spatie/array-to-xml/zipball/f56b220fe2db1ade4c88098d83413ebdfc3bf876", + "reference": "f56b220fe2db1ade4c88098d83413ebdfc3bf876", "shasum": "" }, "require": { @@ -15038,6 +15752,11 @@ "spatie/pest-plugin-snapshots": "^1.1" }, "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, "autoload": { "psr-4": { "Spatie\\ArrayToXml\\": "src" @@ -15063,7 +15782,7 @@ "xml" ], "support": { - "source": "https://github.com/spatie/array-to-xml/tree/3.2.3" + "source": "https://github.com/spatie/array-to-xml/tree/3.3.0" }, "funding": [ { @@ -15075,20 +15794,20 @@ "type": "github" } ], - "time": "2024-02-07T10:39:02+00:00" + "time": "2024-05-01T10:20:27+00:00" }, { "name": "squizlabs/php_codesniffer", - "version": "3.9.1", + "version": "3.10.1", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git", - "reference": "267a4405fff1d9c847134db3a3c92f1ab7f77909" + "reference": "8f90f7a53ce271935282967f53d0894f8f1ff877" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/267a4405fff1d9c847134db3a3c92f1ab7f77909", - "reference": "267a4405fff1d9c847134db3a3c92f1ab7f77909", + "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/8f90f7a53ce271935282967f53d0894f8f1ff877", + "reference": "8f90f7a53ce271935282967f53d0894f8f1ff877", "shasum": "" }, "require": { @@ -15155,20 +15874,20 @@ "type": "open_collective" } ], - "time": "2024-03-31T21:03:09+00:00" + "time": "2024-05-22T21:24:41+00:00" }, { "name": "symfony/cache", - "version": "v6.4.4", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "0ef36534694c572ff526d91c7181f3edede176e7" + "reference": "287142df5579ce223c485b3872df3efae8390984" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/0ef36534694c572ff526d91c7181f3edede176e7", - "reference": "0ef36534694c572ff526d91c7181f3edede176e7", + "url": "https://api.github.com/repos/symfony/cache/zipball/287142df5579ce223c485b3872df3efae8390984", + "reference": "287142df5579ce223c485b3872df3efae8390984", "shasum": "" }, "require": { @@ -15235,7 +15954,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v6.4.4" + "source": "https://github.com/symfony/cache/tree/v6.4.8" }, "funding": [ { @@ -15251,20 +15970,20 @@ "type": "tidelift" } ], - "time": "2024-02-22T20:27:10+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/cache-contracts", - "version": "v3.4.0", + "version": "v3.5.0", "source": { "type": "git", "url": "https://github.com/symfony/cache-contracts.git", - "reference": "1d74b127da04ffa87aa940abe15446fa89653778" + "reference": "df6a1a44c890faded49a5fca33c2d5c5fd3c2197" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/1d74b127da04ffa87aa940abe15446fa89653778", - "reference": "1d74b127da04ffa87aa940abe15446fa89653778", + "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/df6a1a44c890faded49a5fca33c2d5c5fd3c2197", + "reference": "df6a1a44c890faded49a5fca33c2d5c5fd3c2197", "shasum": "" }, "require": { @@ -15274,7 +15993,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.4-dev" + "dev-main": "3.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -15311,7 +16030,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/cache-contracts/tree/v3.4.0" + "source": "https://github.com/symfony/cache-contracts/tree/v3.5.0" }, "funding": [ { @@ -15327,7 +16046,7 @@ "type": "tidelift" } ], - "time": "2023-09-25T12:52:38+00:00" + "time": "2024-04-18T09:32:20+00:00" }, { "name": "symfony/dom-crawler", @@ -15405,16 +16124,16 @@ }, { "name": "symfony/filesystem", - "version": "v6.4.3", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "7f3b1755eb49297a0827a7575d5d2b2fd11cc9fb" + "reference": "4d37529150e7081c51b3c5d5718c55a04a9503f3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/7f3b1755eb49297a0827a7575d5d2b2fd11cc9fb", - "reference": "7f3b1755eb49297a0827a7575d5d2b2fd11cc9fb", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/4d37529150e7081c51b3c5d5718c55a04a9503f3", + "reference": "4d37529150e7081c51b3c5d5718c55a04a9503f3", "shasum": "" }, "require": { @@ -15422,6 +16141,9 @@ "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.8" }, + "require-dev": { + "symfony/process": "^5.4|^6.4|^7.0" + }, "type": "library", "autoload": { "psr-4": { @@ -15448,7 +16170,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v6.4.3" + "source": "https://github.com/symfony/filesystem/tree/v6.4.8" }, "funding": [ { @@ -15464,27 +16186,27 @@ "type": "tidelift" } ], - "time": "2024-01-23T14:51:35+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/http-client", - "version": "v6.4.5", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/http-client.git", - "reference": "f3c86a60a3615f466333a11fd42010d4382a82c7" + "reference": "61faba993e620fc22d4f0ab3b6bcf8fbb0d44b05" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/f3c86a60a3615f466333a11fd42010d4382a82c7", - "reference": "f3c86a60a3615f466333a11fd42010d4382a82c7", + "url": "https://api.github.com/repos/symfony/http-client/zipball/61faba993e620fc22d4f0ab3b6bcf8fbb0d44b05", + "reference": "61faba993e620fc22d4f0ab3b6bcf8fbb0d44b05", "shasum": "" }, "require": { "php": ">=8.1", "psr/log": "^1|^2|^3", "symfony/deprecation-contracts": "^2.5|^3", - "symfony/http-client-contracts": "^3", + "symfony/http-client-contracts": "^3.4.1", "symfony/service-contracts": "^2.5|^3" }, "conflict": { @@ -15502,7 +16224,7 @@ "amphp/http-client": "^4.2.1", "amphp/http-tunnel": "^1.0", "amphp/socket": "^1.1", - "guzzlehttp/promises": "^1.4", + "guzzlehttp/promises": "^1.4|^2.0", "nyholm/psr7": "^1.0", "php-http/httplug": "^1.0|^2.0", "psr/http-client": "^1.0", @@ -15541,7 +16263,7 @@ "http" ], "support": { - "source": "https://github.com/symfony/http-client/tree/v6.4.5" + "source": "https://github.com/symfony/http-client/tree/v6.4.8" }, "funding": [ { @@ -15557,20 +16279,20 @@ "type": "tidelift" } ], - "time": "2024-03-02T12:45:30+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/http-client-contracts", - "version": "v3.4.0", + "version": "v3.5.0", "source": { "type": "git", "url": "https://github.com/symfony/http-client-contracts.git", - "reference": "1ee70e699b41909c209a0c930f11034b93578654" + "reference": "20414d96f391677bf80078aa55baece78b82647d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/1ee70e699b41909c209a0c930f11034b93578654", - "reference": "1ee70e699b41909c209a0c930f11034b93578654", + "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d", + "reference": "20414d96f391677bf80078aa55baece78b82647d", "shasum": "" }, "require": { @@ -15579,7 +16301,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.4-dev" + "dev-main": "3.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -15619,7 +16341,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/http-client-contracts/tree/v3.4.0" + "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0" }, "funding": [ { @@ -15635,20 +16357,20 @@ "type": "tidelift" } ], - "time": "2023-07-30T20:28:31+00:00" + "time": "2024-04-18T09:32:20+00:00" }, { "name": "symfony/options-resolver", - "version": "v6.4.0", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "22301f0e7fdeaacc14318928612dee79be99860e" + "reference": "22ab9e9101ab18de37839074f8a1197f55590c1b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/22301f0e7fdeaacc14318928612dee79be99860e", - "reference": "22301f0e7fdeaacc14318928612dee79be99860e", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/22ab9e9101ab18de37839074f8a1197f55590c1b", + "reference": "22ab9e9101ab18de37839074f8a1197f55590c1b", "shasum": "" }, "require": { @@ -15686,7 +16408,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v6.4.0" + "source": "https://github.com/symfony/options-resolver/tree/v6.4.8" }, "funding": [ { @@ -15702,7 +16424,7 @@ "type": "tidelift" } ], - "time": "2023-08-08T10:16:24+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/polyfill-php81", @@ -15782,16 +16504,16 @@ }, { "name": "symfony/stopwatch", - "version": "v6.4.3", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "416596166641f1f728b0a64f5b9dd07cceb410c1" + "reference": "63e069eb616049632cde9674c46957819454b8aa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/416596166641f1f728b0a64f5b9dd07cceb410c1", - "reference": "416596166641f1f728b0a64f5b9dd07cceb410c1", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/63e069eb616049632cde9674c46957819454b8aa", + "reference": "63e069eb616049632cde9674c46957819454b8aa", "shasum": "" }, "require": { @@ -15824,7 +16546,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v6.4.3" + "source": "https://github.com/symfony/stopwatch/tree/v6.4.8" }, "funding": [ { @@ -15840,20 +16562,20 @@ "type": "tidelift" } ], - "time": "2024-01-23T14:35:58+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/var-exporter", - "version": "v6.4.4", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "0bd342e24aef49fc82a21bd4eedd3e665d177e5b" + "reference": "792ca836f99b340f2e9ca9497c7953948c49a504" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/0bd342e24aef49fc82a21bd4eedd3e665d177e5b", - "reference": "0bd342e24aef49fc82a21bd4eedd3e665d177e5b", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/792ca836f99b340f2e9ca9497c7953948c49a504", + "reference": "792ca836f99b340f2e9ca9497c7953948c49a504", "shasum": "" }, "require": { @@ -15861,6 +16583,8 @@ "symfony/deprecation-contracts": "^2.5|^3" }, "require-dev": { + "symfony/property-access": "^6.4|^7.0", + "symfony/serializer": "^6.4|^7.0", "symfony/var-dumper": "^5.4|^6.0|^7.0" }, "type": "library", @@ -15899,7 +16623,7 @@ "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v6.4.4" + "source": "https://github.com/symfony/var-exporter/tree/v6.4.8" }, "funding": [ { @@ -15915,7 +16639,7 @@ "type": "tidelift" } ], - "time": "2024-02-26T08:37:45+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "theseer/tokenizer", @@ -15969,16 +16693,16 @@ }, { "name": "vimeo/psalm", - "version": "5.23.1", + "version": "5.24.0", "source": { "type": "git", "url": "https://github.com/vimeo/psalm.git", - "reference": "8471a896ccea3526b26d082f4461eeea467f10a4" + "reference": "462c80e31c34e58cc4f750c656be3927e80e550e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vimeo/psalm/zipball/8471a896ccea3526b26d082f4461eeea467f10a4", - "reference": "8471a896ccea3526b26d082f4461eeea467f10a4", + "url": "https://api.github.com/repos/vimeo/psalm/zipball/462c80e31c34e58cc4f750c656be3927e80e550e", + "reference": "462c80e31c34e58cc4f750c656be3927e80e550e", "shasum": "" }, "require": { @@ -16075,7 +16799,7 @@ "issues": "https://github.com/vimeo/psalm/issues", "source": "https://github.com/vimeo/psalm" }, - "time": "2024-03-11T20:33:46+00:00" + "time": "2024-05-01T19:32:08+00:00" } ], "aliases": [], @@ -16094,5 +16818,5 @@ "ext-pdo": "*" }, "platform-dev": [], - "plugin-api-version": "2.6.0" + "plugin-api-version": "2.3.0" } diff --git a/database/factories/LabelTemplateFactory.php b/database/factories/LabelTemplateFactory.php new file mode 100644 index 000000000000..37550d7ab20e --- /dev/null +++ b/database/factories/LabelTemplateFactory.php @@ -0,0 +1,413 @@ + + */ +class LabelTemplateFactory extends Factory +{ + /** + * Define the model's default state. + * + * @return array + */ + public function definition() + { + return [ + 'name' => $this->faker->word, + 'page_format' => 'LETTER', + 'page_orientation' => 'P', + 'column1_x' => $this->faker->randomFloat(2, 0, 6), + 'column2_x' => $this->faker->randomFloat(2, 0, 6), + 'row1_y' => $this->faker->randomFloat(2, 0, 6), + 'row2_y' => $this->faker->randomFloat(2, 0, 6), + 'label_width' => $this->faker->randomFloat(2, 0, 6), + 'label_height' => $this->faker->randomFloat(2, 0, 6), + 'barcode_size' => $this->faker->randomFloat(2, 0, 1), + 'barcode_margin' => $this->faker->randomFloat(2, 0, 1), + 'title_size' => $this->faker->randomFloat(2, 0, 1), + 'title_margin' => $this->faker->randomFloat(2, 0, 1), + 'field_size' => $this->faker->randomFloat(2, 0, 1), + 'field_margin' => $this->faker->randomFloat(2, 0, 1), + 'label_size' => $this->faker->randomFloat(2, 0, 1), + 'label_margin' => $this->faker->randomFloat(2, 0, 1), + 'tag_size' => $this->faker->randomFloat(2, 0, 1), + 'logo_max_width' => $this->faker->randomFloat(2, 0, 6), + 'logo_margin' => $this->faker->randomFloat(2, 0, 1), + 'measurement_unit' => 'in', + 'margin_top' => $this->faker->randomFloat(2, 0, 1), + 'margin_bottom' => $this->faker->randomFloat(2, 0, 1), + 'margin_left' => $this->faker->randomFloat(2, 0, 1), + 'margin_right' => $this->faker->randomFloat(2, 0, 1), + 'fields_supported' => 1, + 'tag_option' => 0, + 'one_d_barcode_option' => 1, + 'two_d_barcode_option' => 0, + 'logo_option' => 0, + 'title_option' => 1, + 'tape_height' => $this->faker->randomFloat(2, 0, 1), + "tape_width" => null, + 'tape_margin_sides' => $this->faker->randomFloat(2, 0, 1), + 'tape_margin_ends' => $this->faker->randomFloat(2, 0, 1), + 'tape_text_size_mod' => $this->faker->randomFloat(2, 0, 1), + 'columns' => null, + 'rows' => null, + ]; + } + + public function avery5267Template() { + return $this->state(function() { + return [ + 'name' => 'Avery 5267', + 'page_format' => 'LETTER', + 'page_orientation' => 'P', + 'column1_x' => 21.6, + 'column2_x' => 169.2, + 'row1_y' => 36.1, + 'row2_y' => 72.1, + 'label_width' => 126, + 'label_height' => 36, + 'barcode_size' => .175, + 'barcode_margin' => 0, + 'title_size' => .14, + 'title_margin' => null, + 'field_size' => .15, + 'field_margin' => null, + 'label_size' => null, + 'label_margin' => null, + 'tag_size' => null, + 'logo_max_width' => null, + 'logo_margin' => null, + 'measurement_unit' => 'in', + 'margin_top' => .02, + 'margin_bottom' => 0, + 'margin_left' => .04, + 'margin_right' => .04, + 'fields_supported' => 1, + 'tag_option' => 0, + 'one_d_barcode_option' => 1, + 'two_d_barcode_option' => 0, + 'logo_option' => 0, + 'title_option' => 1, + ]; + }); + } + public function avery5520Template(){ + return $this->state(function() { + return [ + 'name' => 'Avery 5520', + 'page_format' => 'LETTER', + 'page_orientation' => 'P', + 'column1_x' => 13.55, + 'column2_x' => 211.55, + 'row1_y' => 36.1, + 'row2_y' => 108.1, + 'label_width' => 189.35, + 'label_height' => 72, + 'barcode_size' => null, + 'barcode_margin' => .075, + 'title_size' => .14, + 'title_margin' => .04, + 'field_size' => .15, + 'field_margin' => null, + 'label_size' => .09, + 'label_margin' => -.015, + 'tag_size' => null, + 'logo_max_width' => null, + 'logo_margin' => null, + 'measurement_unit' => 'in', + 'margin_top' => .06, + 'margin_bottom' => .06, + 'margin_left' => .06, + 'margin_right' => .06, + 'fields_supported' => 3, + 'tag_option' => 0, + 'one_d_barcode_option' => 0, + 'two_d_barcode_option' => 1, + 'logo_option' => 0, + 'title_option' => 1, + ]; + }); + } + public function averyL7162_2DTemplate(){ + return $this->state(function() { + return [ + 'name' => 'Avery L7162 2D Barcode', + 'page_format' => 'A4', + 'page_orientation' => 'P', + 'column1_x' => 13.25, + 'column2_x' => 301.25, + 'row1_y' => 37, + 'row2_y' => 133, + 'label_width' => 280.8, + 'label_height' => 96, + 'barcode_size' => null, + 'barcode_margin' => 1.6, + 'title_size' => 4.2, + 'title_margin' => 1.4, + 'field_size' => 4.6, + 'field_margin' => .3, + 'label_size' => 2.2, + 'label_margin' => -.5, + 'tag_size' => 4.6, + 'logo_max_width' => null, + 'logo_margin' => null, + 'measurement_unit' => 'mm', + 'margin_top' => 1, + 'margin_bottom' => 1, + 'margin_left' => 1, + 'margin_right' => 1, + 'fields_supported' => 4, + 'tag_option' => 1, + 'one_d_barcode_option' => 0, + 'two_d_barcode_option' => 1, + 'logo_option' => 0, + 'title_option' => 1, + ]; + }); + } + public function averyL7162_1DTemplate(){ + return $this->state(function() { + return [ + 'name' => 'Avery L7162 1D Barcode', + 'page_format' => 'A4', + 'page_orientation' => 'P', + 'column1_x' => 13.25, + 'column2_x' => 301.25, + 'row1_y' => 37, + 'row2_y' => 133, + 'label_width' => 280.8, + 'label_height' => 96, + 'barcode_size' => 6, + 'barcode_margin' => 1.4, + 'title_size' => 4.2, + 'title_margin' => 1.2, + 'field_size' => 4.2, + 'field_margin' => .3, + 'label_size' => 2.2, + 'label_margin' => -.5, + 'tag_size' => 3.2, + 'logo_max_width' => 25, + 'logo_margin' => 2.2, + 'measurement_unit' => 'mm', + 'margin_top' => 1, + 'margin_bottom' => 0, + 'margin_left' => 1, + 'margin_right' => 1, + 'fields_supported' => 3, + 'tag_option' => 1, + 'one_d_barcode_option' => 1, + 'two_d_barcode_option' => 0, + 'logo_option' => 1, + 'title_option' => 1, + ]; + }); + } + public function averyL163Template(){ + return $this->state(function() { + return [ + 'name' => 'Avery L163 1D Barcode', + 'page_format' => 'A4', + 'page_orientation' => 'P', + 'column1_x' => 13.25, + 'column2_x' => 301.25, + 'row1_y' => 43.05, + 'row2_y' => 151.05, + 'label_width' => 280.8, + 'label_height' => 108, + 'barcode_size' => null, + 'barcode_margin' => 1.8, + 'title_size' => 5, + 'title_margin' => 1.8, + 'field_size' => 4.8, + 'field_margin' => .3, + 'label_size' => 2.35, + 'label_margin' => -.3, + 'tag_size' => 4.8, + 'logo_max_width' => null, + 'logo_margin' => null, + 'measurement_unit' => 'mm', + 'margin_top' => 1, + 'margin_bottom' => 1, + 'margin_left' => 1, + 'margin_right' => 1, + 'fields_supported' => 4, + 'tag_option' => 1, + 'one_d_barcode_option' => 0, + 'two_d_barcode_option' => 1, + 'logo_option' => 0, + 'title_option' => 1, + ]; + }); + } + public function brotherTze_12mmTemplate(){ + return $this->state(function() { + return [ + 'name' => 'Brother TZE 12mm ', + 'tape_height' => 12, + 'tape_margin_sides' => 3.2, + 'tape_margin_ends' => 3.2, + 'tape_text_size_mod' => 1, + 'barcode_size' => 1, + 'barcode_margin' => .3, + 'title_size' => null, + 'title_margin' => null, + 'field_size' => null, + 'field_margin' => null, + 'label_size' => null, + 'label_margin' => null, + 'tag_size' => null, + 'measurement_unit' => 'mm', + 'fields_supported' => 1, + 'tag_option' => 1, + 'one_d_barcode_option' => 1, + 'two_d_barcode_option' => 0, + 'logo_option' => 0, + 'title_option' => 0, + ]; + }); + } + public function brotherTze_18mmTemplate(){ + return $this->state(function() { + return [ + 'name' => 'Brother TZE 18mm ', + 'tape_height' => 18, + 'tape_width' => 50, + 'tape_margin_sides' => 3.2, + 'tape_margin_ends' => 3.2, + 'tape_text_size_mod' => 1, + 'barcode_size' => 3.2, + 'barcode_margin' => .3, + 'title_size' => null, + 'title_margin' => null, + 'field_size' => null, + 'field_margin' => null, + 'label_size' => null, + 'label_margin' => null, + 'tag_size' => null, + 'measurement_unit' => 'mm', + 'fields_supported' => 1, + 'tag_option' => 1, + 'one_d_barcode_option' => 1, + 'two_d_barcode_option' => 0, + 'logo_option' => 0, + 'title_option' => 0, + ]; + }); + } + public function brotherTze_24mmTemplate(){ + return $this->state(function() { + return [ + 'name' => 'Brother TZE 24mm ', + 'tape_height' => 24, + 'tape_width' => 65, + 'tape_margin_sides' => 3.2, + 'tape_margin_ends' => 3.2, + 'tape_text_size_mod' => null, + 'barcode_size' => null, + 'barcode_margin' => 1.4, + 'title_size' => .5, + 'title_margin' => null, + 'field_size' => 3.2, + 'field_margin' => .15, + 'label_size' => 2, + 'label_margin' => -.35, + 'tag_size' => 2.8, + 'measurement_unit' => 'mm', + 'fields_supported' => 3, + 'tag_option' => 1, + 'one_d_barcode_option' => 0, + 'two_d_barcode_option' => 1, + 'logo_option' => 0, + 'title_option' => 1, + ]; + }); + } + public function dymolabelWriter30252Template(){ + return $this->state(function() { + return [ + 'name' => 'Label Writer 30252 ', + 'tape_height' => 1.15, + 'tape_width' => 96.52, + 'tape_margin_sides' => .1, + 'tape_margin_ends' => .1, + 'tape_text_size_mod' => null, + 'barcode_size' => null, + 'barcode_margin' => 1.8, + 'title_size' => 2, + 'title_margin' => null, + 'field_size' => 3.2, + 'field_margin' => .15, + 'label_size' => 2, + 'label_margin' => -.35, + 'tag_size' => 2.8, + 'measurement_unit' => 'mm', + 'fields_supported' => 3, + 'tag_option' => 1, + 'one_d_barcode_option' => 1, + 'two_d_barcode_option' => 1, + 'logo_option' => 0, + 'title_option' => 1, + ]; + }); + } + public function dymolabelWriter1933081Template(){ + return $this->state(function() { + return [ + 'name' => 'Dymo Label Writer 1933081 ', + 'tape_height' => 25, + 'tape_width' => 89, + 'tape_margin_sides' => .1, + 'tape_margin_ends' => .1, + 'tape_text_size_mod' => null, + 'barcode_size' => null, + 'barcode_margin' => 1.8, + 'title_size' => 2.8, + 'title_margin' => .5, + 'field_size' => 2.8, + 'field_margin' => .15, + 'label_size' => 2.8, + 'label_margin' => -.35, + 'tag_size' => 2.8, + 'measurement_unit' => 'mm', + 'fields_supported' => 5, + 'tag_option' => 1, + 'one_d_barcode_option' => 1, + 'two_d_barcode_option' => 1, + 'logo_option' => 0, + 'title_option' => 1, + ]; + }); + } + public function dymolabelWriter2112283Template(){ + return $this->state(function() { + return [ + 'name' => 'Dymo Label Writer 2112283 ', + 'tape_height' => 54, + 'tape_width' => 25, + 'tape_margin_sides' => .1, + 'tape_margin_ends' => .1, + 'tape_text_size_mod' => null, + 'barcode_size' => null, + 'barcode_margin' => 1.8, + 'title_size' => 2.8, + 'title_margin' => .5, + 'field_size' => 2.8, + 'field_margin' => .15, + 'label_size' => 2.8, + 'label_margin' => -.35, + 'tag_size' => 2.8, + 'measurement_unit' => 'mm', + 'fields_supported' => 5, + 'tag_option' => 1, + 'one_d_barcode_option' => 1, + 'two_d_barcode_option' => 1, + 'logo_option' => 0, + 'title_option' => 1, + ]; + }); + } +} diff --git a/database/migrations/2024_06_04_001438_create_label_templates_table.php b/database/migrations/2024_06_04_001438_create_label_templates_table.php new file mode 100644 index 000000000000..f1b342a14bdc --- /dev/null +++ b/database/migrations/2024_06_04_001438_create_label_templates_table.php @@ -0,0 +1,585 @@ +id(); + $table->string('name'); + $table->string('label_type')->nullable(); + $table->string('page_format')->nullable(); + $table->string('page_orientation')->nullable(); + $table->decimal('column1_x',6, 3)->nullable(); + $table->decimal('column2_x', 6, 3)->nullable(); + $table->decimal('row1_y', 6, 3)->nullable(); + $table->decimal('row2_y', 6, 3)->nullable(); + $table->decimal('label_width', 6, 3)->nullable(); + $table->decimal('label_border', 6, 3)->nullable(); + $table->decimal('label_height', 6, 3)->nullable(); + $table->decimal('barcode_size', 6, 3)->nullable(); + $table->decimal('barcode_margin', 6, 3)->nullable(); + $table->decimal('title_size', 6, 3)->nullable(); + $table->decimal('title_margin', 6, 3)->nullable(); + $table->char('title_align', 1)->nullable(); + $table->decimal('field_size', 6, 3)->nullable(); + $table->decimal('field_margin', 6, 3)->nullable(); + $table->decimal('label_size', 6, 3)->nullable(); + $table->decimal('label_margin', 6, 3)->nullable(); + $table->decimal('label_index', 6, 3)->nullable(); + $table->decimal('tag_size', 6, 3)->nullable(); + $table->char('tag_align', 1)->nullable(); + $table->string('tag_position')->nullable(); + $table->decimal('logo_max_width', 6, 3)->nullable(); + $table->decimal('logo_margin', 6, 3)->nullable(); + $table->string('measurement_unit')->nullable(); + $table->decimal('margin_top', 6, 3)->nullable(); + $table->decimal('margin_bottom', 6, 3)->nullable(); + $table->decimal('margin_left', 6, 3)->nullable(); + $table->decimal('margin_right', 6, 3)->nullable(); + $table->integer('fields_supported')->default(1); + $table->boolean('tag_option')->nullable(); + $table->boolean('one_d_barcode_option')->nullable(); + $table->boolean('two_d_barcode_option')->nullable(); + $table->boolean('logo_option')->nullable(); + $table->boolean('title_option')->nullable(); + $table->decimal('tape_height', 6, 3)->nullable(); + $table->decimal('tape_width', 6, 3)->nullable(); + $table->decimal('tape_margin_sides', 6, 3)->nullable(); + $table->decimal('tape_margin_ends', 6, 3)->nullable(); + $table->decimal('tape_text_size_mod', 6, 3)->nullable(); + $table->integer('columns')->nullable(); + $table->integer('rows')->nullable(); + $table->timestamps(); + }); + $defaults = + [ + [ + 'name' => 'Avery 5267', + 'label_type' =>'Rectangle Sheet', + 'page_format' => 'LETTER', + 'page_orientation' => 'P', + 'column1_x' => 21.6, + 'column2_x' => 169.2, + 'row1_y' => 36.1, + 'row2_y' => 72.1, + 'label_width' => 126, + 'label_border' => 0, + 'label_height' => 36, + 'barcode_size' => .175, + 'barcode_margin' => 0, + 'title_size' => .14, + 'title_margin' => null, + 'title_align' => 'L', + 'field_size' => .15, + 'field_margin' => null, + 'label_size' => null, + 'label_margin' => null, + 'label_index' => 0, + 'logo_max_width' => null, + 'logo_margin' => null, + 'measurement_unit' => 'in', + 'margin_top' => .02, + 'margin_bottom' => 0, + 'margin_left' => .04, + 'margin_right' => .04, + 'fields_supported' => 1, + 'tag_align' => null, + 'tag_option' => 0, + 'tag_position' => null, + 'tag_size' => null, + 'one_d_barcode_option' => 1, + 'two_d_barcode_option' => 0, + 'logo_option' => 0, + 'title_option' => 1, + 'tape_height' => null, + "tape_width" => null, + 'tape_margin_sides' => null, + 'tape_margin_ends' => null, + 'tape_text_size_mod' => null, + 'columns' => 4, + 'rows' => 20, + ], + [ + 'name' => 'Avery 5520', + 'label_type' =>'Rectangle Sheet', + 'page_format' => 'LETTER', + 'page_orientation' => 'P', + 'column1_x' => 13.55, + 'column2_x' => 211.55, + 'row1_y' => 36.1, + 'row2_y' => 108.1, + 'label_width' => 189.35, + 'label_border' => 0, + 'label_height' => 72, + 'barcode_size' => null, + 'barcode_margin' => .075, + 'title_size' => .14, + 'title_margin' => .04, + 'title_align' => 'C', + 'field_size' => .15, + 'field_margin' => null, + 'label_size' => .09, + 'label_margin' => -.015, + 'label_index' => 0, + 'tag_size' => null, + 'tag_position' => null, + 'tag_align' => null, + 'logo_max_width' => null, + 'logo_margin' => null, + 'measurement_unit' => 'in', + 'margin_top' => .06, + 'margin_bottom' => .06, + 'margin_left' => .06, + 'margin_right' => .06, + 'fields_supported' => 3, + 'tag_option' => 0, + 'one_d_barcode_option' => 0, + 'two_d_barcode_option' => 1, + 'logo_option' => 0, + 'title_option' => 1, + 'tape_height' => null, + "tape_width" => null, + 'tape_margin_sides' => null, + 'tape_margin_ends' => null, + 'tape_text_size_mod' => null, + 'columns' => 3, + 'rows' => 10, + ], + [ + 'name' => 'Avery L7162 2D Barcode', + 'label_type' =>'Rectangle Sheet', + 'page_format' => 'A4', + 'page_orientation' => 'P', + 'column1_x' => 13.25, + 'column2_x' => 301.25, + 'row1_y' => 37, + 'row2_y' => 133, + 'label_width' => 280.8, + 'label_border' => 0, + 'label_height' => 96, + 'barcode_size' => null, + 'barcode_margin' => 1.6, + 'title_size' => 4.2, + 'title_margin' => 1.4, + 'title_align' => 'L', + 'field_size' => 4.6, + 'field_margin' => .3, + 'label_size' => 2.2, + 'label_margin' => -.5, + 'label_index' => 0, + 'tag_size' => 4.6, + 'logo_max_width' => null, + 'logo_margin' => null, + 'measurement_unit' => 'mm', + 'margin_top' => 1, + 'margin_bottom' => 1, + 'margin_left' => 1, + 'margin_right' => 1, + 'fields_supported' => 4, + 'tag_option' => 1, + 'tag_position' => 'bottom', + 'tag_align' => 'R', + 'one_d_barcode_option' => 0, + 'two_d_barcode_option' => 1, + 'logo_option' => 0, + 'title_option' => 1, + 'tape_height' => null, + "tape_width" => null, + 'tape_margin_sides' => null, + 'tape_margin_ends' => null, + 'tape_text_size_mod' => null, + 'columns' => 2, + 'rows' => 8, + ], + [ + 'name' => 'Avery L7162 1D Barcode', + 'label_type' =>'Rectangle Sheet', + 'page_format' => 'A4', + 'page_orientation' => 'P', + 'column1_x' => 13.25, + 'column2_x' => 301.25, + 'row1_y' => 37, + 'row2_y' => 133, + 'label_width' => 280.8, + 'label_border' => 0, + 'label_height' => 96, + 'barcode_size' => 6, + 'barcode_margin' => 1.6, + 'title_size' => 4.2, + 'title_margin' => 1.2, + 'title_align' => 'L', + 'field_size' => 4.2, + 'field_margin' => .3, + 'label_size' => 2.2, + 'label_margin' => -.5, + 'label_index' => 0, + 'tag_size' => 3.2, + 'logo_max_width' => 25, + 'logo_margin' => 2.2, + 'measurement_unit' => 'mm', + 'margin_top' => 1, + 'margin_bottom' => 1, + 'margin_left' => 1, + 'margin_right' => 1, + 'fields_supported' => 4, + 'tag_option' => 1, + 'tag_position' => 'bottom', + 'tag_align' => 'R', + 'one_d_barcode_option' => 1, + 'two_d_barcode_option' => 0, + 'logo_option' => 0, + 'title_option' => 1, + 'tape_height' => null, + "tape_width" => null, + 'tape_margin_sides' => null, + 'tape_margin_ends' => null, + 'tape_text_size_mod' => null, + 'columns' => 2, + 'rows' => 8, + ], + [ + 'name' => 'Avery L163', + 'label_type' =>'Rectangle Sheet', + 'page_format' => 'A4', + 'page_orientation' => 'P', + 'column1_x' => 13.25, + 'column2_x' => 301.25, + 'row1_y' => 43.05, + 'row2_y' => 151.05, + 'label_width' => 280.8, + 'label_border' => 0, + 'label_height' => 108, + 'barcode_size' => null, + 'barcode_margin' => 1.8, + 'title_size' => 5, + 'title_margin' => 1.8, + 'title_align' => 'C', + 'field_size' => 4.8, + 'field_margin' => .3, + 'label_size' => 2.35, + 'label_index' => 0, + 'label_margin' => -.3, + 'tag_size' => 4.8, + 'logo_max_width' => null, + 'logo_margin' => null, + 'measurement_unit' => 'mm', + 'margin_top' => 1, + 'margin_bottom' => 1, + 'margin_left' => 1, + 'margin_right' => 1, + 'fields_supported' => 4, + 'tag_option' => 1, + 'tag_align' => 'R', + 'tag_position' => 'bottom', + 'one_d_barcode_option' => 0, + 'two_d_barcode_option' => 1, + 'logo_option' => 0, + 'title_option' => 1, + 'tape_height' => null, + "tape_width" => null, + 'tape_margin_sides' => null, + 'tape_margin_ends' => null, + 'tape_text_size_mod' => null, + 'columns' => 2, + 'rows' => 7, + ], + [ + "name" => "Brother TZE 12mm", + 'label_type' =>'', + "page_format" => null, + "page_orientation" => "P", + "column1_x" => null, + "column2_x" => null, + "row1_y" => null, + "row2_y" => null, + "label_width" => null, + "label_border" => null, + "label_height" => null, + "barcode_size" => 1.00, + "barcode_margin" => 0.30, + "title_size" => null, + "title_margin" => null, + "field_size" => null, + "field_margin" => null, + "label_size" => null, + "label_margin" => null, + 'label_index' => 0, + "tag_size" => null, + "logo_max_width" => null, + "logo_margin" => null, + "measurement_unit" => 'mm', + "margin_top" => null, + "margin_bottom" => null, + "margin_left" => null, + "margin_right" => null, + "fields_supported" => 1, + "tag_option" => 1, + "one_d_barcode_option" => 1, + "two_d_barcode_option" => 0, + "logo_option" => 0, + "title_option" => 0, + "tape_height" => 12.00, + "tape_width" => 50, + "tape_margin_sides" => 3.20, + "tape_margin_ends" => 3.20, + "tape_text_size_mod" => 1.00, + 'columns' => null, + 'rows' => null, + 'title_align' => null, + 'tag_position' => null, + 'tag_align' => null, + ], + [ + "name" => "Brother TZE 18mm", + 'label_type' =>'', + "page_format" => null, + "page_orientation" => "P", + "column1_x" => null, + "column2_x" => null, + "row1_y" => null, + "row2_y" => null, + "label_width" => null, + "label_border" => null, + "label_height" => null, + "barcode_size" => 3.20, + "barcode_margin" => 0.30, + "title_size" => null, + "title_margin" => null, + "field_size" => null, + "field_margin" => null, + "label_size" => null, + "label_margin" => null, + 'label_index' => 0, + "tag_size" => null, + "logo_max_width" => null, + "logo_margin" => null, + "measurement_unit" => 'mm', + "margin_top" => null, + "margin_bottom" => null, + "margin_left" => null, + "margin_right" => null, + "fields_supported" => 1, + "tag_option" => 1, + "one_d_barcode_option" => 1, + "two_d_barcode_option" => 0, + "logo_option" => 0, + "title_option" => 0, + "tape_height" => 18.00, + "tape_width" => 50.00, + "tape_margin_sides" => 3.20, + "tape_margin_ends" => 3.20, + "tape_text_size_mod" => 1.00, + 'columns' => null, + 'rows' => null, + 'title_align' => null, + 'tag_position' => null, + 'tag_align' => null, + ], + [ + "name" => "Brother TZE 24mm", + 'label_type' =>'', + "page_format" => null, + "page_orientation" => "P", + "column1_x" => null, + "column2_x" => null, + "row1_y" => null, + "row2_y" => null, + "label_width" => null, + "label_border" => null, + "label_height" => null, + "barcode_size" => null, + "barcode_margin" => 1.40, + "title_size" => 0.50, + "title_margin" => null, + "field_size" => 3.20, + "field_margin" => 0.15, + "label_size" => 2.00, + "label_margin" => -0.35, + 'label_index' => 0, + "tag_size" => 2.80, + "logo_max_width" => null, + "logo_margin" => null, + "measurement_unit" => 'mm', + "margin_top" => null, + "margin_bottom" => null, + "margin_left" => null, + "margin_right" => null, + "fields_supported" => 3, + "tag_option" => 1, + "one_d_barcode_option" => 0, + "two_d_barcode_option" => 1, + "logo_option" => 0, + "title_option" => 1, + "tape_height" => 24.00, + "tape_width" => 65.00, + "tape_margin_sides" => 3.20, + "tape_margin_ends" => 3.20, + "tape_text_size_mod" => null, + 'columns' => null, + 'rows' => null, + 'title_align' => null, + 'tag_position' => null, + 'tag_align' => null, + ], + [ + "name" => "Dymo Label Writer 30252", + 'label_type' =>'', + "page_format" => null, + "page_orientation" => "P", + "column1_x" => null, + "column2_x" => null, + "row1_y" => null, + "row2_y" => null, + "label_width" => null, + "label_border" => null, + "label_height" => null, + "barcode_size" => null, + "barcode_margin" => 1.80, + "title_size" => 2.00, + "title_margin" => null, + "field_size" => 3.20, + "field_margin" => 0.15, + "label_size" => 2.00, + "label_margin" => -0.35, + 'label_index' => 0, + "tag_size" => 2.80, + "logo_max_width" => 2.00, + "logo_margin" => 0.17, + "measurement_unit" => 'mm', + "margin_top" => null, + "margin_bottom" => null, + "margin_left" => null, + "margin_right" => null, + "fields_supported" => 3, + "tag_option" => 1, + "one_d_barcode_option" => 1, + "two_d_barcode_option" => 1, + "logo_option" => 0, + "title_option" => 1, + "tape_height" => 1.15, + "tape_width" => 96.52, + "tape_margin_sides" => 0.10, + "tape_margin_ends" => 0.10, + "tape_text_size_mod" => null, + 'columns' => null, + 'rows' => null, + 'title_align' => null, + 'tag_position' => null, + 'tag_align' => null, + ], + [ + "name" => "Dymo Label Writer 1933081", + 'label_type' =>'', + "page_format" => null, + "page_orientation" => "P", + "column1_x" => null, + "column2_x" => null, + "row1_y" => null, + "row2_y" => null, + "label_width" => null, + "label_border" => null, + "label_height" => null, + "barcode_size" => null, + "barcode_margin" => 1.80, + "title_size" => 2.80, + "title_margin" => 0.50, + "field_size" => 2.80, + "field_margin" => 0.15, + "label_size" => 2.80, + "label_margin" => -0.35, + 'label_index' => 0, + "tag_size" => 2.80, + "logo_max_width" => 5.61, + "logo_margin" => 0.01, + "measurement_unit" => 'mm', + "margin_top" => null, + "margin_bottom" => null, + "margin_left" => null, + "margin_right" => null, + "fields_supported" => 5, + "tag_option" => 1, + "one_d_barcode_option" => 1, + "two_d_barcode_option" => 1, + "logo_option" => 0, + "title_option" => 1, + "tape_height" => 25.00, + "tape_width" => 89.00, + "tape_margin_sides" => 0.10, + "tape_margin_ends" => 0.10, + "tape_text_size_mod" => null, + 'columns' => null, + 'rows' => null, + 'title_align' => null, + 'tag_position' => null, + 'tag_align' => null, + ], + [ + "name" => "Dymo Label Writer 2112283", + 'label_type' =>'', + "page_format" => null, + "page_orientation" => "P", + "column1_x" => null, + "column2_x" => null, + "row1_y" => null, + "row2_y" => null, + "label_width" => null, + "label_border" => null, + "label_height" => null, + "barcode_size" => null, + "barcode_margin" => 1.80, + "title_size" => 2.80, + "title_margin" => 0.50, + "field_size" => 2.80, + "field_margin" => 0.15, + "label_size" => 2.80, + "label_margin" => -0.35, + 'label_index' => 0, + "tag_size" => 2.80, + "logo_max_width" => null, + "logo_margin" => null, + "measurement_unit" => 'mm', + "margin_top" => null, + "margin_bottom" => null, + "margin_left" => null, + "margin_right" => null, + "fields_supported" => 5, + "tag_option" => 1, + "one_d_barcode_option" => 1, + "two_d_barcode_option" => 1, + "logo_option" => 0, + "title_option" => 1, + "tape_height" => 54.00, + "tape_width" => 25.00, + "tape_margin_sides" => 0.10, + "tape_margin_ends" => 0.10, + "tape_text_size_mod" => null, + 'columns' => null, + 'rows' => null, + 'title_align' => null, + 'tag_position' => null, + 'tag_align' => null, + ] + ]; + DB::table('label_templates')->insert($defaults); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('label_templates'); + } +} \ No newline at end of file diff --git a/database/seeders/LabelTemplateSeeder.php b/database/seeders/LabelTemplateSeeder.php new file mode 100644 index 000000000000..e5956813ec51 --- /dev/null +++ b/database/seeders/LabelTemplateSeeder.php @@ -0,0 +1,19 @@ + @endif - @if(!$setting->label2_enable) -
-
- {{ Form::label('labels_display', trans('admin/settings/general.label_fields'), ['class' => 'control-label']) }} -
-
- - - - - -
-
- @endif +{{-- @if(!$setting->label2_enable)--}} +{{--
--}} +{{--
--}} +{{-- {{ Form::label('labels_display', trans('admin/settings/general.label_fields'), ['class' => 'control-label']) }}--}} +{{--
--}} +{{--
--}} +{{-- --}} +{{-- --}} +{{-- --}} +{{-- --}} +{{-- --}} +{{--
--}} +{{--
--}} +{{-- @endif--}}