Asset Mapper Test
This commit is contained in:
parent
816bc50f98
commit
81ab180112
@ -54,10 +54,6 @@ services:
|
||||
- ${APP_HOST?}
|
||||
depends_on:
|
||||
- php-fpm
|
||||
tp:
|
||||
image: registry.gitlab.com/printshopcreator/docker/docker_tp:v22x0x1
|
||||
networks:
|
||||
- network
|
||||
chrome:
|
||||
image: selenium/standalone-chrome:latest
|
||||
ports:
|
||||
|
||||
5
src/new/.gitignore
vendored
Normal file
5
src/new/.gitignore
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
|
||||
###> symfony/asset-mapper ###
|
||||
/web/assets/
|
||||
/assets/vendor/
|
||||
###< symfony/asset-mapper ###
|
||||
9
src/new/assets/app.js
Normal file
9
src/new/assets/app.js
Normal file
@ -0,0 +1,9 @@
|
||||
/*
|
||||
* Welcome to your app's main JavaScript file!
|
||||
*
|
||||
* This file will be included onto the page via the importmap() Twig function,
|
||||
* which should already be in your base.html.twig.
|
||||
*/
|
||||
import './styles/app.css';
|
||||
|
||||
console.log('This log comes from assets/app.js - welcome to AssetMapper! 🎉');
|
||||
@ -1,44 +1,143 @@
|
||||
import Bs5Utils from "bs5-utils";
|
||||
import { startStimulusApp } from '@symfony/stimulus-bridge';
|
||||
import { startStimulusApp } from '@symfony/stimulus-bundle';
|
||||
const app = startStimulusApp();
|
||||
global.$ = global.jQuery = window.jQuery = require('jquery');
|
||||
require('@popperjs/core/dist/cjs/popper');
|
||||
global.bootstrap = require('bootstrap/dist/js/bootstrap');
|
||||
global.bs5Utils = new Bs5Utils();
|
||||
require('./js/tether.min');
|
||||
require('./js/dropzone');
|
||||
global.Raphael = require('raphael/raphael.min');
|
||||
require('morris.js/morris.min');
|
||||
require('summernote/dist/summernote-lite');
|
||||
require('./js/summernote/mediabundle.plugin');
|
||||
require('multiselect-two-sides/dist/js/multiselect');
|
||||
require('bootstrap-toggle/js/bootstrap-toggle.min');
|
||||
import jquery from 'jquery';
|
||||
const $ = jquery;
|
||||
window.$ = window.jQuery = $;
|
||||
|
||||
import * as Popper from "@popperjs/core"
|
||||
window.bs5Utils = new Bs5Utils()
|
||||
|
||||
//require('./js/tether.min');
|
||||
//require('./js/dropzone');
|
||||
//require('./js/summernote/mediabundle.plugin');
|
||||
//import 'multiselect-two-sides'
|
||||
//require('bootstrap-toggle/js/bootstrap-toggle.min');
|
||||
import ace from 'brace'
|
||||
import 'brace/mode/html'
|
||||
import 'brace/mode/php'
|
||||
import 'brace/mode/xml'
|
||||
import 'brace/theme/monokai'
|
||||
import 'brace/ext/searchbox'
|
||||
import * as bootstrap from 'bootstrap'
|
||||
import 'summernote'
|
||||
//window.Dropzone = './js/dropzone';
|
||||
|
||||
global.Dropzone = require('./js/dropzone');
|
||||
|
||||
global.cargobay = {};
|
||||
global.cargobay.general = require('./js/tools/cargobay.general.min');
|
||||
global.cargobay.toggle = require('./js/tools/cargobay.toogle.min');
|
||||
import { init } from './js/init.js';
|
||||
import { ajaxModal } from './js/tools/ajaxModal.js'
|
||||
import { mediaChooser } from './js/tools/mediaChooser.js'
|
||||
import { order } from './js/order.js'
|
||||
import { product } from './js/product.js'
|
||||
window.psc = {};
|
||||
window.psc.ajaxModal = new ajaxModal;
|
||||
window.psc.mediaChooser = new mediaChooser;
|
||||
window.psc.init = init;
|
||||
window.psc.order = new order;
|
||||
window.psc.product = new product;
|
||||
|
||||
global.psc = {};
|
||||
global.psc.ajaxModal = require('./js/tools/ajaxModal');
|
||||
global.psc.mediaChooser = require('./js/tools/mediaChooser');
|
||||
global.psc.app = require('./js/app');
|
||||
global.psc.order = require('./js/order.js');
|
||||
global.psc.product = require('./js/product.js');
|
||||
window.psc.init();
|
||||
|
||||
global.psc.app.init();
|
||||
|
||||
import './js/tools/mediaChooser';
|
||||
import 'bootstrap/scss/bootstrap.scss';
|
||||
import './css/tools/cargobay.toogle.min.css';
|
||||
import './less/base.less';
|
||||
import 'bootstrap/dist/css/bootstrap.min.css';
|
||||
import './less/base.scss';
|
||||
import 'summernote/dist/summernote-lite.min.css';
|
||||
//import 'multiselect/css/multi-select.css';
|
||||
import 'bootstrap-toggle/css/bootstrap-toggle.min.css';
|
||||
|
||||
$(function() {
|
||||
|
||||
$('[data-bs-toggle="tooltip"]').click(function(el) {
|
||||
bs5Utils.Toast.show({
|
||||
type: 'primary',
|
||||
icon: '<i class="far fa-check-circle fa-lg me-2"></i>',
|
||||
title: $(this).html(),
|
||||
content: $(this).data('bs-html'),
|
||||
buttons: [
|
||||
{
|
||||
text: 'Copy to clipboard',
|
||||
class: 'btn btn-sm btn-warning',
|
||||
handler: () => {
|
||||
navigator.clipboard.writeText($(this).data('bs-html'));
|
||||
}
|
||||
}
|
||||
],
|
||||
delay: 0,
|
||||
dismissible: true
|
||||
});
|
||||
console.log(this);
|
||||
|
||||
return true;
|
||||
});
|
||||
|
||||
var triggerTabList = [].slice.call(document.querySelectorAll('a[data-bs-toggle="tab"]'))
|
||||
triggerTabList.forEach(function (triggerEl) {
|
||||
var tabTrigger = new bootstrap.Tab(triggerEl)
|
||||
|
||||
triggerEl.addEventListener('click', function (event) {
|
||||
event.preventDefault()
|
||||
tabTrigger.show()
|
||||
})
|
||||
})
|
||||
$('a[data-bs-toggle="tab"]').on('shown.bs.tab', function (e) {
|
||||
if($(e.target).parent().parent().parent().attr('id') && $(e.target).parent().parent().parent().attr('id') == 'doc') {
|
||||
localStorage.setItem('lastTabDoc', $(this).attr('href'));
|
||||
}else{
|
||||
localStorage.setItem('lastTab', $(this).attr('href'));
|
||||
};
|
||||
|
||||
});
|
||||
|
||||
// go to the latest tab, if it exists:
|
||||
var lastTab = localStorage.getItem('lastTab');
|
||||
if (lastTab) {
|
||||
bootstrap.Tab.getInstance('[href="' + lastTab + '"]').show();
|
||||
}
|
||||
|
||||
var lastTabDoc = localStorage.getItem('lastTabDoc');
|
||||
if (lastTabDoc) {
|
||||
bootstrap.Tab.getInstance('[href="' + lastTabDoc + '"]').show();
|
||||
}
|
||||
|
||||
$('.nav li ul').parent().find('a').click(function() {
|
||||
$(this).parent().find("ul").toggle();
|
||||
});
|
||||
|
||||
$('input[data-bs-toggle="toggle"], input.ajaxToogle').change(function() {
|
||||
$.getJSON($(this).data('url'));
|
||||
});
|
||||
|
||||
/* $('select.multiple').multiselect({
|
||||
submitAllLeft: false,
|
||||
submitAllRight: true,
|
||||
search: {
|
||||
left: '<input type="text" name="q" class="form-control" placeholder="Search..." />',
|
||||
right: '<input type="text" name="q" class="form-control" placeholder="Search..." />',
|
||||
},
|
||||
fireSearch: function(value) {
|
||||
return value.length > 1;
|
||||
}
|
||||
});
|
||||
*/
|
||||
$('.note-codable').on('blur', function() {
|
||||
var codeviewHtml = $(this).val();
|
||||
var $summernoteTextarea = $(this).closest('.note-editor').siblings('textarea');
|
||||
|
||||
$summernoteTextarea.val(codeviewHtml);
|
||||
});
|
||||
$('.summernote').summernote({
|
||||
height: 400,
|
||||
toolbar: [
|
||||
['style', ['style']],
|
||||
['font', ['bold', 'italic', 'underline', 'clear']],
|
||||
['fontsize', ['fontsize']],
|
||||
['color', ['color']],
|
||||
['para', ['ul', 'ol', 'paragraph']],
|
||||
['height', ['height']],
|
||||
['table', ['table']],
|
||||
['insert', ['link', 'hr']],
|
||||
['view', ['fullscreen', 'codeview']],
|
||||
['help', ['help']],
|
||||
['media', ['media']]
|
||||
]
|
||||
});
|
||||
});
|
||||
|
||||
@ -19,85 +19,4 @@ define(function() {
|
||||
|
||||
|
||||
|
||||
$(function() {
|
||||
|
||||
$('[data-bs-toggle="tooltip"]').click(function(el) {
|
||||
bs5Utils.Toast.show({
|
||||
type: 'primary',
|
||||
icon: '<i class="far fa-check-circle fa-lg me-2"></i>',
|
||||
title: $(this).html(),
|
||||
content: $(this).data('bs-html'),
|
||||
buttons: [
|
||||
{
|
||||
text: 'Copy to clipboard',
|
||||
class: 'btn btn-sm btn-warning',
|
||||
handler: () => {
|
||||
navigator.clipboard.writeText($(this).data('bs-html'));
|
||||
}
|
||||
}
|
||||
],
|
||||
delay: 0,
|
||||
dismissible: true
|
||||
});
|
||||
console.log(this);
|
||||
|
||||
return true;
|
||||
});
|
||||
|
||||
$('a[data-bs-toggle="tab"]').on('shown.bs.tab', function (e) {
|
||||
if($(e.target).parent().parent().parent().attr('id') && $(e.target).parent().parent().parent().attr('id') == 'doc') {
|
||||
localStorage.setItem('lastTabDoc', $(this).attr('href'));
|
||||
}else{
|
||||
localStorage.setItem('lastTab', $(this).attr('href'));
|
||||
};
|
||||
|
||||
});
|
||||
|
||||
// go to the latest tab, if it exists:
|
||||
var lastTab = localStorage.getItem('lastTab');
|
||||
if (lastTab) {
|
||||
$('[href="' + lastTab + '"]').tab('show');
|
||||
}
|
||||
|
||||
var lastTabDoc = localStorage.getItem('lastTabDoc');
|
||||
if (lastTabDoc) {
|
||||
$('[href="' + lastTabDoc + '"]').tab('show');
|
||||
}
|
||||
|
||||
$('.nav li ul').parent().find('a').click(function() {
|
||||
$(this).parent().find("ul").toggle();
|
||||
});
|
||||
|
||||
$('input[data-bs-toggle="toggle"], input.ajaxToogle').change(function() {
|
||||
$.getJSON($(this).data('url'));
|
||||
});
|
||||
|
||||
$('select.multiple').multiselect({
|
||||
submitAllLeft: false,
|
||||
submitAllRight: true,
|
||||
search: {
|
||||
left: '<input type="text" name="q" class="form-control" placeholder="Search..." />',
|
||||
right: '<input type="text" name="q" class="form-control" placeholder="Search..." />',
|
||||
},
|
||||
fireSearch: function(value) {
|
||||
return value.length > 1;
|
||||
}
|
||||
});
|
||||
|
||||
$('.summernote').summernote({
|
||||
height: 400,
|
||||
toolbar: [
|
||||
['style', ['style']],
|
||||
['font', ['bold', 'italic', 'underline', 'clear']],
|
||||
['fontsize', ['fontsize']],
|
||||
['color', ['color']],
|
||||
['para', ['ul', 'ol', 'paragraph']],
|
||||
['height', ['height']],
|
||||
['table', ['table']],
|
||||
['insert', ['link', 'hr']],
|
||||
['view', ['fullscreen', 'codeview']],
|
||||
['help', ['help']],
|
||||
['media', ['media']]
|
||||
]
|
||||
});
|
||||
});
|
||||
|
||||
10
src/new/assets/backend/dashboard/js/init.js
Normal file
10
src/new/assets/backend/dashboard/js/init.js
Normal file
@ -0,0 +1,10 @@
|
||||
export function init() {
|
||||
window.psc.ajaxModal.init();
|
||||
psc.mediaChooser.init();
|
||||
psc.order.init();
|
||||
psc.product.init();
|
||||
if (typeof bootstrapApp === 'function') {
|
||||
bootstrapApp();
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,235 +1,233 @@
|
||||
define(function() {
|
||||
const Order_List_Detail = ({ uuid, basketField1, customerInfo, basketField2, pos, price, product, status, allNet, reOrder, reOrderOrder, reOrderPos }, orderUuid) => `
|
||||
<div style="${psc.order.get_pos_bg_color(status)}" class="row ${psc.order.get_pos_bg_color_class(status)}" id="row-${uuid}">
|
||||
<div class="col-1 p-1">${pos}</div>
|
||||
<div class="col-4 p-1">
|
||||
${
|
||||
(product => product.originalProduct ? `<a href="/apps/backend/product/edit/index/${product.originalProduct.uuid}">${product.originalProduct.title}</a>` : `<a href="/apps/backend/product/edit/index/${product.uuid}">${product.title}</a>` )(product) //call the anonymous inline with the data we care about
|
||||
}
|
||||
<br/>ArtNr intern: ${product.nrIntern}<br/>
|
||||
${psc.order.get_special_product_options(product.specialProductTypeObject)}</div>
|
||||
<div class="col-1 p-1">Auflage: ${price.count}</div>
|
||||
<div class="col-1 p-1">Kunden Info: ${customerInfo}${(reOrder? `<br/><strong>Ist eine Nachbestellung</strong>`:``)}</div>
|
||||
<div class="col-1 p-1">${basketField1}</div>
|
||||
<div class="col-1 p-1">${basketField2}</div>
|
||||
<div class="col-1 p-1 text-end">${new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(price.allNet/100)} <strong>(${new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(price.allGross/100)})</strong></div>
|
||||
<div class="col-2 p-2 text-end"><div class="btn-group btn-group-sm w-100">
|
||||
<button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
${psc.order.get_pos_status(status).internalName}
|
||||
</button>
|
||||
<div class="dropdown-menu">
|
||||
${psc.order.get_pos_status_loop(orderUuid, uuid)}
|
||||
</div>
|
||||
</div></div>
|
||||
<div class="col-1 p-1"></div>
|
||||
</div>
|
||||
`;
|
||||
const Order_List_Detail = ({ uuid, basketField1, customerInfo, basketField2, pos, price, product, status, allNet, reOrder, reOrderOrder, reOrderPos }, orderUuid) => `
|
||||
<div style="${psc.order.get_pos_bg_color(status)}" class="row ${psc.order.get_pos_bg_color_class(status)}" id="row-${uuid}">
|
||||
<div class="col-1 p-1">${pos}</div>
|
||||
<div class="col-4 p-1">
|
||||
${
|
||||
(product => product.originalProduct ? `<a href="/apps/backend/product/edit/index/${product.originalProduct.uuid}">${product.originalProduct.title}</a>` : `<a href="/apps/backend/product/edit/index/${product.uuid}">${product.title}</a>` )(product) //call the anonymous inline with the data we care about
|
||||
}
|
||||
<br/>ArtNr intern: ${product.nrIntern}<br/>
|
||||
${psc.order.get_special_product_options(product.specialProductTypeObject)}</div>
|
||||
<div class="col-1 p-1">Auflage: ${price.count}</div>
|
||||
<div class="col-1 p-1">Kunden Info: ${customerInfo}${(reOrder? `<br/><strong>Ist eine Nachbestellung</strong>`:``)}</div>
|
||||
<div class="col-1 p-1">${basketField1}</div>
|
||||
<div class="col-1 p-1">${basketField2}</div>
|
||||
<div class="col-1 p-1 text-end">${new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(price.allNet/100)} <strong>(${new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(price.allGross/100)})</strong></div>
|
||||
<div class="col-2 p-2 text-end"><div class="btn-group btn-group-sm w-100">
|
||||
<button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
${psc.order.get_pos_status(status).internalName}
|
||||
</button>
|
||||
<div class="dropdown-menu">
|
||||
${psc.order.get_pos_status_loop(orderUuid, uuid)}
|
||||
</div>
|
||||
</div></div>
|
||||
<div class="col-1 p-1"></div>
|
||||
</div>
|
||||
`;
|
||||
|
||||
const Order_List_Detail_Simple = ({ uuid, basketField1, customerInfo, basketField2, pos, price, product, status, allNet }, orderUuid) => `
|
||||
<tr style="${psc.order.get_pos_bg_color(status)}" class="${psc.order.get_pos_bg_color_class(status)}">
|
||||
<td>-</td>
|
||||
<td></td>
|
||||
<td>${pos}</td>
|
||||
<td colspan="4">${
|
||||
(product => product.originalProduct ? `<a href="/apps/backend/product/edit/index/${product.originalProduct.uuid}">${product.originalProduct.title}</a>` : `<a href="/apps/backend/product/edit/index/${product.uuid}">${product.title}</a>` )(product) //call the anonymous inline with the data we care about
|
||||
}<br/>ArtNr intern: ${product.nrIntern}<br/>
|
||||
${psc.order.get_special_product_options(product.specialProductTypeObject)}</td>
|
||||
<td>Auflage: ${price.count}</td>
|
||||
<td>Kunden Info: ${customerInfo}</td>
|
||||
<td>${basketField1}</td>
|
||||
<td>${basketField2}</td>
|
||||
<td></td>
|
||||
<td class="text-end">${new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(price.allNet/100)} <strong>(${new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(price.allGross/100)})</strong></td>
|
||||
<td>${psc.order.get_pos_status(status).internalName}</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
`;
|
||||
const Order_List_Detail_Simple = ({ uuid, basketField1, customerInfo, basketField2, pos, price, product, status, allNet }, orderUuid) => `
|
||||
<tr style="${psc.order.get_pos_bg_color(status)}" class="${psc.order.get_pos_bg_color_class(status)}">
|
||||
<td>-</td>
|
||||
<td></td>
|
||||
<td>${pos}</td>
|
||||
<td colspan="4">${
|
||||
(product => product.originalProduct ? `<a href="/apps/backend/product/edit/index/${product.originalProduct.uuid}">${product.originalProduct.title}</a>` : `<a href="/apps/backend/product/edit/index/${product.uuid}">${product.title}</a>` )(product) //call the anonymous inline with the data we care about
|
||||
}<br/>ArtNr intern: ${product.nrIntern}<br/>
|
||||
${psc.order.get_special_product_options(product.specialProductTypeObject)}</td>
|
||||
<td>Auflage: ${price.count}</td>
|
||||
<td>Kunden Info: ${customerInfo}</td>
|
||||
<td>${basketField1}</td>
|
||||
<td>${basketField2}</td>
|
||||
<td></td>
|
||||
<td class="text-end">${new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(price.allNet/100)} <strong>(${new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(price.allGross/100)})</strong></td>
|
||||
<td>${psc.order.get_pos_status(status).internalName}</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
`;
|
||||
|
||||
const Order_List_Pos_Status = (status, orderUuid, posUuid) => `
|
||||
<button type="button" class="dropdown-item switch_pos" data-order-uuid="${orderUuid}" data-pos-uuid="${posUuid}" data-status="${status.code}">${status.internalName}</button>
|
||||
`;
|
||||
const Order_List_Pos_Status = (status, orderUuid, posUuid) => `
|
||||
<button type="button" class="dropdown-item switch_pos" data-order-uuid="${orderUuid}" data-pos-uuid="${posUuid}" data-status="${status.code}">${status.internalName}</button>
|
||||
`;
|
||||
|
||||
const Order_List_Pos_Calc_Option = (elm) => `
|
||||
<tr><td>${elm.name}</td><td>${elm.value}</td></tr>
|
||||
`;
|
||||
const Order_List_Pos_Calc_Option = (elm) => `
|
||||
<tr><td>${elm.name}</td><td>${elm.value}</td></tr>
|
||||
`;
|
||||
|
||||
export class order {
|
||||
|
||||
return {
|
||||
|
||||
init() {
|
||||
init() {
|
||||
|
||||
this.load_status();
|
||||
this.bind_buttons();
|
||||
},
|
||||
this.load_status();
|
||||
this.bind_buttons();
|
||||
}
|
||||
|
||||
get_special_product_options(specialProductTypeObject) {
|
||||
if(specialProductTypeObject.typ != 6) {
|
||||
return '';
|
||||
get_special_product_options(specialProductTypeObject) {
|
||||
if(specialProductTypeObject.typ != 6) {
|
||||
return '';
|
||||
}
|
||||
|
||||
return '<table>' + specialProductTypeObject.options.map(elm => {
|
||||
if(elm.type != 'hidden') {
|
||||
return Order_List_Pos_Calc_Option(elm);
|
||||
}
|
||||
}).join('') + '</table>';
|
||||
}
|
||||
|
||||
return '<table>' + specialProductTypeObject.options.map(elm => {
|
||||
if(elm.type != 'hidden') {
|
||||
return Order_List_Pos_Calc_Option(elm);
|
||||
}
|
||||
}).join('') + '</table>';
|
||||
},
|
||||
|
||||
load_status() {
|
||||
if(jwt_token != "") {
|
||||
$.ajax({
|
||||
url: "/apps/api/system/status",
|
||||
contentType: "application/json",
|
||||
headers: {
|
||||
"Authorization": "Bearer " + jwt_token
|
||||
},
|
||||
method: 'GET',
|
||||
success: function (result) {
|
||||
psc.order.status_order = result.order;
|
||||
psc.order.status_pos = result.position;
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
bind_buttons() {
|
||||
$('.toogle_list_detail_view').off();
|
||||
$('.toogle_list_detail_view').on('click', function() {
|
||||
var uuid = $(this).data().uuid;
|
||||
if($('#rows-' + uuid + ' > div').length > 0) {
|
||||
$('#rows-' + uuid).html('');
|
||||
}else{
|
||||
psc.order.load_detail(uuid);
|
||||
}
|
||||
});
|
||||
|
||||
$('.toogle_list_simple_detail_view').off();
|
||||
$('.toogle_list_simple_detail_view').on('click', function() {
|
||||
var uuid = $(this).data().uuid;
|
||||
if($('#rows-' + uuid + ' > tr').length > 0) {
|
||||
$('#rows-' + uuid).html('');
|
||||
}else{
|
||||
psc.order.load_detail(uuid, true);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
},
|
||||
|
||||
load_detail(orderUuid, simple = false) {
|
||||
load_status() {
|
||||
if(jwt_token != "") {
|
||||
$.ajax({
|
||||
url: "/apps/api/order/getonebyuuid",
|
||||
contentType: "application/json",
|
||||
headers: {
|
||||
"Authorization": "Bearer " + jwt_token
|
||||
},
|
||||
method: 'POST',
|
||||
data: JSON.stringify({
|
||||
uuid: orderUuid
|
||||
}),
|
||||
success: function(result) {
|
||||
psc.order.build_details(orderUuid, result, simple);
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
build_details(orderUuid, result, simple = false) {
|
||||
if(simple) {
|
||||
$('#rows-' + result.uuid).html(result.positions.map(x => Order_List_Detail_Simple(x, orderUuid)).join(''));
|
||||
}else{
|
||||
$('#rows-' + result.uuid).html(result.positions.map(x => Order_List_Detail(x, orderUuid)).join(''));
|
||||
result.positions.map(x => this.loadPluginDetails(x));
|
||||
|
||||
}
|
||||
|
||||
this.bind_status_buttons();
|
||||
},
|
||||
|
||||
loadPluginDetails(pos) {
|
||||
$.ajax({
|
||||
url: "/apps/api/position/getpluginlistdetails/" + pos.uuid,
|
||||
url: "/apps/api/system/status",
|
||||
contentType: "application/json",
|
||||
headers: {
|
||||
"Authorization": "Bearer " + jwt_token
|
||||
},
|
||||
method: 'GET',
|
||||
success: function(result) {
|
||||
$('#row-' + pos.uuid).append(result.html);
|
||||
success: function (result) {
|
||||
psc.order.status_order = result.order;
|
||||
psc.order.status_pos = result.position;
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
bind_status_buttons() {
|
||||
$('.switch_pos').off();
|
||||
$('.switch_pos').on('click', function() {
|
||||
|
||||
var orderUuid = $(this).data().orderUuid;
|
||||
var posUuid = $(this).data().posUuid;
|
||||
var status = $(this).data().status;
|
||||
|
||||
$.ajax({
|
||||
url: "/apps/api/position/status/change",
|
||||
contentType: "application/json",
|
||||
headers: {
|
||||
"Authorization": "Bearer " + jwt_token
|
||||
},
|
||||
data: JSON.stringify({
|
||||
position: posUuid,
|
||||
status: status,
|
||||
}),
|
||||
method: 'POST',
|
||||
success: function(result) {
|
||||
$('#rows-' + orderUuid).html('');
|
||||
psc.order.load_detail(orderUuid);
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
get_pos_bg_color(status) {
|
||||
|
||||
/*
|
||||
{% if orderStatuse.getPosStatusColor(pos.status) != '' %}background-color: {{ orderStatuse.getPosStatusColor(pos.status) }}{% endif %}"
|
||||
*/
|
||||
const found = psc.order.status_pos.find(stat => stat.code == status);
|
||||
|
||||
if(found && found.color != "") {
|
||||
return 'background-color: ' + found.color;
|
||||
bind_buttons() {
|
||||
$('.toogle_list_detail_view').off();
|
||||
$('.toogle_list_detail_view').on('click', function() {
|
||||
var uuid = $(this).data().uuid;
|
||||
if($('#rows-' + uuid + ' > div').length > 0) {
|
||||
$('#rows-' + uuid).html('');
|
||||
}else{
|
||||
psc.order.load_detail(uuid);
|
||||
}
|
||||
|
||||
},
|
||||
});
|
||||
|
||||
get_pos_status(status) {
|
||||
|
||||
/*
|
||||
{% if orderStatuse.getPosStatusColor(pos.status) != '' %}background-color: {{ orderStatuse.getPosStatusColor(pos.status) }}{% endif %}"
|
||||
*/
|
||||
const found = psc.order.status_pos.find(stat => stat.code == status);
|
||||
if(found) {
|
||||
return found;
|
||||
$('.toogle_list_simple_detail_view').off();
|
||||
$('.toogle_list_simple_detail_view').on('click', function() {
|
||||
var uuid = $(this).data().uuid;
|
||||
if($('#rows-' + uuid + ' > tr').length > 0) {
|
||||
$('#rows-' + uuid).html('');
|
||||
}else{
|
||||
psc.order.load_detail(uuid, true);
|
||||
}
|
||||
});
|
||||
|
||||
return {internalName: 'notFound'};
|
||||
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
get_pos_bg_color_class(status) {
|
||||
|
||||
/*
|
||||
class="{% if pos.status == 170 %}bg-lightdark{% elseif pos.status == 200 or pos.status == 210 %}bg-lightsuccess{% else %}bg-lightdanger{% endif %}
|
||||
*/
|
||||
|
||||
if(status == 170) {
|
||||
return 'bg-lightdark';
|
||||
load_detail(orderUuid, simple = false) {
|
||||
$.ajax({
|
||||
url: "/apps/api/order/getonebyuuid",
|
||||
contentType: "application/json",
|
||||
headers: {
|
||||
"Authorization": "Bearer " + jwt_token
|
||||
},
|
||||
method: 'POST',
|
||||
data: JSON.stringify({
|
||||
uuid: orderUuid
|
||||
}),
|
||||
success: function(result) {
|
||||
psc.order.build_details(orderUuid, result, simple);
|
||||
}
|
||||
if(status == 200 || status == 210) {
|
||||
return 'bg-lightsuccess';
|
||||
})
|
||||
}
|
||||
|
||||
build_details(orderUuid, result, simple = false) {
|
||||
if(simple) {
|
||||
$('#rows-' + result.uuid).html(result.positions.map(x => Order_List_Detail_Simple(x, orderUuid)).join(''));
|
||||
}else{
|
||||
$('#rows-' + result.uuid).html(result.positions.map(x => Order_List_Detail(x, orderUuid)).join(''));
|
||||
result.positions.map(x => this.loadPluginDetails(x));
|
||||
|
||||
}
|
||||
|
||||
this.bind_status_buttons();
|
||||
}
|
||||
|
||||
loadPluginDetails(pos) {
|
||||
$.ajax({
|
||||
url: "/apps/api/position/getpluginlistdetails/" + pos.uuid,
|
||||
contentType: "application/json",
|
||||
headers: {
|
||||
"Authorization": "Bearer " + jwt_token
|
||||
},
|
||||
method: 'GET',
|
||||
success: function(result) {
|
||||
$('#row-' + pos.uuid).append(result.html);
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
return 'bg-lightdanger';
|
||||
},
|
||||
bind_status_buttons() {
|
||||
$('.switch_pos').off();
|
||||
$('.switch_pos').on('click', function() {
|
||||
|
||||
get_pos_status_loop(orderUuid, posUuid) {
|
||||
return psc.order.status_pos.map(x => Order_List_Pos_Status(x, orderUuid, posUuid)).join('');
|
||||
var orderUuid = $(this).data().orderUuid;
|
||||
var posUuid = $(this).data().posUuid;
|
||||
var status = $(this).data().status;
|
||||
|
||||
$.ajax({
|
||||
url: "/apps/api/position/status/change",
|
||||
contentType: "application/json",
|
||||
headers: {
|
||||
"Authorization": "Bearer " + jwt_token
|
||||
},
|
||||
data: JSON.stringify({
|
||||
position: posUuid,
|
||||
status: status,
|
||||
}),
|
||||
method: 'POST',
|
||||
success: function(result) {
|
||||
$('#rows-' + orderUuid).html('');
|
||||
psc.order.load_detail(orderUuid);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
get_pos_bg_color(status) {
|
||||
|
||||
/*
|
||||
{% if orderStatuse.getPosStatusColor(pos.status) != '' %}background-color: {{ orderStatuse.getPosStatusColor(pos.status) }}{% endif %}"
|
||||
*/
|
||||
const found = psc.order.status_pos.find(stat => stat.code == status);
|
||||
|
||||
if(found && found.color != "") {
|
||||
return 'background-color: ' + found.color;
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
get_pos_status(status) {
|
||||
|
||||
/*
|
||||
{% if orderStatuse.getPosStatusColor(pos.status) != '' %}background-color: {{ orderStatuse.getPosStatusColor(pos.status) }}{% endif %}"
|
||||
*/
|
||||
const found = psc.order.status_pos.find(stat => stat.code == status);
|
||||
if(found) {
|
||||
return found;
|
||||
}
|
||||
|
||||
return {internalName: 'notFound'};
|
||||
|
||||
}
|
||||
|
||||
get_pos_bg_color_class(status) {
|
||||
|
||||
/*
|
||||
class="{% if pos.status == 170 %}bg-lightdark{% elseif pos.status == 200 or pos.status == 210 %}bg-lightsuccess{% else %}bg-lightdanger{% endif %}
|
||||
*/
|
||||
|
||||
if(status == 170) {
|
||||
return 'bg-lightdark';
|
||||
}
|
||||
if(status == 200 || status == 210) {
|
||||
return 'bg-lightsuccess';
|
||||
}
|
||||
|
||||
return 'bg-lightdanger';
|
||||
}
|
||||
|
||||
get_pos_status_loop(orderUuid, posUuid) {
|
||||
return psc.order.status_pos.map(x => Order_List_Pos_Status(x, orderUuid, posUuid)).join('');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
define(function() {
|
||||
return {
|
||||
import { set } from './product/set.js'
|
||||
|
||||
init() {
|
||||
set = require('./product/set');
|
||||
set.init();
|
||||
}
|
||||
export class product {
|
||||
|
||||
init() {
|
||||
this.set = new set;
|
||||
this.set.init();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@ -1,16 +1,48 @@
|
||||
define(function() {
|
||||
function buildTable(result) {
|
||||
$('.product_set_table > tbody').empty();
|
||||
function buildTable(result) {
|
||||
$('.product_set_table > tbody').empty();
|
||||
|
||||
$.each(result.products, function(index, item) {
|
||||
$('.product_set_table > tbody').append('<tr><td>' + item.title + '</td><td><button type="button" data-uuid=' + item.uuid + ' class="btn btn-danger btn-sm product_set_delete_button"><span class="fa fa-trash"></span></button></td></tr>');
|
||||
})
|
||||
$.each(result.products, function(index, item) {
|
||||
$('.product_set_table > tbody').append('<tr><td>' + item.title + '</td><td><button type="button" data-uuid=' + item.uuid + ' class="btn btn-danger btn-sm product_set_delete_button"><span class="fa fa-trash"></span></button></td></tr>');
|
||||
})
|
||||
|
||||
bindDeleteButtons();
|
||||
}
|
||||
|
||||
function bindDeleteButtons() {
|
||||
$('.product_set_delete_button').click(function() {
|
||||
$('#overlay_loading').fadeIn();
|
||||
$.ajax({
|
||||
url: "/apps/api/product/" + productUuid + "/set",
|
||||
contentType: "application/json",
|
||||
headers: {
|
||||
"Authorization": "Bearer " + jwt_token
|
||||
},
|
||||
method: 'DELETE',
|
||||
data: JSON.stringify({
|
||||
product: {
|
||||
uuid: $(this).data('uuid')
|
||||
}
|
||||
}),
|
||||
success: function (result) {
|
||||
buildTable(result);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$('#overlay_loading').fadeOut();
|
||||
}
|
||||
export class set {
|
||||
|
||||
init() {
|
||||
if($('.product_set_add_button').length > 0) {
|
||||
this.initAddButton();
|
||||
this.loadTable();
|
||||
}
|
||||
|
||||
bindDeleteButtons();
|
||||
}
|
||||
|
||||
function bindDeleteButtons() {
|
||||
$('.product_set_delete_button').click(function() {
|
||||
initAddButton() {
|
||||
$('.product_set_add_button').click(function() {
|
||||
$('#overlay_loading').fadeIn();
|
||||
$.ajax({
|
||||
url: "/apps/api/product/" + productUuid + "/set",
|
||||
@ -18,7 +50,7 @@ define(function() {
|
||||
headers: {
|
||||
"Authorization": "Bearer " + jwt_token
|
||||
},
|
||||
method: 'DELETE',
|
||||
method: 'PUT',
|
||||
data: JSON.stringify({
|
||||
product: {
|
||||
uuid: $(this).data('uuid')
|
||||
@ -28,57 +60,21 @@ define(function() {
|
||||
buildTable(result);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$('#overlay_loading').fadeOut();
|
||||
})
|
||||
}
|
||||
return {
|
||||
|
||||
init() {
|
||||
if($('.product_set_add_button').length > 0) {
|
||||
this.initAddButton();
|
||||
this.loadTable();
|
||||
loadTable() {
|
||||
$('#overlay_loading').fadeIn();
|
||||
$.ajax({
|
||||
url: "/apps/api/product/" + productUuid + "/set",
|
||||
contentType: "application/json",
|
||||
headers: {
|
||||
"Authorization": "Bearer " + jwt_token
|
||||
},
|
||||
method: 'GET',
|
||||
success: function (result) {
|
||||
buildTable(result);
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
initAddButton() {
|
||||
$('.product_set_add_button').click(function() {
|
||||
$('#overlay_loading').fadeIn();
|
||||
$.ajax({
|
||||
url: "/apps/api/product/" + productUuid + "/set",
|
||||
contentType: "application/json",
|
||||
headers: {
|
||||
"Authorization": "Bearer " + jwt_token
|
||||
},
|
||||
method: 'PUT',
|
||||
data: JSON.stringify({
|
||||
product: {
|
||||
uuid: $(this).data('uuid')
|
||||
}
|
||||
}),
|
||||
success: function (result) {
|
||||
buildTable(result);
|
||||
}
|
||||
});
|
||||
})
|
||||
},
|
||||
|
||||
loadTable() {
|
||||
$('#overlay_loading').fadeIn();
|
||||
$.ajax({
|
||||
url: "/apps/api/product/" + productUuid + "/set",
|
||||
contentType: "application/json",
|
||||
headers: {
|
||||
"Authorization": "Bearer " + jwt_token
|
||||
},
|
||||
method: 'GET',
|
||||
success: function (result) {
|
||||
buildTable(result);
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@ -1,29 +1,26 @@
|
||||
define(function() {
|
||||
export class ajaxModal {
|
||||
|
||||
return {
|
||||
|
||||
init() {
|
||||
$(document).on('show.bs.modal', '.js-ajax-modal', this.initModals);
|
||||
},
|
||||
|
||||
|
||||
initModals(e) {
|
||||
var $modal = $(this);
|
||||
|
||||
|
||||
if (!$modal.data('loaded')) {
|
||||
var $btn = $(e.relatedTarget),
|
||||
link = $btn.data('link');
|
||||
|
||||
$modal.data('loaded', true);
|
||||
$modal.find('.js-ajax-modal-body').append('<iframe class="ajax-modal__body__iframe" frameborder="0" src="' + link + '" width="100%" height="100%" scrolling="auto"></iframe>');
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
resetAjaxModals() {
|
||||
$('.js-ajax-modal').off('show.bs.modal', this.initModals);
|
||||
$('.js-ajax-modal').on('show.bs.modal', this.initModals);
|
||||
},
|
||||
init() {
|
||||
$(document).on('show.bs.modal', '.js-ajax-modal', this.initModals);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
initModals(e) {
|
||||
var $modal = $(this);
|
||||
|
||||
|
||||
if (!$modal.data('loaded')) {
|
||||
var $btn = $(e.relatedTarget),
|
||||
link = $btn.data('link');
|
||||
|
||||
$modal.data('loaded', true);
|
||||
$modal.find('.js-ajax-modal-body').append('<iframe class="ajax-modal__body__iframe" frameborder="0" src="' + link + '" width="100%" height="100%" scrolling="auto"></iframe>');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
resetAjaxModals() {
|
||||
$('.js-ajax-modal').off('show.bs.modal', this.initModals);
|
||||
$('.js-ajax-modal').on('show.bs.modal', this.initModals);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,202 +1,199 @@
|
||||
define(function() {
|
||||
|
||||
return {
|
||||
|
||||
init() {
|
||||
this.urlChooser();
|
||||
this.initDelBtn();
|
||||
},
|
||||
|
||||
// Del btn
|
||||
initDelBtn() {
|
||||
$('body').on('click', '.js-media-chooser-del-preview-btn', function (e) {
|
||||
var $this = $(this),
|
||||
linkedID = $this.data('linked-id'),
|
||||
$widget = $('#' + linkedID + '-widget'),
|
||||
$input = $('#' + linkedID);
|
||||
|
||||
$this.parent().find('.media-chooser__preview').remove();
|
||||
|
||||
$(".media-thumbnail__icon").remove();
|
||||
|
||||
$widget.removeClass('media-chooser--choosen');
|
||||
$input.val('');
|
||||
});
|
||||
},
|
||||
|
||||
// URL-Chooser
|
||||
urlChooser() {
|
||||
|
||||
// Link Chooser select
|
||||
$('body').on('click', '.js-url-chooser-link-select', function (e) {
|
||||
e.preventDefault();
|
||||
|
||||
var $this = $(this),
|
||||
slug = $this.data('slug'),
|
||||
id = $this.data('id'),
|
||||
replaceUrl = $this.closest('nav').data('replace-url');
|
||||
|
||||
// Store values
|
||||
itemUrl = (slug ? slug : '');
|
||||
itemId = id;
|
||||
|
||||
// Replace URL
|
||||
$.ajax({
|
||||
url: replaceUrl,
|
||||
type: 'GET',
|
||||
data: {'text': itemUrl},
|
||||
success: function (response) {
|
||||
replacedUrl = response.text;
|
||||
|
||||
// Update preview
|
||||
$('#url-chooser__selection-preview').text('Selection: ' + replacedUrl);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// Media Chooser select
|
||||
$('body').on('click', '.js-url-chooser-media-select', function (e) {
|
||||
e.preventDefault();
|
||||
|
||||
var $this = $(this),
|
||||
path = $this.data('path'),
|
||||
thumbPath = $this.data('thumb-path'),
|
||||
id = $this.data('id'),
|
||||
title = $this.data('title'),
|
||||
cke = $this.data('cke'),
|
||||
replaceUrl = $this.closest('.thumbnail-wrapper').data('replace-url');
|
||||
|
||||
// Store values
|
||||
itemUrl = path;
|
||||
itemId = id;
|
||||
itemTitle = title;
|
||||
itemThumbPath = thumbPath;
|
||||
|
||||
// Save
|
||||
if (!cke) {
|
||||
var isMediaChooser = $(window.frameElement).closest('.js-ajax-modal').data('media-chooser');
|
||||
|
||||
if (isMediaChooser) {
|
||||
psc.mediaChooser.saveMediaChooserModal(false);
|
||||
} else {
|
||||
// Replace URL
|
||||
$.ajax({
|
||||
url: replaceUrl,
|
||||
type: 'GET',
|
||||
data: {'text': itemUrl},
|
||||
success: function (response) {
|
||||
replacedUrl = response.text;
|
||||
}
|
||||
}).done(function () {
|
||||
psc.mediaChooser.saveUrlChooserModal(false);
|
||||
});
|
||||
}
|
||||
|
||||
} else {
|
||||
psc.mediaChooser.saveMediaChooserModal(true);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// Cancel
|
||||
$('#cancel-url-chooser-modal').on('click', function () {
|
||||
var cke = $(this).data('cke');
|
||||
|
||||
if (!cke) {
|
||||
var $parentModal = $(window.frameElement).closest('.js-ajax-modal'),
|
||||
parentModalId = $parentModal.attr('id');
|
||||
|
||||
parent.$('#' + parentModalId).modal('hide');
|
||||
|
||||
} else {
|
||||
window.close();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// OK
|
||||
$(document).on('click', '#save-url-chooser-modal', function () {
|
||||
var cke = $(this).data('cke');
|
||||
|
||||
psc.mediaChooser.saveUrlChooserModal(cke);
|
||||
});
|
||||
},
|
||||
|
||||
// Save for URL-chooser
|
||||
saveUrlChooserModal(cke) {
|
||||
if (!cke) {
|
||||
var $parentModal = $(window.frameElement).closest('.js-ajax-modal'),
|
||||
linkedInputId = $parentModal.data('linked-input-id'),
|
||||
parentModalId = $parentModal.attr('id');
|
||||
|
||||
// Set val
|
||||
parent.$('#' + linkedInputId).val(itemUrl).change();
|
||||
|
||||
// Set proper URL
|
||||
parent.$('#' + linkedInputId).parent().find('.js-urlchooser-value').val(replacedUrl);
|
||||
|
||||
// Close modal
|
||||
parent.$('#' + parentModalId).modal('hide');
|
||||
|
||||
} else {
|
||||
var funcNum = getUrlParam('CKEditorFuncNum');
|
||||
|
||||
// Set val
|
||||
window.opener.CKEDITOR.tools.callFunction(funcNum, itemUrl);
|
||||
|
||||
// Close window
|
||||
window.close();
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
// Save for Media-chooser
|
||||
saveMediaChooserModal(cke) {
|
||||
if (!cke) {
|
||||
var $parentModal = $(window.frameElement).closest('.js-ajax-modal'),
|
||||
linkedInputId = $parentModal.data('linked-input-id'),
|
||||
parentModalId = $parentModal.attr('id');
|
||||
|
||||
// Set val
|
||||
parent.$('#' + linkedInputId).val(itemId).change();
|
||||
|
||||
// Update preview
|
||||
var $mediaChooser = parent.$('#' + linkedInputId + '-widget'),
|
||||
$previewImg = parent.$('#' + linkedInputId + '__preview__img'),
|
||||
$previewTitle = parent.$('#' + linkedInputId + '__preview__title');
|
||||
|
||||
$mediaChooser.addClass('media-chooser--choosen');
|
||||
$previewTitle.html(itemTitle);
|
||||
|
||||
if (itemThumbPath === "") {
|
||||
var $parent = $previewTitle.parent();
|
||||
$parent.prepend('<i class="fa fa-file-o media-thumbnail__icon"></i>');
|
||||
} else {
|
||||
$previewImg.attr('src', itemThumbPath);
|
||||
}
|
||||
|
||||
// Close modal
|
||||
parent.$('#' + parentModalId).modal('hide');
|
||||
|
||||
} else {
|
||||
var funcNum = getUrlParam('CKEditorFuncNum');
|
||||
|
||||
// Set val
|
||||
window.opener.CKEDITOR.tools.callFunction(funcNum, itemUrl);
|
||||
|
||||
// Close window
|
||||
window.close();
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
// Get Url Parameters
|
||||
getUrlParam(paramName) {
|
||||
var reParam = new RegExp('(?:[\?&]|&)' + paramName + '=([^&]+)', 'i'),
|
||||
match = window.location.search.match(reParam);
|
||||
|
||||
return (match && match.length > 1) ? match[1] : '';
|
||||
}
|
||||
export class mediaChooser {
|
||||
|
||||
init() {
|
||||
this.urlChooser();
|
||||
this.initDelBtn();
|
||||
}
|
||||
});
|
||||
|
||||
// Del btn
|
||||
initDelBtn() {
|
||||
$('body').on('click', '.js-media-chooser-del-preview-btn', function (e) {
|
||||
var $this = $(this),
|
||||
linkedID = $this.data('linked-id'),
|
||||
$widget = $('#' + linkedID + '-widget'),
|
||||
$input = $('#' + linkedID);
|
||||
|
||||
$this.parent().find('.media-chooser__preview').remove();
|
||||
|
||||
$(".media-thumbnail__icon").remove();
|
||||
|
||||
$widget.removeClass('media-chooser--choosen');
|
||||
$input.val('');
|
||||
});
|
||||
}
|
||||
|
||||
// URL-Chooser
|
||||
urlChooser() {
|
||||
|
||||
// Link Chooser select
|
||||
$('body').on('click', '.js-url-chooser-link-select', function (e) {
|
||||
e.preventDefault();
|
||||
|
||||
var $this = $(this),
|
||||
slug = $this.data('slug'),
|
||||
id = $this.data('id'),
|
||||
replaceUrl = $this.closest('nav').data('replace-url');
|
||||
|
||||
// Store values
|
||||
itemUrl = (slug ? slug : '');
|
||||
itemId = id;
|
||||
|
||||
// Replace URL
|
||||
$.ajax({
|
||||
url: replaceUrl,
|
||||
type: 'GET',
|
||||
data: {'text': itemUrl},
|
||||
success: function (response) {
|
||||
replacedUrl = response.text;
|
||||
|
||||
// Update preview
|
||||
$('#url-chooser__selection-preview').text('Selection: ' + replacedUrl);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// Media Chooser select
|
||||
$('body').on('click', '.js-url-chooser-media-select', function (e) {
|
||||
e.preventDefault();
|
||||
|
||||
var $this = $(this),
|
||||
path = $this.data('path'),
|
||||
thumbPath = $this.data('thumb-path'),
|
||||
id = $this.data('id'),
|
||||
title = $this.data('title'),
|
||||
cke = $this.data('cke'),
|
||||
replaceUrl = $this.closest('.thumbnail-wrapper').data('replace-url');
|
||||
|
||||
// Store values
|
||||
itemUrl = path;
|
||||
itemId = id;
|
||||
itemTitle = title;
|
||||
itemThumbPath = thumbPath;
|
||||
|
||||
// Save
|
||||
if (!cke) {
|
||||
var isMediaChooser = $(window.frameElement).closest('.js-ajax-modal').data('media-chooser');
|
||||
|
||||
if (isMediaChooser) {
|
||||
psc.mediaChooser.saveMediaChooserModal(false);
|
||||
} else {
|
||||
// Replace URL
|
||||
$.ajax({
|
||||
url: replaceUrl,
|
||||
type: 'GET',
|
||||
data: {'text': itemUrl},
|
||||
success: function (response) {
|
||||
replacedUrl = response.text;
|
||||
}
|
||||
}).done(function () {
|
||||
psc.mediaChooser.saveUrlChooserModal(false);
|
||||
});
|
||||
}
|
||||
|
||||
} else {
|
||||
psc.mediaChooser.saveMediaChooserModal(true);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// Cancel
|
||||
$('#cancel-url-chooser-modal').on('click', function () {
|
||||
var cke = $(this).data('cke');
|
||||
|
||||
if (!cke) {
|
||||
var $parentModal = $(window.frameElement).closest('.js-ajax-modal'),
|
||||
parentModalId = $parentModal.attr('id');
|
||||
|
||||
parent.$('#' + parentModalId).modal('hide');
|
||||
|
||||
} else {
|
||||
window.close();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// OK
|
||||
$(document).on('click', '#save-url-chooser-modal', function () {
|
||||
var cke = $(this).data('cke');
|
||||
|
||||
psc.mediaChooser.saveUrlChooserModal(cke);
|
||||
});
|
||||
}
|
||||
|
||||
// Save for URL-chooser
|
||||
saveUrlChooserModal(cke) {
|
||||
if (!cke) {
|
||||
var $parentModal = $(window.frameElement).closest('.js-ajax-modal'),
|
||||
linkedInputId = $parentModal.data('linked-input-id'),
|
||||
parentModalId = $parentModal.attr('id');
|
||||
|
||||
// Set val
|
||||
parent.$('#' + linkedInputId).val(itemUrl).change();
|
||||
|
||||
// Set proper URL
|
||||
parent.$('#' + linkedInputId).parent().find('.js-urlchooser-value').val(replacedUrl);
|
||||
|
||||
// Close modal
|
||||
parent.$('#' + parentModalId).modal('hide');
|
||||
|
||||
} else {
|
||||
var funcNum = getUrlParam('CKEditorFuncNum');
|
||||
|
||||
// Set val
|
||||
window.opener.CKEDITOR.tools.callFunction(funcNum, itemUrl);
|
||||
|
||||
// Close window
|
||||
window.close();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Save for Media-chooser
|
||||
saveMediaChooserModal(cke) {
|
||||
if (!cke) {
|
||||
var $parentModal = $(window.frameElement).closest('.js-ajax-modal'),
|
||||
linkedInputId = $parentModal.data('linked-input-id'),
|
||||
parentModalId = $parentModal.attr('id');
|
||||
|
||||
// Set val
|
||||
parent.$('#' + linkedInputId).val(itemId).change();
|
||||
|
||||
// Update preview
|
||||
var $mediaChooser = parent.$('#' + linkedInputId + '-widget'),
|
||||
$previewImg = parent.$('#' + linkedInputId + '__preview__img'),
|
||||
$previewTitle = parent.$('#' + linkedInputId + '__preview__title');
|
||||
|
||||
$mediaChooser.addClass('media-chooser--choosen');
|
||||
$previewTitle.html(itemTitle);
|
||||
|
||||
if (itemThumbPath === "") {
|
||||
var $parent = $previewTitle.parent();
|
||||
$parent.prepend('<i class="fa fa-file-o media-thumbnail__icon"></i>');
|
||||
} else {
|
||||
$previewImg.attr('src', itemThumbPath);
|
||||
}
|
||||
|
||||
// Close modal
|
||||
parent.$('#' + parentModalId).modal('hide');
|
||||
|
||||
} else {
|
||||
var funcNum = getUrlParam('CKEditorFuncNum');
|
||||
|
||||
// Set val
|
||||
window.opener.CKEDITOR.tools.callFunction(funcNum, itemUrl);
|
||||
|
||||
// Close window
|
||||
window.close();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Get Url Parameters
|
||||
getUrlParam(paramName) {
|
||||
var reParam = new RegExp('(?:[\?&]|&)' + paramName + '=([^&]+)', 'i'),
|
||||
match = window.location.search.match(reParam);
|
||||
|
||||
return (match && match.length > 1) ? match[1] : '';
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
6
src/new/assets/backend/dashboard/less/base.less → src/new/assets/backend/dashboard/less/base.scss
Executable file → Normal file
6
src/new/assets/backend/dashboard/less/base.less → src/new/assets/backend/dashboard/less/base.scss
Executable file → Normal file
@ -272,8 +272,8 @@ body > header > .header {
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
|
||||
.thead-dark {
|
||||
color:white;
|
||||
.thead-dark > tr > th {
|
||||
color:white !important;
|
||||
}
|
||||
|
||||
@import "toogle/toogle.less";
|
||||
@import "toogle/toogle.less";
|
||||
0
src/new/assets/backend/dashboard/less/toogle/toogle.less → src/new/assets/backend/dashboard/less/toogle/toogle.scss
Executable file → Normal file
0
src/new/assets/backend/dashboard/less/toogle/toogle.less → src/new/assets/backend/dashboard/less/toogle/toogle.scss
Executable file → Normal file
@ -5,7 +5,7 @@
|
||||
"enabled": true,
|
||||
"fetch": "eager",
|
||||
"autoimport": {
|
||||
"tom-select/dist/css/tom-select.default.css": false,
|
||||
"tom-select/dist/css/tom-select.default.css": true,
|
||||
"tom-select/dist/css/tom-select.bootstrap4.css": false,
|
||||
"tom-select/dist/css/tom-select.bootstrap5.css": true
|
||||
}
|
||||
|
||||
@ -1,3 +0,0 @@
|
||||
[ZoneTransfer]
|
||||
ZoneId=3
|
||||
HostUrl=https://gitlab.com/
|
||||
3
src/new/assets/styles/app.css
Normal file
3
src/new/assets/styles/app.css
Normal file
@ -0,0 +1,3 @@
|
||||
body {
|
||||
background-color: skyblue;
|
||||
}
|
||||
@ -1,8 +1,9 @@
|
||||
import "./css/backend.css"
|
||||
import Alpine from 'alpinejs';
|
||||
import persist from '@alpinejs/persist'
|
||||
global.$ = global.jQuery = window.jQuery = require('jquery');
|
||||
import { startStimulusApp } from '@symfony/stimulus-bridge';
|
||||
import $ from 'jquery'
|
||||
window.$ = window.jQuery = $;
|
||||
import { startStimulusApp } from '@symfony/stimulus-bundle';
|
||||
const app = startStimulusApp();
|
||||
|
||||
Alpine.plugin(persist)
|
||||
@ -28,10 +28,10 @@
|
||||
}
|
||||
|
||||
.badge-yes {
|
||||
@apply inline-flex rounded-sm bg-lime-500 px-2 py-1 text-sm font-medium text-white hover:bg-opacity-90 min-w-20 justify-center shadow-xl;
|
||||
@apply inline-flex rounded-sm bg-lime-500 px-2 py-1 text-sm font-medium text-white hover:bg-opacity-90 justify-center shadow-xl;
|
||||
}
|
||||
.badge-no {
|
||||
@apply inline-flex rounded-sm bg-orange-500 px-2 py-1 text-sm font-medium text-white hover:bg-opacity-90 min-w-20 justify-center shadow-xl;
|
||||
@apply inline-flex rounded-sm bg-orange-500 px-2 py-1 text-sm font-medium text-white hover:bg-opacity-90 justify-center shadow-xl;
|
||||
}
|
||||
|
||||
.table-icon, .button-icon {
|
||||
|
||||
@ -64,6 +64,7 @@
|
||||
"sensio/framework-extra-bundle": "^6.1",
|
||||
"sofort/sofortlib-php": "3.3.2",
|
||||
"symfony/asset": "*",
|
||||
"symfony/asset-mapper": "6.4.*",
|
||||
"symfony/console": "*",
|
||||
"symfony/dotenv": "*",
|
||||
"symfony/expression-language": "*",
|
||||
@ -93,9 +94,10 @@
|
||||
"symfony/ux-twig-component": "^2.12",
|
||||
"symfony/validator": "*",
|
||||
"symfony/web-link": "*",
|
||||
"symfony/webpack-encore-bundle": "^v1.16.0",
|
||||
"symfony/yaml": "*",
|
||||
"symfonycasts/dynamic-forms": "^0.1.1",
|
||||
"symfonycasts/sass-bundle": "^0.8.2",
|
||||
"symfonycasts/tailwind-bundle": "^0.7.0",
|
||||
"tp/paydirekt-php": "^4.0",
|
||||
"twig/extra-bundle": "^2.12|^3.0",
|
||||
"twig/intl-extra": "^3.8",
|
||||
@ -176,7 +178,8 @@
|
||||
"auto-scripts": {
|
||||
"cache:clear --no-warmup": "symfony-cmd",
|
||||
"cache:clear": "symfony-cmd",
|
||||
"assets:install %PUBLIC_DIR%": "symfony-cmd"
|
||||
"assets:install %PUBLIC_DIR%": "symfony-cmd",
|
||||
"importmap:install": "symfony-cmd"
|
||||
},
|
||||
"post-install-cmd": [
|
||||
],
|
||||
|
||||
345
src/new/composer.lock
generated
345
src/new/composer.lock
generated
@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "662f9319208d03de9b69b0d3b1488f2a",
|
||||
"content-hash": "dc6c3766ebeb94097df82b3713c6f4d8",
|
||||
"packages": [
|
||||
{
|
||||
"name": "azuyalabs/yasumi",
|
||||
@ -553,6 +553,87 @@
|
||||
},
|
||||
"time": "2018-01-22T09:00:48+00:00"
|
||||
},
|
||||
{
|
||||
"name": "composer/semver",
|
||||
"version": "3.4.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/composer/semver.git",
|
||||
"reference": "4313d26ada5e0c4edfbd1dc481a92ff7bff91f12"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/composer/semver/zipball/4313d26ada5e0c4edfbd1dc481a92ff7bff91f12",
|
||||
"reference": "4313d26ada5e0c4edfbd1dc481a92ff7bff91f12",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^5.3.2 || ^7.0 || ^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpstan/phpstan": "^1.11",
|
||||
"symfony/phpunit-bridge": "^3 || ^7"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-main": "3.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Composer\\Semver\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Nils Adermann",
|
||||
"email": "naderman@naderman.de",
|
||||
"homepage": "http://www.naderman.de"
|
||||
},
|
||||
{
|
||||
"name": "Jordi Boggiano",
|
||||
"email": "j.boggiano@seld.be",
|
||||
"homepage": "http://seld.be"
|
||||
},
|
||||
{
|
||||
"name": "Rob Bast",
|
||||
"email": "rob.bast@gmail.com",
|
||||
"homepage": "http://robbast.nl"
|
||||
}
|
||||
],
|
||||
"description": "Semver library that offers utilities, version constraint parsing and validation.",
|
||||
"keywords": [
|
||||
"semantic",
|
||||
"semver",
|
||||
"validation",
|
||||
"versioning"
|
||||
],
|
||||
"support": {
|
||||
"irc": "ircs://irc.libera.chat:6697/composer",
|
||||
"issues": "https://github.com/composer/semver/issues",
|
||||
"source": "https://github.com/composer/semver/tree/3.4.3"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://packagist.com",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/composer",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/composer/composer",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-19T14:15:21+00:00"
|
||||
},
|
||||
{
|
||||
"name": "ddeboer/imap",
|
||||
"version": "1.18.0",
|
||||
@ -8073,6 +8154,85 @@
|
||||
],
|
||||
"time": "2024-10-25T15:07:50+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/asset-mapper",
|
||||
"version": "v6.4.16",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/asset-mapper.git",
|
||||
"reference": "64fb7ab10aa8b95f2cb4caa2ccb17360b4367803"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/asset-mapper/zipball/64fb7ab10aa8b95f2cb4caa2ccb17360b4367803",
|
||||
"reference": "64fb7ab10aa8b95f2cb4caa2ccb17360b4367803",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"composer/semver": "^3.0",
|
||||
"php": ">=8.1",
|
||||
"symfony/deprecation-contracts": "^2.5|^3",
|
||||
"symfony/filesystem": "^5.4|^6.0|^7.0",
|
||||
"symfony/http-client": "^6.3|^7.0"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/framework-bundle": "<6.4"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/asset": "^5.4|^6.0|^7.0",
|
||||
"symfony/browser-kit": "^5.4|^6.0|^7.0",
|
||||
"symfony/console": "^5.4|^6.0|^7.0",
|
||||
"symfony/event-dispatcher-contracts": "^3.0",
|
||||
"symfony/finder": "^5.4|^6.0|^7.0",
|
||||
"symfony/framework-bundle": "^6.4|^7.0",
|
||||
"symfony/http-foundation": "^5.4|^6.0|^7.0",
|
||||
"symfony/http-kernel": "^5.4|^6.0|^7.0",
|
||||
"symfony/web-link": "^5.4|^6.0|^7.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\Component\\AssetMapper\\": ""
|
||||
},
|
||||
"exclude-from-classmap": [
|
||||
"/Tests/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Maps directories of assets & makes them available in a public directory with versioned filenames.",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/asset-mapper/tree/v6.4.16"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-11-20T11:01:37+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/cache",
|
||||
"version": "v6.4.16",
|
||||
@ -13588,79 +13748,6 @@
|
||||
],
|
||||
"time": "2024-09-25T14:18:03+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/webpack-encore-bundle",
|
||||
"version": "v1.17.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/webpack-encore-bundle.git",
|
||||
"reference": "471ebbc03072dad6e31840dc317bc634a32785f5"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/webpack-encore-bundle/zipball/471ebbc03072dad6e31840dc317bc634a32785f5",
|
||||
"reference": "471ebbc03072dad6e31840dc317bc634a32785f5",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.1.3",
|
||||
"symfony/asset": "^4.4 || ^5.0 || ^6.0",
|
||||
"symfony/config": "^4.4 || ^5.0 || ^6.0",
|
||||
"symfony/dependency-injection": "^4.4 || ^5.0 || ^6.0",
|
||||
"symfony/deprecation-contracts": "^2.1 || ^3.0",
|
||||
"symfony/http-kernel": "^4.4 || ^5.0 || ^6.0",
|
||||
"symfony/polyfill-php80": "^1.25.0",
|
||||
"symfony/service-contracts": "^1.0 || ^2.0 || ^3.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/framework-bundle": "^4.4 || ^5.0 || ^6.0",
|
||||
"symfony/phpunit-bridge": "^5.3 || ^6.0",
|
||||
"symfony/twig-bundle": "^4.4 || ^5.0 || ^6.0",
|
||||
"symfony/web-link": "^4.4 || ^5.0 || ^6.0"
|
||||
},
|
||||
"type": "symfony-bundle",
|
||||
"extra": {
|
||||
"thanks": {
|
||||
"url": "https://github.com/symfony/webpack-encore",
|
||||
"name": "symfony/webpack-encore"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\WebpackEncoreBundle\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Integration with your Symfony app & Webpack Encore!",
|
||||
"support": {
|
||||
"issues": "https://github.com/symfony/webpack-encore-bundle/issues",
|
||||
"source": "https://github.com/symfony/webpack-encore-bundle/tree/v1.17.2"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2023-09-26T14:36:28+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/yaml",
|
||||
"version": "v6.4.13",
|
||||
@ -13787,6 +13874,116 @@
|
||||
},
|
||||
"time": "2024-10-22T16:59:02+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfonycasts/sass-bundle",
|
||||
"version": "v0.8.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/SymfonyCasts/sass-bundle.git",
|
||||
"reference": "99d9b3ec1b436c7038ded6a3e38f2b1d65240e21"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/SymfonyCasts/sass-bundle/zipball/99d9b3ec1b436c7038ded6a3e38f2b1d65240e21",
|
||||
"reference": "99d9b3ec1b436c7038ded6a3e38f2b1d65240e21",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=8.1",
|
||||
"symfony/asset-mapper": "^6.3|^7.0",
|
||||
"symfony/console": "^5.4|^6.3|^7.0",
|
||||
"symfony/filesystem": "^5.4|^6.3|^7.0",
|
||||
"symfony/http-client": "^5.4|^6.3|^7.0",
|
||||
"symfony/process": "^5.4|^6.3|^7.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"matthiasnoback/symfony-config-test": "^5.0",
|
||||
"phpunit/phpunit": "^9.6",
|
||||
"symfony/framework-bundle": "^6.3|^7.0",
|
||||
"symfony/phpunit-bridge": "^6.3.9|^7.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfonycasts\\SassBundle\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Mathéo Daninos",
|
||||
"homepage": "https://github.com/WebMamba"
|
||||
}
|
||||
],
|
||||
"description": "Delightful Sass Support for Symfony + AssetMapper",
|
||||
"keywords": [
|
||||
"asset-mapper",
|
||||
"sass"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/SymfonyCasts/sass-bundle/issues",
|
||||
"source": "https://github.com/SymfonyCasts/sass-bundle/tree/v0.8.2"
|
||||
},
|
||||
"time": "2024-10-22T16:58:17+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfonycasts/tailwind-bundle",
|
||||
"version": "v0.7.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/SymfonyCasts/tailwind-bundle.git",
|
||||
"reference": "5c0e36694a49f017a06d0331e45ca384fc5f7677"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/SymfonyCasts/tailwind-bundle/zipball/5c0e36694a49f017a06d0331e45ca384fc5f7677",
|
||||
"reference": "5c0e36694a49f017a06d0331e45ca384fc5f7677",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=8.1",
|
||||
"symfony/asset-mapper": "^6.3|^7.0",
|
||||
"symfony/cache": "^6.3|^7.0",
|
||||
"symfony/console": "^5.4|^6.3|^7.0",
|
||||
"symfony/http-client": "^5.4|^6.3|^7.0",
|
||||
"symfony/process": "^5.4|^6.3|^7.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.6",
|
||||
"symfony/filesystem": "^6.3|^7.0",
|
||||
"symfony/framework-bundle": "^6.3|^7.0",
|
||||
"symfony/phpunit-bridge": "^6.3.9|^7.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfonycasts\\TailwindBundle\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Ryan Weaver",
|
||||
"homepage": "https://symfonycasts.com"
|
||||
}
|
||||
],
|
||||
"description": "Delightful Tailwind Support for Symfony + AssetMapper",
|
||||
"keywords": [
|
||||
"asset-mapper",
|
||||
"tailwind"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/SymfonyCasts/tailwind-bundle/issues",
|
||||
"source": "https://github.com/SymfonyCasts/tailwind-bundle/tree/v0.7.0"
|
||||
},
|
||||
"time": "2025-01-22T16:31:51+00:00"
|
||||
},
|
||||
{
|
||||
"name": "tp/paydirekt-php",
|
||||
"version": "4.0.1",
|
||||
|
||||
@ -18,7 +18,6 @@ return [
|
||||
Symfony\Bundle\WebProfilerBundle\WebProfilerBundle::class => ['dev' => true, 'test' => true],
|
||||
Symfony\Bundle\MonologBundle\MonologBundle::class => ['all' => true],
|
||||
Symfony\Bundle\DebugBundle\DebugBundle::class => ['dev' => true, 'test' => true],
|
||||
Symfony\WebpackEncoreBundle\WebpackEncoreBundle::class => ['all' => true],
|
||||
PSC\System\PluginBundle\PSCSystemPluginBundle::class => ['all' => true],
|
||||
PSC\System\UpdateBundle\PSCSystemUpdateBundle::class => ['all' => true],
|
||||
PSC\Shop\ThemeBundle\PSCShopThemeBundle::class => ['all' => true],
|
||||
@ -61,4 +60,6 @@ return [
|
||||
Symfony\UX\Autocomplete\AutocompleteBundle::class => ['all' => true],
|
||||
Symfony\UX\StimulusBundle\StimulusBundle::class => ['all' => true],
|
||||
Symfony\UX\Chartjs\ChartjsBundle::class => ['all' => true],
|
||||
Symfonycasts\TailwindBundle\SymfonycastsTailwindBundle::class => ['all' => true],
|
||||
Symfonycasts\SassBundle\SymfonycastsSassBundle::class => ['all' => true],
|
||||
];
|
||||
|
||||
11
src/new/config/packages/asset_mapper.yaml
Normal file
11
src/new/config/packages/asset_mapper.yaml
Normal file
@ -0,0 +1,11 @@
|
||||
framework:
|
||||
asset_mapper:
|
||||
# The paths to make available to the asset mapper.
|
||||
paths:
|
||||
- assets/
|
||||
missing_import_mode: strict
|
||||
|
||||
when@prod:
|
||||
framework:
|
||||
asset_mapper:
|
||||
missing_import_mode: warn
|
||||
@ -1,9 +0,0 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
|
||||
|
||||
return static function (ContainerConfigurator $containerConfigurator): void {
|
||||
$containerConfigurator->extension('framework', ['assets' => ['json_manifest_path' => '%kernel.project_dir%/web/build/manifest.json']]);
|
||||
};
|
||||
3
src/new/config/packages/symfonycasts_tailwind.yaml
Normal file
3
src/new/config/packages/symfonycasts_tailwind.yaml
Normal file
@ -0,0 +1,3 @@
|
||||
symfonycasts_tailwind:
|
||||
binary_version: 'v3.3.0'
|
||||
input_css: 'assets/tailwind/css/backend.css'
|
||||
@ -1,9 +0,0 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
|
||||
|
||||
return static function (ContainerConfigurator $containerConfigurator): void {
|
||||
$containerConfigurator->extension('webpack_encore', ['output_path' => '%kernel.project_dir%/web/build']);
|
||||
};
|
||||
103
src/new/importmap.php
Normal file
103
src/new/importmap.php
Normal file
@ -0,0 +1,103 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Returns the importmap for this application.
|
||||
*
|
||||
* - "path" is a path inside the asset mapper system. Use the
|
||||
* "debug:asset-map" command to see the full list of paths.
|
||||
*
|
||||
* - "entrypoint" (JavaScript only) set to true for any module that will
|
||||
* be used as an "entrypoint" (and passed to the importmap() Twig function).
|
||||
*
|
||||
* The "importmap:require" command can be used to add new entries to this file.
|
||||
*/
|
||||
return [
|
||||
'backend/dashboard' => [
|
||||
'path' => './assets/backend/dashboard/dashboard.js',
|
||||
'entrypoint' => true,
|
||||
],
|
||||
'backend/tailwind' => [
|
||||
'path' => './assets/tailwind/backend.js',
|
||||
'entrypoint' => true,
|
||||
],
|
||||
'@hotwired/stimulus' => [
|
||||
'version' => '3.2.2',
|
||||
],
|
||||
'tom-select/dist/css/tom-select.bootstrap5.css' => [
|
||||
'version' => '2.4.1',
|
||||
'type' => 'css',
|
||||
],
|
||||
'@symfony/stimulus-bundle' => [
|
||||
'path' => '@symfony/stimulus-bundle/loader.js',
|
||||
],
|
||||
'tom-select' => [
|
||||
'version' => '2.4.1',
|
||||
],
|
||||
'@orchidjs/sifter' => [
|
||||
'version' => '1.1.0',
|
||||
],
|
||||
'@orchidjs/unicode-variants' => [
|
||||
'version' => '1.1.2',
|
||||
],
|
||||
'chart.js' => [
|
||||
'version' => '3.9.1',
|
||||
],
|
||||
'@symfony/ux-live-component' => [
|
||||
'path' => './vendor/symfony/ux-live-component/assets/dist/live_controller.js',
|
||||
],
|
||||
'alpinejs' => [
|
||||
'version' => '3.14.8',
|
||||
],
|
||||
'@alpinejs/persist' => [
|
||||
'version' => '3.14.8',
|
||||
],
|
||||
'jquery' => [
|
||||
'version' => '3.7.1',
|
||||
],
|
||||
'bs5-utils' => [
|
||||
'version' => '1.0.3',
|
||||
],
|
||||
'brace' => [
|
||||
'version' => '0.11.1',
|
||||
],
|
||||
'brace/mode/html' => [
|
||||
'version' => '0.11.1',
|
||||
],
|
||||
'brace/mode/php' => [
|
||||
'version' => '0.11.1',
|
||||
],
|
||||
'brace/mode/xml' => [
|
||||
'version' => '0.11.1',
|
||||
],
|
||||
'brace/theme/monokai' => [
|
||||
'version' => '0.11.1',
|
||||
],
|
||||
'brace/ext/searchbox' => [
|
||||
'version' => '0.11.1',
|
||||
],
|
||||
'bootstrap' => [
|
||||
'version' => '5.3.3',
|
||||
],
|
||||
'@popperjs/core' => [
|
||||
'version' => '2.11.8',
|
||||
],
|
||||
'bootstrap/dist/css/bootstrap.min.css' => [
|
||||
'version' => '5.3.3',
|
||||
'type' => 'css',
|
||||
],
|
||||
'tom-select/dist/css/tom-select.default.css' => [
|
||||
'version' => '2.4.1',
|
||||
'type' => 'css',
|
||||
],
|
||||
'summernote/dist/summernote-lite.min.css' => [
|
||||
'version' => '0.9.1',
|
||||
'type' => 'css',
|
||||
],
|
||||
'bootstrap-toggle/css/bootstrap-toggle.min.css' => [
|
||||
'version' => '2.2.2',
|
||||
'type' => 'css',
|
||||
],
|
||||
'summernote' => [
|
||||
'version' => '0.9.1',
|
||||
],
|
||||
];
|
||||
23482
src/new/package-lock.json
generated
23482
src/new/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -1,55 +0,0 @@
|
||||
{
|
||||
"devDependencies": {
|
||||
"@babel/preset-react": "^7.24.7",
|
||||
"@hotwired/stimulus": "^3.2.2",
|
||||
"@symfony/stimulus-bridge": "^3.2.2",
|
||||
"@symfony/ux-autocomplete": "file:vendor/symfony/ux-autocomplete/assets",
|
||||
"@symfony/ux-chartjs": "file:vendor/symfony/ux-chartjs/assets",
|
||||
"@symfony/ux-live-component": "file:vendor/symfony/ux-live-component/assets",
|
||||
"@symfony/webpack-encore": "4.2.0",
|
||||
"@tailwindcss/aspect-ratio": "^0.4.2",
|
||||
"@tailwindcss/container-queries": "^0.1.1",
|
||||
"@tailwindcss/forms": "^0.5.9",
|
||||
"@tailwindcss/typography": "^0.5.15",
|
||||
"@types/alpinejs": "^3.13.11",
|
||||
"@types/node": "^18.7.6",
|
||||
"autoprefixer": "^10.4.20",
|
||||
"chart.js": "^3.4.1 || ^4.0",
|
||||
"core-js": "^3.0.0",
|
||||
"postcss": "^8.4.45",
|
||||
"regenerator-runtime": "^0.13.2",
|
||||
"sass": "^1.38.0",
|
||||
"tailwindcss": "^3.4.10",
|
||||
"tom-select": "^2.2.2",
|
||||
"typescript": "^4.7.4",
|
||||
"webpack-notifier": "^1.15.0"
|
||||
},
|
||||
"license": "UNLICENSED",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev-server": "encore dev-server",
|
||||
"dev": "encore dev",
|
||||
"watch": "encore dev --watch",
|
||||
"build": "encore production --progress"
|
||||
},
|
||||
"dependencies": {
|
||||
"@alpinejs/persist": "^3.14.7",
|
||||
"@babel/core": "^7.20.2",
|
||||
"@babel/preset-env": "^7.20.2",
|
||||
"@popperjs/core": "^2.9.3",
|
||||
"alpinejs": "^3.14.7",
|
||||
"bootstrap": "^5.1.0",
|
||||
"bootstrap-toggle": "^2.2.2",
|
||||
"brace": "^0.11.1",
|
||||
"bs5-utils": "^1.0.3",
|
||||
"dropzone": "^5.7.1",
|
||||
"file-loader": "^6.2.0",
|
||||
"jquery": "^3.5.1",
|
||||
"morris.js": "^0.5.0",
|
||||
"multiselect": "^0.9.12",
|
||||
"multiselect-two-sides": "^2.5.7",
|
||||
"postcss-loader": "^7.0.0",
|
||||
"raphael": "^2.3.0",
|
||||
"summernote": "^0.8.20"
|
||||
}
|
||||
}
|
||||
@ -303,18 +303,3 @@
|
||||
{{ summernote_mediabundle_init('default') }}
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
|
||||
<script>
|
||||
$(function() {
|
||||
$('.note-codable').on('blur', function() {
|
||||
var codeviewHtml = $(this).val();
|
||||
var $summernoteTextarea = $(this).closest('.note-editor').siblings('textarea');
|
||||
|
||||
$summernoteTextarea.val(codeviewHtml);
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{% endblock %}
|
||||
@ -321,17 +321,3 @@
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
|
||||
<script>
|
||||
$(function() {
|
||||
$('.note-codable').on('blur', function() {
|
||||
var codeviewHtml = $(this).val();
|
||||
var $summernoteTextarea = $(this).closest('.note-editor').siblings('textarea');
|
||||
|
||||
$summernoteTextarea.val(codeviewHtml);
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{% endblock %}
|
||||
|
||||
@ -549,6 +549,21 @@
|
||||
"symfony/asset": {
|
||||
"version": "v4.4.7"
|
||||
},
|
||||
"symfony/asset-mapper": {
|
||||
"version": "6.4",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "6.4",
|
||||
"ref": "5ad1308aa756d58f999ffbe1540d1189f5d7d14a"
|
||||
},
|
||||
"files": [
|
||||
"assets/app.js",
|
||||
"assets/styles/app.css",
|
||||
"config/packages/asset_mapper.yaml",
|
||||
"importmap.php"
|
||||
]
|
||||
},
|
||||
"symfony/browser-kit": {
|
||||
"version": "v5.1.2"
|
||||
},
|
||||
@ -952,28 +967,15 @@
|
||||
"config/routes/dev/web_profiler.yaml"
|
||||
]
|
||||
},
|
||||
"symfony/webpack-encore-bundle": {
|
||||
"version": "1.6",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "master",
|
||||
"version": "1.6",
|
||||
"ref": "69e1d805ad95964088bd510c05995e87dc391564"
|
||||
},
|
||||
"files": [
|
||||
"assets/css/app.css",
|
||||
"assets/js/app.js",
|
||||
"config/packages/assets.yaml",
|
||||
"config/packages/prod/webpack_encore.yaml",
|
||||
"config/packages/test/webpack_encore.yaml",
|
||||
"config/packages/webpack_encore.yaml",
|
||||
"package.json",
|
||||
"webpack.config.js"
|
||||
]
|
||||
},
|
||||
"symfony/yaml": {
|
||||
"version": "v4.4.7"
|
||||
},
|
||||
"symfonycasts/sass-bundle": {
|
||||
"version": "v0.8.2"
|
||||
},
|
||||
"symfonycasts/tailwind-bundle": {
|
||||
"version": "v0.7.0"
|
||||
},
|
||||
"theofidry/alice-data-fixtures": {
|
||||
"version": "1.6",
|
||||
"recipe": {
|
||||
|
||||
@ -12,8 +12,9 @@
|
||||
<script>
|
||||
var jwt_token = '{{tokenService.generateToken()}}';
|
||||
</script>
|
||||
{% block importmap %}{{ importmap('backend/dashboard') }}{% endblock %}
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('backend/dashboard') }}
|
||||
import $ from 'jquery'
|
||||
{% endblock %}
|
||||
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">
|
||||
<!-- GOOGLE FONT -->
|
||||
@ -85,8 +86,8 @@
|
||||
</div>
|
||||
</div>
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('backend/dashboard') }}
|
||||
{% endblock %}
|
||||
|
||||
{% if instanceService.getInstance().supporttoken %}
|
||||
<script>
|
||||
$.post("{{ instanceService.getInstance().formatedSupportUrl }}/apilogin?shop_uuid={{ instanceService.getShop().uuid|url_encode }}&shop_name={{ instanceService.getShop().title|url_encode }}&user_uuid={{ instanceService.getUser().uuid|url_encode }}&user_name={{ instanceService.getUser().username|url_encode }}&X-AUTH-TOKEN={{ instanceService.getInstance().supporttoken }}&to=bridge", function(msg){
|
||||
|
||||
@ -13,7 +13,6 @@
|
||||
var jwt_token = '{{tokenService.generateToken()}}';
|
||||
</script>
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('backend/dashboard') }}
|
||||
{% endblock %}
|
||||
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">
|
||||
<!-- GOOGLE FONT -->
|
||||
@ -94,10 +93,10 @@
|
||||
</div>
|
||||
</div>
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('backend/dashboard') }}
|
||||
{% endblock %}
|
||||
{% block importmap %}{{ importmap('backend/dashboard') }}{% endblock %}
|
||||
{% block scripts %}
|
||||
{% endblock %}
|
||||
</body>
|
||||
|
||||
</html>
|
||||
</html>
|
||||
|
||||
@ -10,7 +10,6 @@
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('backend/login') }}
|
||||
{% endblock %}
|
||||
|
||||
</head>
|
||||
@ -20,8 +19,8 @@
|
||||
{% endblock %}
|
||||
</div>
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('backend/login') }}
|
||||
{% endblock %}
|
||||
{% block importmap %}{{ importmap('backend/dashboard') }}{% endblock %}
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@ -10,7 +10,6 @@
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('backend/dashboard') }}
|
||||
{% endblock %}
|
||||
|
||||
<!-- GOOGLE FONT -->
|
||||
@ -29,8 +28,8 @@
|
||||
{% endblock %}
|
||||
</div>
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('backend/dashboard') }}
|
||||
{% endblock %}
|
||||
{% block importmap %}{{ importmap('backend/dashboard') }}{% endblock %}
|
||||
</body>
|
||||
|
||||
</html>
|
||||
</html>
|
||||
|
||||
@ -10,7 +10,6 @@
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('backend/dashboard') }}
|
||||
{% endblock %}
|
||||
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">
|
||||
<!-- GOOGLE FONT -->
|
||||
@ -20,8 +19,8 @@
|
||||
{% block body %}
|
||||
{% endblock %}
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('backend/dashboard') }}
|
||||
{% endblock %}
|
||||
{% block importmap %}{{ importmap('backend/dashboard') }}{% endblock %}
|
||||
</body>
|
||||
|
||||
</html>
|
||||
</html>
|
||||
|
||||
@ -13,7 +13,6 @@
|
||||
var jwt_token = '{{tokenService.generateToken()}}';
|
||||
</script>
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('backend/dashboard') }}
|
||||
{% endblock %}
|
||||
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">
|
||||
<!-- GOOGLE FONT -->
|
||||
@ -54,8 +53,8 @@
|
||||
</div>
|
||||
{% endblock %}
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('backend/dashboard') }}
|
||||
{% endblock %}
|
||||
{% block importmap %}{{ importmap('backend/dashboard') }}{% endblock %}
|
||||
</body>
|
||||
|
||||
</html>
|
||||
</html>
|
||||
|
||||
@ -13,7 +13,6 @@
|
||||
var jwt_token = '{{tokenService.generateToken()}}';
|
||||
</script>
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('backend/tailwind') }}
|
||||
{% endblock %}
|
||||
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">
|
||||
<link rel="apple-touch-icon" sizes="57x57" href="/apps/icons/apple-icon-57x57.png"><link rel="apple-touch-icon" sizes="60x60" href="/apps/icons/apple-icon-60x60.png"><link rel="apple-touch-icon" sizes="72x72" href="/apps/icons/apple-icon-72x72.png"><link rel="apple-touch-icon" sizes="76x76" href="/apps/icons/apple-icon-76x76.png"><link rel="apple-touch-icon" sizes="114x114" href="/apps/icons/apple-icon-114x114.png"><link rel="apple-touch-icon" sizes="120x120" href="/apps/icons/apple-icon-120x120.png"><link rel="apple-touch-icon" sizes="144x144" href="/apps/icons/apps/icons/apple-icon-144x144.png"><link rel="apple-touch-icon" sizes="152x152" href="/apps/icons/apple-icon-152x152.png"><link rel="apple-touch-icon" sizes="180x180" href="/apps/icons/apple-icon-180x180.png"><link rel="icon" type="image/png" sizes="192x192" href="/apps/icons/android-icon-192x192.png"><link rel="icon" type="image/png" sizes="32x32" href="/apps/icons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="96x96" href="/apps/icons/favicon-96x96.png"><link rel="icon" type="image/png" sizes="16x16" href="/apps/icons/favicon-16x16.png"><link rel="manifest" href="/apps/icons/manifest.json"><meta name="msapplication-TileColor" content="#ffffff"><meta name="msapplication-TileImage" content="/apps/icons/ms-icon-144x144.png"><meta name="theme-color" content="#ffffff">
|
||||
@ -32,7 +31,7 @@
|
||||
</svg>
|
||||
</button>
|
||||
<div class="flex w-full relative justify-center">
|
||||
<img src="{{ asset('build/images/logo.png') }}" class="fill-current w-48" alt="PrintshopCreator Logo">
|
||||
<img src="{{ asset('images/logo.png') }}" class="fill-current w-48" alt="PrintshopCreator Logo">
|
||||
</div>
|
||||
</div>
|
||||
<button x-data type="button" class="shrink-0 flex items-center justify-center w-10 h-10 text-psc-500 rounded-full outline-none hover:bg-psc-500/5 focus:bg-primary-500/10" :aria-label="$store.sideBar.isOpen ? 'Collapse sidebar' : 'Expand sidebar'" @click="$store.sideBar.isOpen ? $store.sideBar.close() : $store.sideBar.open()" x-show="(! $store.sideBar.isOpen) && true" x-transition:enter="lg:transition delay-100" x-transition:enter-start="opacity-0" x-transition:enter-end="opacity-100" aria-label="Expand sidebar">
|
||||
@ -137,8 +136,8 @@
|
||||
</div>
|
||||
</div>
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('backend/tailwind') }}
|
||||
{% endblock %}
|
||||
{% block importmap %}{{ importmap('backend/tailwind') }}{% endblock %}
|
||||
{% if instanceService.getInstance().supporttoken %}
|
||||
<script>
|
||||
$.post("{{ instanceService.getInstance().formatedSupportUrl }}/apilogin?shop_uuid={{ instanceService.getShop().uuid|url_encode }}&shop_name={{ instanceService.getShop().title|url_encode }}&user_uuid={{ instanceService.getUser().uuid|url_encode }}&user_name={{ instanceService.getUser().username|url_encode }}&X-AUTH-TOKEN={{ instanceService.getInstance().supporttoken }}&to=bridge", function(msg){
|
||||
|
||||
@ -8,5 +8,6 @@
|
||||
<body>
|
||||
{% block body %}{% endblock %}
|
||||
{% block javascripts %}{% endblock %}
|
||||
{% block importmap %}{{ importmap('app') }}{% endblock %}
|
||||
</body>
|
||||
</html>
|
||||
|
||||
3
src/new/var/tailwind/app.built.css
Normal file
3
src/new/var/tailwind/app.built.css
Normal file
@ -0,0 +1,3 @@
|
||||
body {
|
||||
background-color: skyblue;
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
BIN
src/new/var/tailwind/v3.3.0/tailwindcss-linux-x64
Normal file
BIN
src/new/var/tailwind/v3.3.0/tailwindcss-linux-x64
Normal file
Binary file not shown.
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,34 +0,0 @@
|
||||
"use strict";
|
||||
(self["webpackChunk"] = self["webpackChunk"] || []).push([["backend/login"],{
|
||||
|
||||
/***/ "./assets/backend/login/login.ts":
|
||||
/*!***************************************!*\
|
||||
!*** ./assets/backend/login/login.ts ***!
|
||||
\***************************************/
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony import */ var _css_login_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./css/login.css */ "./assets/backend/login/css/login.css");
|
||||
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ "./assets/backend/login/css/login.css":
|
||||
/*!********************************************!*\
|
||||
!*** ./assets/backend/login/css/login.css ***!
|
||||
\********************************************/
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
// extracted by mini-css-extract-plugin
|
||||
|
||||
|
||||
/***/ })
|
||||
|
||||
},
|
||||
/******/ __webpack_require__ => { // webpackRuntimeModules
|
||||
/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
/******/ var __webpack_exports__ = (__webpack_exec__("./assets/backend/login/login.ts"));
|
||||
/******/ }
|
||||
]);
|
||||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZC9sb2dpbi5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDQUEiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvYmFja2VuZC9sb2dpbi9sb2dpbi50cyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYmFja2VuZC9sb2dpbi9jc3MvbG9naW4uY3NzPzdhMmMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwiLi9jc3MvbG9naW4uY3NzXCI7XG4iLCIvLyBleHRyYWN0ZWQgYnkgbWluaS1jc3MtZXh0cmFjdC1wbHVnaW5cbmV4cG9ydCB7fTsiXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=
|
||||
@ -1,66 +0,0 @@
|
||||
"use strict";
|
||||
(self["webpackChunk"] = self["webpackChunk"] || []).push([["backend/tailwind"],{
|
||||
|
||||
/***/ "./assets/tailwind/backend.ts":
|
||||
/*!************************************!*\
|
||||
!*** ./assets/tailwind/backend.ts ***!
|
||||
\************************************/
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony import */ var _css_backend_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./css/backend.css */ "./assets/tailwind/css/backend.css");
|
||||
/* harmony import */ var alpinejs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! alpinejs */ "./node_modules/alpinejs/dist/module.esm.js");
|
||||
/* harmony import */ var _alpinejs_persist__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @alpinejs/persist */ "./node_modules/@alpinejs/persist/dist/module.esm.js");
|
||||
/* harmony import */ var _symfony_stimulus_bridge__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @symfony/stimulus-bridge */ "./node_modules/@symfony/stimulus-bridge/dist/index.js");
|
||||
|
||||
|
||||
|
||||
__webpack_require__.g.$ = __webpack_require__.g.jQuery = window.jQuery = __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");
|
||||
|
||||
var app = (0,_symfony_stimulus_bridge__WEBPACK_IMPORTED_MODULE_3__.startStimulusApp)();
|
||||
alpinejs__WEBPACK_IMPORTED_MODULE_1__["default"].plugin(_alpinejs_persist__WEBPACK_IMPORTED_MODULE_2__["default"]);
|
||||
alpinejs__WEBPACK_IMPORTED_MODULE_1__["default"].store('theme', {
|
||||
theme: alpinejs__WEBPACK_IMPORTED_MODULE_1__["default"].$persist("light").as('theme'),
|
||||
light: function light() {
|
||||
this.theme = "light";
|
||||
},
|
||||
dark: function dark() {
|
||||
this.theme = "dark";
|
||||
}
|
||||
});
|
||||
alpinejs__WEBPACK_IMPORTED_MODULE_1__["default"].store('sideBar', {
|
||||
isOpen: alpinejs__WEBPACK_IMPORTED_MODULE_1__["default"].$persist(true).as('sidebar_on'),
|
||||
toggle: function toggle() {
|
||||
this.isOpen = !this.isOpen;
|
||||
},
|
||||
close: function close() {
|
||||
this.isOpen = false;
|
||||
},
|
||||
open: function open() {
|
||||
this.isOpen = true;
|
||||
}
|
||||
});
|
||||
alpinejs__WEBPACK_IMPORTED_MODULE_1__["default"].start();
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ "./assets/tailwind/css/backend.css":
|
||||
/*!*****************************************!*\
|
||||
!*** ./assets/tailwind/css/backend.css ***!
|
||||
\*****************************************/
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
// extracted by mini-css-extract-plugin
|
||||
|
||||
|
||||
/***/ })
|
||||
|
||||
},
|
||||
/******/ __webpack_require__ => { // webpackRuntimeModules
|
||||
/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
/******/ __webpack_require__.O(0, ["vendors-node_modules_symfony_stimulus-bridge_dist_index_js-node_modules_core-js_modules_es_ar-a8da79","vendors-node_modules_alpinejs_persist_dist_module_esm_js-node_modules_alpinejs_dist_module_esm_js","node_modules_symfony_stimulus-bridge_dist_webpack_loader_js_assets_controllers_json"], () => (__webpack_exec__("./assets/tailwind/backend.ts")));
|
||||
/******/ var __webpack_exports__ = __webpack_require__.O();
|
||||
/******/ }
|
||||
]);
|
||||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZC90YWlsd2luZC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUEyQjtBQUNHO0FBQ1U7QUFDeENFLHFCQUFNLENBQUNDLENBQUMsR0FBR0QscUJBQU0sQ0FBQ0UsTUFBTSxHQUFHQyxNQUFNLENBQUNELE1BQU0sR0FBR0UsbUJBQU8sQ0FBQyxvREFBUSxDQUFDO0FBQ0E7QUFDNUQsSUFBSUUsR0FBRyxHQUFHRCwwRUFBZ0IsQ0FBQyxDQUFDO0FBQzVCUCx1REFBYSxDQUFDQyx5REFBTyxDQUFDO0FBQ3RCRCxzREFBWSxDQUFDLE9BQU8sRUFBRTtFQUNsQlcsS0FBSyxFQUFFWCx5REFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDYSxFQUFFLENBQUMsT0FBTyxDQUFDO0VBQzNDQyxLQUFLLEVBQUUsU0FBQUEsTUFBQSxFQUFZO0lBQ2YsSUFBSSxDQUFDSCxLQUFLLEdBQUcsT0FBTztFQUN4QixDQUFDO0VBQ0RJLElBQUksRUFBRSxTQUFBQSxLQUFBLEVBQVk7SUFDZCxJQUFJLENBQUNKLEtBQUssR0FBRyxNQUFNO0VBQ3ZCO0FBQ0osQ0FBQyxDQUFDO0FBQ0ZYLHNEQUFZLENBQUMsU0FBUyxFQUFFO0VBQ3BCZ0IsTUFBTSxFQUFFaEIseURBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQ2EsRUFBRSxDQUFDLFlBQVksQ0FBQztFQUM5Q0ksTUFBTSxFQUFFLFNBQUFBLE9BQUEsRUFBWTtJQUNoQixJQUFJLENBQUNELE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQ0EsTUFBTTtFQUM5QixDQUFDO0VBQ0RFLEtBQUssRUFBRSxTQUFBQSxNQUFBLEVBQVk7SUFDZixJQUFJLENBQUNGLE1BQU0sR0FBRyxLQUFLO0VBQ3ZCLENBQUM7RUFDREcsSUFBSSxFQUFFLFNBQUFBLEtBQUEsRUFBWTtJQUNkLElBQUksQ0FBQ0gsTUFBTSxHQUFHLElBQUk7RUFDdEI7QUFDSixDQUFDLENBQUM7QUFDRmhCLHNEQUFZLENBQUMsQ0FBQzs7Ozs7Ozs7Ozs7QUM1QmQiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvdGFpbHdpbmQvYmFja2VuZC50cyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdGFpbHdpbmQvY3NzL2JhY2tlbmQuY3NzPzRkNjUiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwiLi9jc3MvYmFja2VuZC5jc3NcIjtcbmltcG9ydCBBbHBpbmUgZnJvbSAnYWxwaW5lanMnO1xuaW1wb3J0IHBlcnNpc3QgZnJvbSAnQGFscGluZWpzL3BlcnNpc3QnO1xuZ2xvYmFsLiQgPSBnbG9iYWwualF1ZXJ5ID0gd2luZG93LmpRdWVyeSA9IHJlcXVpcmUoJ2pxdWVyeScpO1xuaW1wb3J0IHsgc3RhcnRTdGltdWx1c0FwcCB9IGZyb20gJ0BzeW1mb255L3N0aW11bHVzLWJyaWRnZSc7XG52YXIgYXBwID0gc3RhcnRTdGltdWx1c0FwcCgpO1xuQWxwaW5lLnBsdWdpbihwZXJzaXN0KTtcbkFscGluZS5zdG9yZSgndGhlbWUnLCB7XG4gICAgdGhlbWU6IEFscGluZS4kcGVyc2lzdChcImxpZ2h0XCIpLmFzKCd0aGVtZScpLFxuICAgIGxpZ2h0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHRoaXMudGhlbWUgPSBcImxpZ2h0XCI7XG4gICAgfSxcbiAgICBkYXJrOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHRoaXMudGhlbWUgPSBcImRhcmtcIjtcbiAgICB9XG59KTtcbkFscGluZS5zdG9yZSgnc2lkZUJhcicsIHtcbiAgICBpc09wZW46IEFscGluZS4kcGVyc2lzdCh0cnVlKS5hcygnc2lkZWJhcl9vbicpLFxuICAgIHRvZ2dsZTogZnVuY3Rpb24gKCkge1xuICAgICAgICB0aGlzLmlzT3BlbiA9ICF0aGlzLmlzT3BlbjtcbiAgICB9LFxuICAgIGNsb3NlOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XG4gICAgfSxcbiAgICBvcGVuOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcbiAgICB9XG59KTtcbkFscGluZS5zdGFydCgpO1xuIiwiLy8gZXh0cmFjdGVkIGJ5IG1pbmktY3NzLWV4dHJhY3QtcGx1Z2luXG5leHBvcnQge307Il0sIm5hbWVzIjpbIkFscGluZSIsInBlcnNpc3QiLCJnbG9iYWwiLCIkIiwialF1ZXJ5Iiwid2luZG93IiwicmVxdWlyZSIsInN0YXJ0U3RpbXVsdXNBcHAiLCJhcHAiLCJwbHVnaW4iLCJzdG9yZSIsInRoZW1lIiwiJHBlcnNpc3QiLCJhcyIsImxpZ2h0IiwiZGFyayIsImlzT3BlbiIsInRvZ2dsZSIsImNsb3NlIiwib3BlbiIsInN0YXJ0Il0sInNvdXJjZVJvb3QiOiIifQ==
|
||||
@ -1,40 +0,0 @@
|
||||
{
|
||||
"entrypoints": {
|
||||
"backend/login": {
|
||||
"js": [
|
||||
"/apps/build/runtime.js",
|
||||
"/apps/build/backend/login.js"
|
||||
],
|
||||
"css": [
|
||||
"/apps/build/backend/login.css"
|
||||
]
|
||||
},
|
||||
"backend/dashboard": {
|
||||
"js": [
|
||||
"/apps/build/runtime.js",
|
||||
"/apps/build/vendors-node_modules_symfony_stimulus-bridge_dist_index_js-node_modules_core-js_modules_es_ar-a8da79.js",
|
||||
"/apps/build/vendors-node_modules_popperjs_core_dist_cjs_popper_js-node_modules_bootstrap-toggle_js_bootst-2e5edb.js",
|
||||
"/apps/build/node_modules_symfony_stimulus-bridge_dist_webpack_loader_js_assets_controllers_json.js",
|
||||
"/apps/build/backend/dashboard.js"
|
||||
],
|
||||
"css": [
|
||||
"/apps/build/vendors-node_modules_symfony_stimulus-bridge_dist_index_js-node_modules_core-js_modules_es_ar-a8da79.css",
|
||||
"/apps/build/vendors-node_modules_popperjs_core_dist_cjs_popper_js-node_modules_bootstrap-toggle_js_bootst-2e5edb.css",
|
||||
"/apps/build/backend/dashboard.css"
|
||||
]
|
||||
},
|
||||
"backend/tailwind": {
|
||||
"js": [
|
||||
"/apps/build/runtime.js",
|
||||
"/apps/build/vendors-node_modules_symfony_stimulus-bridge_dist_index_js-node_modules_core-js_modules_es_ar-a8da79.js",
|
||||
"/apps/build/vendors-node_modules_alpinejs_persist_dist_module_esm_js-node_modules_alpinejs_dist_module_esm_js.js",
|
||||
"/apps/build/node_modules_symfony_stimulus-bridge_dist_webpack_loader_js_assets_controllers_json.js",
|
||||
"/apps/build/backend/tailwind.js"
|
||||
],
|
||||
"css": [
|
||||
"/apps/build/vendors-node_modules_symfony_stimulus-bridge_dist_index_js-node_modules_core-js_modules_es_ar-a8da79.css",
|
||||
"/apps/build/backend/tailwind.css"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 6.1 KiB |
@ -1,3 +0,0 @@
|
||||
[ZoneTransfer]
|
||||
ZoneId=3
|
||||
HostUrl=https://gitlab.com/
|
||||
@ -1,20 +0,0 @@
|
||||
{
|
||||
"build/backend/login.css": "/apps/build/backend/login.195471a4.css",
|
||||
"build/backend/login.js": "/apps/build/backend/login.ab0272c2.js",
|
||||
"build/backend/dashboard.css": "/apps/build/backend/dashboard.f30e17f9.css",
|
||||
"build/backend/dashboard.js": "/apps/build/backend/dashboard.564e38a5.js",
|
||||
"build/backend/tailwind.css": "/apps/build/backend/tailwind.33beacce.css",
|
||||
"build/backend/tailwind.js": "/apps/build/backend/tailwind.d1378a3a.js",
|
||||
"build/runtime.js": "/apps/build/runtime.44b7f9b9.js",
|
||||
"build/185.99565361.js": "/apps/build/185.99565361.js",
|
||||
"build/857.e053f864.css": "/apps/build/857.e053f864.css",
|
||||
"build/857.5473cee9.js": "/apps/build/857.5473cee9.js",
|
||||
"build/280.f481306d.js": "/apps/build/280.f481306d.js",
|
||||
"build/933.ca932d10.js": "/apps/build/933.ca932d10.js",
|
||||
"build/fonts/summernote.eot": "/apps/build/fonts/summernote.7a3f9776.eot",
|
||||
"build/fonts/summernote.ttf": "/apps/build/fonts/summernote.eb23b6b7.ttf",
|
||||
"build/fonts/summernote.woff": "/apps/build/fonts/summernote.f2bec4f2.woff",
|
||||
"build/fonts/summernote.woff2": "/apps/build/fonts/summernote.f19578ae.woff2",
|
||||
"build/images/logo.png": "/apps/build/images/logo.png",
|
||||
"build/images/logo.png:Zone.Identifier": "/apps/build/images/logo.png:Zone.Identifier"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,49 +0,0 @@
|
||||
var Encore = require('@symfony/webpack-encore');
|
||||
// Manually configure the runtime environment if not already configured yet by the "encore" command.
|
||||
// It's useful when you use tools that rely on webpack.config.js file.
|
||||
if (!Encore.isRuntimeEnvironmentConfigured()) {
|
||||
Encore.configureRuntimeEnvironment(process.env.NODE_ENV || 'dev');
|
||||
}
|
||||
|
||||
Encore
|
||||
.setOutputPath('web/build/');
|
||||
if (process.env.NODE_ENV == 'test') {
|
||||
Encore.setPublicPath('/build')
|
||||
}else{
|
||||
Encore.setPublicPath('/apps/build')
|
||||
}
|
||||
|
||||
Encore.setManifestKeyPrefix('build')
|
||||
|
||||
.addEntry('backend/login', './assets/backend/login/login.ts')
|
||||
.addEntry('backend/dashboard', './assets/backend/dashboard/dashboard.js')
|
||||
.addEntry('backend/tailwind', './assets/tailwind/backend.ts')
|
||||
.copyFiles({
|
||||
from: './assets/images',
|
||||
to: 'images/[path][name].[ext]',
|
||||
})
|
||||
.splitEntryChunks()
|
||||
|
||||
.enableSingleRuntimeChunk()
|
||||
|
||||
.cleanupOutputBeforeBuild()
|
||||
.enableBuildNotifications()
|
||||
.enableSourceMaps(!Encore.isProduction())
|
||||
.enableVersioning(Encore.isProduction())
|
||||
|
||||
.configureBabelPresetEnv((config) => {
|
||||
config.useBuiltIns = 'usage';
|
||||
config.corejs = 3;
|
||||
})
|
||||
.enableSassLoader()
|
||||
.enableStimulusBridge('./assets/controllers.json')
|
||||
.enableLessLoader()
|
||||
.enableTypeScriptLoader()
|
||||
.enablePostCssLoader()
|
||||
.addAliases({
|
||||
jQuery: 'jquery'
|
||||
})
|
||||
;
|
||||
let config = Encore.getWebpackConfig();
|
||||
module.exports = config;
|
||||
|
||||
6023
src/new/yarn.lock
6023
src/new/yarn.lock
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user