finish 2.3.8
This commit is contained in:
parent
06cffec25a
commit
5f1a673577
@ -14,7 +14,6 @@ use Symfony\Component\Form\FormEvent;
|
|||||||
|
|
||||||
class General implements Field
|
class General implements Field
|
||||||
{
|
{
|
||||||
|
|
||||||
private $options;
|
private $options;
|
||||||
|
|
||||||
public function getTemplate()
|
public function getTemplate()
|
||||||
@ -30,11 +29,7 @@ class General implements Field
|
|||||||
/**
|
/**
|
||||||
* @param array $data
|
* @param array $data
|
||||||
*/
|
*/
|
||||||
public function formPreSubmit(FormEvent $event)
|
public function formPreSubmit(FormEvent $event) {}
|
||||||
{
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public function buildForm(FormBuilderInterface $builder, array $options)
|
public function buildForm(FormBuilderInterface $builder, array $options)
|
||||||
{
|
{
|
||||||
@ -45,15 +40,31 @@ class General implements Field
|
|||||||
$tempLayouts = [];
|
$tempLayouts = [];
|
||||||
if ($shopEntity->isCustomTemplates() == 1) {
|
if ($shopEntity->isCustomTemplates() == 1) {
|
||||||
foreach (new DirectoryIterator('/data/www/old/application/design/vorlagen') as $file) {
|
foreach (new DirectoryIterator('/data/www/old/application/design/vorlagen') as $file) {
|
||||||
if ($file == '.' || $file == '..' || $file == 'config' || $file == '.svn' || $file == 'datapacks' || $file == '.DS_Store') {
|
if (
|
||||||
|
$file == '.'
|
||||||
|
|| $file == '..'
|
||||||
|
|| $file == 'config'
|
||||||
|
|| $file == '.svn'
|
||||||
|
|| $file == 'datapacks'
|
||||||
|
|| $file == '.DS_Store'
|
||||||
|
) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
$tempLayouts[$file->getFileName()] = $file->getFileName();
|
$tempLayouts[$file->getFileName()] = $file->getFileName();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (file_exists('/data/www/old/application/design/clients/' . $shopEntity->getUID())) {
|
if (file_exists('/data/www/old/application/design/clients/' . $shopEntity->getUID())) {
|
||||||
foreach (new DirectoryIterator('/data/www/old/application/design/clients/' . $shopEntity->getUID()) as $file) {
|
foreach (new DirectoryIterator(
|
||||||
if ($file == '.' || $file == '..' || $file == 'config' || $file == '.svn' || $file == 'datapacks' || $file == '.DS_Store') {
|
'/data/www/old/application/design/clients/' . $shopEntity->getUID(),
|
||||||
|
) as $file) {
|
||||||
|
if (
|
||||||
|
$file == '.'
|
||||||
|
|| $file == '..'
|
||||||
|
|| $file == 'config'
|
||||||
|
|| $file == '.svn'
|
||||||
|
|| $file == 'datapacks'
|
||||||
|
|| $file == '.DS_Store'
|
||||||
|
) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
$tempLayouts[$file->getFileName()] = $file->getFileName();
|
$tempLayouts[$file->getFileName()] = $file->getFileName();
|
||||||
@ -61,37 +72,54 @@ class General implements Field
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$builder->add('displayArticleCount', NumberType::class, ['label' => 'Anzahl Artikel in Liste'])
|
$builder
|
||||||
->add('basketField1', TextType::class, array('required' => false, 'label' => 'Warenkorb Feld 1'))
|
->add('displayArticleCount', NumberType::class, ['label' => 'Anzahl Artikel in Liste'])
|
||||||
->add('basketField2', TextType::class, array('required' => false, 'label' => 'Warenkorb Feld 2'))
|
->add('basketField1', TextType::class, array('required' => false, 'label' => 'Warenkorb Feld 1'))
|
||||||
->add('basketPosField1', TextType::class, array('required' => false, 'label' => 'Warenkorb Position Feld 1'))
|
->add('basketField2', TextType::class, array(
|
||||||
->add('basketPosField2', TextType::class, array('required' => false, 'label' => 'Warenkorb Position Feld 2'))
|
'required' => false,
|
||||||
->add('customTemplates', CheckboxType::class, ['label' => 'Vorlagen benutzen', 'required' => false])
|
'label' => 'Warenkorb Feld 2 (XRechnung bt-13)',
|
||||||
->add('templateDisplayProductsCrossselling', CheckboxType::class, ['label' => 'Cross Selling anzeigen', 'required' => false])
|
))
|
||||||
->add('templateDisplayUserApproval', CheckboxType::class, ['label' => 'User Freigabebedürftige anzeigen', 'required' => false])
|
->add('basketPosField1', TextType::class, array(
|
||||||
->add('layout', ChoiceType::class, array('label' => 'Layout', 'choices' => $tempLayouts, 'required' => false, 'attr' => array('onchange' => "savestyle();")))
|
'required' => false,
|
||||||
|
'label' => 'Warenkorb Position Feld 1',
|
||||||
->add('googleanalyticscode', TextType::class, ['required' => false])
|
))
|
||||||
->add('defaultFunc', ChoiceType::class, ['required' => false,
|
->add('basketPosField2', TextType::class, array(
|
||||||
'choices' => [
|
'required' => false,
|
||||||
"Cms" => "Cms",
|
'label' => 'Warenkorb Position Feld 2',
|
||||||
"Overview" => "Overview",
|
))
|
||||||
"Page" => "Page",
|
->add('customTemplates', CheckboxType::class, ['label' => 'Vorlagen benutzen', 'required' => false])
|
||||||
"Article" => "Article",
|
->add('templateDisplayProductsCrossselling', CheckboxType::class, [
|
||||||
"Login" => "Login",
|
'label' => 'Cross Selling anzeigen',
|
||||||
"Index" => "Index",
|
'required' => false,
|
||||||
"OverviewWithRedirect" => "OverviewWithRedirect",
|
])
|
||||||
"PersArticle" => "PersArticle",
|
->add('templateDisplayUserApproval', CheckboxType::class, [
|
||||||
"Redirect" => "Redirect"
|
'label' => 'User Freigabebedürftige anzeigen',
|
||||||
]
|
'required' => false,
|
||||||
])
|
])
|
||||||
->add('defaultParam', TextType::class, ['required' => false])
|
->add('layout', ChoiceType::class, array(
|
||||||
|
'label' => 'Layout',
|
||||||
|
'choices' => $tempLayouts,
|
||||||
->add('displaySender', CheckboxType::class, ['required' => false, 'label' => 'Absenderadresse benutzen'])
|
'required' => false,
|
||||||
->add('displayDelivery', CheckboxType::class, ['required' => false, 'label' => 'Lieferadresse benutzen'])
|
'attr' => array('onchange' => 'savestyle();'),
|
||||||
|
))
|
||||||
;
|
->add('googleanalyticscode', TextType::class, ['required' => false])
|
||||||
|
->add('defaultFunc', ChoiceType::class, [
|
||||||
|
'required' => false,
|
||||||
|
'choices' => [
|
||||||
|
'Cms' => 'Cms',
|
||||||
|
'Overview' => 'Overview',
|
||||||
|
'Page' => 'Page',
|
||||||
|
'Article' => 'Article',
|
||||||
|
'Login' => 'Login',
|
||||||
|
'Index' => 'Index',
|
||||||
|
'OverviewWithRedirect' => 'OverviewWithRedirect',
|
||||||
|
'PersArticle' => 'PersArticle',
|
||||||
|
'Redirect' => 'Redirect',
|
||||||
|
],
|
||||||
|
])
|
||||||
|
->add('defaultParam', TextType::class, ['required' => false])
|
||||||
|
->add('displaySender', CheckboxType::class, ['required' => false, 'label' => 'Absenderadresse benutzen'])
|
||||||
|
->add('displayDelivery', CheckboxType::class, ['required' => false, 'label' => 'Lieferadresse benutzen']);
|
||||||
|
|
||||||
return $builder;
|
return $builder;
|
||||||
}
|
}
|
||||||
@ -103,13 +131,16 @@ class General implements Field
|
|||||||
|
|
||||||
public function formPostSetData(FormEvent $event)
|
public function formPostSetData(FormEvent $event)
|
||||||
{
|
{
|
||||||
|
|
||||||
/** @var Shop $shopEntity */
|
/** @var Shop $shopEntity */
|
||||||
$shopEntity = $this->options['shopEntity'];
|
$shopEntity = $this->options['shopEntity'];
|
||||||
|
|
||||||
$layoutSettings = json_decode($shopEntity->getLayoutSettings(), true);
|
$layoutSettings = json_decode($shopEntity->getLayoutSettings(), true);
|
||||||
|
|
||||||
$event->getForm()->get('bootstrap4General')->get('displayArticleCount')->setData($shopEntity->getDisplayArticleCount());
|
$event
|
||||||
|
->getForm()
|
||||||
|
->get('bootstrap4General')
|
||||||
|
->get('displayArticleCount')
|
||||||
|
->setData($shopEntity->getDisplayArticleCount());
|
||||||
$event->getForm()->get('bootstrap4General')->get('basketField1')->setData($shopEntity->getBasketfield1());
|
$event->getForm()->get('bootstrap4General')->get('basketField1')->setData($shopEntity->getBasketfield1());
|
||||||
$event->getForm()->get('bootstrap4General')->get('basketField2')->setData($shopEntity->getBasketfield2());
|
$event->getForm()->get('bootstrap4General')->get('basketField2')->setData($shopEntity->getBasketfield2());
|
||||||
$event->getForm()->get('bootstrap4General')->get('basketPosField1')->setData($shopEntity->getBasketposfield1());
|
$event->getForm()->get('bootstrap4General')->get('basketPosField1')->setData($shopEntity->getBasketposfield1());
|
||||||
@ -118,29 +149,36 @@ class General implements Field
|
|||||||
$event->getForm()->get('bootstrap4General')->get('displayDelivery')->setData($shopEntity->getDisplayDelivery());
|
$event->getForm()->get('bootstrap4General')->get('displayDelivery')->setData($shopEntity->getDisplayDelivery());
|
||||||
$event->getForm()->get('bootstrap4General')->get('layout')->setData($shopEntity->getLayout());
|
$event->getForm()->get('bootstrap4General')->get('layout')->setData($shopEntity->getLayout());
|
||||||
$event->getForm()->get('bootstrap4General')->get('customTemplates')->setData($shopEntity->isCustomTemplates());
|
$event->getForm()->get('bootstrap4General')->get('customTemplates')->setData($shopEntity->isCustomTemplates());
|
||||||
$event->getForm()->get('bootstrap4General')->get('googleanalyticscode')->setData($shopEntity->getGoogleanalyticscode());
|
$event
|
||||||
|
->getForm()
|
||||||
|
->get('bootstrap4General')
|
||||||
|
->get('googleanalyticscode')
|
||||||
|
->setData($shopEntity->getGoogleanalyticscode());
|
||||||
$event->getForm()->get('bootstrap4General')->get('defaultFunc')->setData($shopEntity->getDefaultFunc());
|
$event->getForm()->get('bootstrap4General')->get('defaultFunc')->setData($shopEntity->getDefaultFunc());
|
||||||
$event->getForm()->get('bootstrap4General')->get('defaultParam')->setData($shopEntity->getDefaultParam());
|
$event->getForm()->get('bootstrap4General')->get('defaultParam')->setData($shopEntity->getDefaultParam());
|
||||||
$event->getForm()->get('bootstrap4General')->get('templateDisplayProductsCrossselling')->setData($shopEntity->isTemplateDisplayProductsCrossselling());
|
$event
|
||||||
$event->getForm()->get('bootstrap4General')->get('templateDisplayUserApproval')->setData($shopEntity->isTemplateDisplayUserApproval());
|
->getForm()
|
||||||
|
->get('bootstrap4General')
|
||||||
|
->get('templateDisplayProductsCrossselling')
|
||||||
|
->setData($shopEntity->isTemplateDisplayProductsCrossselling());
|
||||||
|
$event
|
||||||
|
->getForm()
|
||||||
|
->get('bootstrap4General')
|
||||||
|
->get('templateDisplayUserApproval')
|
||||||
|
->setData($shopEntity->isTemplateDisplayUserApproval());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function formPostSubmit(FormEvent $event)
|
public function formPostSubmit(FormEvent $event) {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
public function formPreSetData(FormEvent $event) {}
|
||||||
|
|
||||||
public function formPreSetData(FormEvent $event)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public function formSubmit(FormEvent $event)
|
public function formSubmit(FormEvent $event)
|
||||||
{
|
{
|
||||||
/** @var Shop $shopEntity */
|
/** @var Shop $shopEntity */
|
||||||
$shopEntity = $this->options['shopEntity'];
|
$shopEntity = $this->options['shopEntity'];
|
||||||
$shopEntity->setDisplayArticleCount($event->getForm()->get('bootstrap4General')->get('displayArticleCount')->getData());
|
$shopEntity->setDisplayArticleCount(
|
||||||
|
$event->getForm()->get('bootstrap4General')->get('displayArticleCount')->getData(),
|
||||||
|
);
|
||||||
$shopEntity->setBasketfield1($event->getForm()->get('bootstrap4General')->get('basketField1')->getData());
|
$shopEntity->setBasketfield1($event->getForm()->get('bootstrap4General')->get('basketField1')->getData());
|
||||||
$shopEntity->setBasketfield2($event->getForm()->get('bootstrap4General')->get('basketField2')->getData());
|
$shopEntity->setBasketfield2($event->getForm()->get('bootstrap4General')->get('basketField2')->getData());
|
||||||
$shopEntity->setBasketposfield1($event->getForm()->get('bootstrap4General')->get('basketPosField1')->getData());
|
$shopEntity->setBasketposfield1($event->getForm()->get('bootstrap4General')->get('basketPosField1')->getData());
|
||||||
@ -149,11 +187,16 @@ class General implements Field
|
|||||||
$shopEntity->setDisplayDelivery($event->getForm()->get('bootstrap4General')->get('displayDelivery')->getData());
|
$shopEntity->setDisplayDelivery($event->getForm()->get('bootstrap4General')->get('displayDelivery')->getData());
|
||||||
$shopEntity->setCustomTemplates($event->getForm()->get('bootstrap4General')->get('customTemplates')->getData());
|
$shopEntity->setCustomTemplates($event->getForm()->get('bootstrap4General')->get('customTemplates')->getData());
|
||||||
$shopEntity->setLayout($event->getForm()->get('bootstrap4General')->get('layout')->getData());
|
$shopEntity->setLayout($event->getForm()->get('bootstrap4General')->get('layout')->getData());
|
||||||
$shopEntity->setGoogleanalyticscode($event->getForm()->get('bootstrap4General')->get('googleanalyticscode')->getData());
|
$shopEntity->setGoogleanalyticscode(
|
||||||
|
$event->getForm()->get('bootstrap4General')->get('googleanalyticscode')->getData(),
|
||||||
|
);
|
||||||
$shopEntity->setDefaultFunc($event->getForm()->get('bootstrap4General')->get('defaultFunc')->getData());
|
$shopEntity->setDefaultFunc($event->getForm()->get('bootstrap4General')->get('defaultFunc')->getData());
|
||||||
$shopEntity->setDefaultParam($event->getForm()->get('bootstrap4General')->get('defaultParam')->getData());
|
$shopEntity->setDefaultParam($event->getForm()->get('bootstrap4General')->get('defaultParam')->getData());
|
||||||
$shopEntity->setTemplateDisplayProductsCrossselling($event->getForm()->get('bootstrap4General')->get('templateDisplayProductsCrossselling')->getData());
|
$shopEntity->setTemplateDisplayProductsCrossselling(
|
||||||
$shopEntity->setTemplateDisplayUserApproval($event->getForm()->get('bootstrap4General')->get('templateDisplayUserApproval')->getData());
|
$event->getForm()->get('bootstrap4General')->get('templateDisplayProductsCrossselling')->getData(),
|
||||||
|
);
|
||||||
|
$shopEntity->setTemplateDisplayUserApproval(
|
||||||
|
$event->getForm()->get('bootstrap4General')->get('templateDisplayUserApproval')->getData(),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -8,6 +8,26 @@ import Button, { ButtonGroup } from '../base/Button'
|
|||||||
import { showToast } from '../../lib/toast'
|
import { showToast } from '../../lib/toast'
|
||||||
import React from 'react'
|
import React from 'react'
|
||||||
|
|
||||||
|
const TYPE_LABELS: Record<number, string> = {
|
||||||
|
1: 'Auftrag',
|
||||||
|
2: 'Angebot',
|
||||||
|
3: 'Storno',
|
||||||
|
4: 'Gutschrift',
|
||||||
|
5: 'Rechnung',
|
||||||
|
6: 'Teilrechnung',
|
||||||
|
7: 'Teilstorno',
|
||||||
|
}
|
||||||
|
|
||||||
|
const TYPE_PRINT_MAP: Record<number, number> = {
|
||||||
|
1: 1, // Auftrag → INVOICE
|
||||||
|
2: 5, // Angebot → OFFER
|
||||||
|
3: 6, // Storno → STORNO
|
||||||
|
4: 6, // Gutschrift → STORNO
|
||||||
|
5: 1, // Rechnung → INVOICE
|
||||||
|
6: 1, // Teilrechnung → INVOICE
|
||||||
|
7: 6, // Teilstorno → STORNO
|
||||||
|
}
|
||||||
|
|
||||||
class ButtonComponent extends Component<{ loadOrder }, { disabled: boolean, saving: boolean }> {
|
class ButtonComponent extends Component<{ loadOrder }, { disabled: boolean, saving: boolean }> {
|
||||||
orderState: OrderState
|
orderState: OrderState
|
||||||
orderService: OrderService
|
orderService: OrderService
|
||||||
@ -38,8 +58,14 @@ class ButtonComponent extends Component<{ loadOrder }, { disabled: boolean, savi
|
|||||||
|
|
||||||
async handlePrint(e) {
|
async handlePrint(e) {
|
||||||
const uuid = this.orderState.getCurrentOrder().value.uuid;
|
const uuid = this.orderState.getCurrentOrder().value.uuid;
|
||||||
const type = this.orderState.getCurrentOrder().value.type;
|
const orderType = this.orderState.getCurrentOrder().value.type;
|
||||||
window.open('/apps/backend/order/detail/print/' + type + '/' + uuid)
|
const printType = TYPE_PRINT_MAP[orderType] || 1;
|
||||||
|
window.open('/apps/backend/order/detail/print/' + printType + '/' + uuid)
|
||||||
|
}
|
||||||
|
|
||||||
|
async handleJobTicket(e) {
|
||||||
|
const uuid = this.orderState.getCurrentOrder().value.uuid;
|
||||||
|
window.open('/apps/backend/order/detail/print/7/' + uuid)
|
||||||
}
|
}
|
||||||
|
|
||||||
async handleSave(e) {
|
async handleSave(e) {
|
||||||
@ -58,6 +84,9 @@ class ButtonComponent extends Component<{ loadOrder }, { disabled: boolean, savi
|
|||||||
}
|
}
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
|
const orderType = this.orderState.getCurrentOrder().value.type;
|
||||||
|
const typeLabel = TYPE_LABELS[orderType] || 'Auftrag';
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ButtonGroup className="gap-3">
|
<ButtonGroup className="gap-3">
|
||||||
<Button
|
<Button
|
||||||
@ -76,10 +105,25 @@ class ButtonComponent extends Component<{ loadOrder }, { disabled: boolean, savi
|
|||||||
disabled={!this.orderState.getCurrentOrder().value.saved}
|
disabled={!this.orderState.getCurrentOrder().value.saved}
|
||||||
onClick={(e: any) => this.handlePrint(e)}
|
onClick={(e: any) => this.handlePrint(e)}
|
||||||
>
|
>
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" strokeWidth="1.5" stroke="currentColor" className="h-5 w-5">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" className="h-5 w-5">
|
||||||
<path strokeLinecap="round" strokeLinejoin="round" d="M6.72 13.829c-.24.03-.48.062-.72.096m.72-.096a42.415 42.415 0 0 1 10.56 0m-10.56 0L6.34 18m10.94-4.171c.24.03.48.062.72.096m-.72-.096L17.66 18m0 0 .229 2.523a1.125 1.125 0 0 1-1.12 1.227H7.231c-.662 0-1.18-.568-1.12-1.227L6.34 18m11.318 0h1.091A2.25 2.25 0 0 0 21 15.75V9.456c0-1.081-.768-2.015-1.837-2.175a48.055 48.055 0 0 0-1.913-.247M6.34 18H5.25A2.25 2.25 0 0 1 3 15.75V9.456c0-1.081.768-2.015 1.837-2.175a48.041 48.041 0 0 1 1.913-.247m10.5 0a48.536 48.536 0 0 0-10.5 0m10.5 0V3.375c0-.621-.504-1.125-1.125-1.125h-8.25c-.621 0-1.125.504-1.125 1.125v3.659M18 10.5h.008v.008H18V10.5Zm-3 0h.008v.008H15V10.5Z"></path>
|
<path d="M5.625 1.5c-1.036 0-1.875.84-1.875 1.875v17.25c0 1.035.84 1.875 1.875 1.875h12.75c1.035 0 1.875-.84 1.875-1.875V12.75A3.75 3.75 0 0 0 16.5 9h-1.875a1.875 1.875 0 0 1-1.875-1.875V5.25A3.75 3.75 0 0 0 9 1.5H5.625Z" fill="currentColor" opacity="0.2"/>
|
||||||
|
<path stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round" d="M5.625 1.5c-1.036 0-1.875.84-1.875 1.875v17.25c0 1.035.84 1.875 1.875 1.875h12.75c1.035 0 1.875-.84 1.875-1.875V12.75A3.75 3.75 0 0 0 16.5 9h-1.875a1.875 1.875 0 0 1-1.875-1.875V5.25A3.75 3.75 0 0 0 9 1.5H5.625Z"/>
|
||||||
|
<path stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round" d="M12 14.25v5.25m-3-3.75h6"/>
|
||||||
|
<path stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round" d="M12.75 6.75h-3.75V3"/>
|
||||||
</svg>
|
</svg>
|
||||||
Drucken
|
{typeLabel} drucken
|
||||||
|
</Button>
|
||||||
|
<Button
|
||||||
|
color="light"
|
||||||
|
disabled={!this.orderState.getCurrentOrder().value.saved}
|
||||||
|
onClick={(e: any) => this.handleJobTicket(e)}
|
||||||
|
>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" className="h-5 w-5">
|
||||||
|
<path d="M5.625 1.5c-1.036 0-1.875.84-1.875 1.875v17.25c0 1.035.84 1.875 1.875 1.875h12.75c1.035 0 1.875-.84 1.875-1.875V12.75A3.75 3.75 0 0 0 16.5 9h-1.875a1.875 1.875 0 0 1-1.875-1.875V5.25A3.75 3.75 0 0 0 9 1.5H5.625Z" fill="currentColor" opacity="0.2"/>
|
||||||
|
<path stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round" d="M5.625 1.5c-1.036 0-1.875.84-1.875 1.875v17.25c0 1.035.84 1.875 1.875 1.875h12.75c1.035 0 1.875-.84 1.875-1.875V12.75A3.75 3.75 0 0 0 16.5 9h-1.875a1.875 1.875 0 0 1-1.875-1.875V5.25A3.75 3.75 0 0 0 9 1.5H5.625Z"/>
|
||||||
|
<path stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round" d="M9 12h6m-3 3V9"/>
|
||||||
|
</svg>
|
||||||
|
Job Ticket
|
||||||
</Button>
|
</Button>
|
||||||
</ButtonGroup>
|
</ButtonGroup>
|
||||||
)
|
)
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@ -2034,11 +2034,6 @@ html {
|
|||||||
background-color: rgb(59 130 246 / var(--tw-bg-opacity));
|
background-color: rgb(59 130 246 / var(--tw-bg-opacity));
|
||||||
}
|
}
|
||||||
|
|
||||||
.bg-blue-600{
|
|
||||||
--tw-bg-opacity: 1;
|
|
||||||
background-color: rgb(37 99 235 / var(--tw-bg-opacity));
|
|
||||||
}
|
|
||||||
|
|
||||||
.bg-blue-700{
|
.bg-blue-700{
|
||||||
--tw-bg-opacity: 1;
|
--tw-bg-opacity: 1;
|
||||||
background-color: rgb(29 78 216 / var(--tw-bg-opacity));
|
background-color: rgb(29 78 216 / var(--tw-bg-opacity));
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user