Subida del módulo y tema de PrestaShop

This commit is contained in:
Kaloyan
2026-04-09 18:31:51 +02:00
parent 12c253296f
commit 16b3ff9424
39262 changed files with 7418797 additions and 0 deletions

View File

@@ -0,0 +1 @@
v20.19.4

View File

@@ -0,0 +1,15 @@
module.exports = {
overrides: [
{
files: "*.scss",
options: {
printWidth: 100,
tabWidth: 2,
useTabs: false,
singleQuote: false,
bracketSpacing: true,
parser: "scss",
},
},
],
};

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -0,0 +1,73 @@
const path = require('path');
module.exports = {
stories: [
'../stories/**/*.mdx',
'../stories/**/*.stories.@(js|jsx|ts|tsx)'
],
addons: [
'@storybook/addon-links',
'@storybook/addon-essentials',
'@storybook/addon-a11y',
'@storybook/addon-webpack5-compiler-swc'
],
framework: {
name: '@storybook/html-webpack5',
options: {}
},
webpackFinal: (config) => {
// Add support for HTML
config.module.rules = config.module.rules.map((rule) => {
if (rule.test && rule.test.toString().includes('\\.html$')) {
return {
...rule,
use: {
loader: 'html-loader',
}
};
}
return rule;
});
// Add support for SCSS
config.module.rules.push({
test: /\.scss$/,
use: [
'style-loader',
'css-loader',
{
loader: 'sass-loader',
options: {
sassOptions: {
// Removes deprecation warnings from Bootstrap
quietDeps: true,
}
}
}
],
include: path.resolve(__dirname, '../'),
});
// Add path aliases
config.resolve.alias = {
...config.resolve.alias,
'@js': path.resolve(__dirname, '../src/js'),
'@services': path.resolve(__dirname, '../src/js/services'),
'@constants': path.resolve(__dirname, '../src/js/constants'),
'@helpers': path.resolve(__dirname, '../src/js/helpers'),
};
// Define external libraries
config.externals = {
...config.externals,
prestashop: 'prestashop',
};
return config;
},
docs: {}
};

View File

@@ -0,0 +1,5 @@
<style>
#panel-tab-content {
color: #272a2d;
}
</style>

View File

@@ -0,0 +1,6 @@
import { addons } from '@storybook/preview-api';
import psTheme from './ps-theme';
addons.setConfig({
theme: psTheme,
});

View File

@@ -0,0 +1,29 @@
import '../src/scss/theme.scss';
import 'bootstrap';
import useToast from '../src/js/components/useToast';
import useAlert from '../src/js/components/useAlert';
import useProgressRing from '../src/js/components/useProgressRing';
import selectors from '../src/js/constants/selectors-map';
window.Theme = {
components: {
useToast,
useAlert,
useProgressRing
}
}
window.prestashop = {
themeSelectors: {
...selectors
}
}
const preview = {
parameters: {
// Add parameters here
},
tags: ['autodocs']
};
export default preview;

View File

@@ -0,0 +1,33 @@
import {create} from '@storybook/theming';
import logoUrl from './logo-prestashop.svg';
export default create({
base: 'dark',
brandTitle: 'PrestaShop',
brandUrl: 'https://www.prestashop-project.org/',
brandImage: logoUrl,
colorPrimary: '#6c868e',
colorSecondary: '#25b9d7',
// UI
appBg: '#363a41',
appContentBg: 'white',
appBorderRadius: 4,
barTextColor: 'white',
barSelectedColor: '#25b9d7',
barBg: '#272a2d',
// Typography
fontBase: '"Open Sans", sans-serif',
fontCode: 'monospace',
// Text colors
textColor: 'white',
textInverseColor: 'rgba(255,255,255,0.9)',
// Form
inputTextColor: 'black',
inputBorderRadius: 4,
});

View File

@@ -0,0 +1,11 @@
.sbdocs-preview > div:last-of-type code {
color: white;
}
body {
background-color: transparent;
}
.os-host {
color: red;
}

View File

View File

@@ -0,0 +1,24 @@
{
"extends": [
"stylelint-config-prestashop"
],
"customSyntax": "postcss-scss",
"rules": {
"declaration-colon-newline-after": null,
"function-disallowed-list": null,
"property-disallowed-list": null,
"selector-class-pattern": null,
"selector-id-pattern": null,
"selector-max-class": null,
"selector-max-combinators": null,
"selector-max-compound-selectors": null,
"selector-max-id": null,
"selector-max-type": null,
"selector-no-qualifying-type": null,
"value-list-comma-newline-after": null,
"value-list-comma-space-after": null,
"scss/dollar-variable-default": null,
"scss/operator-no-newline-after": null,
"scss/percent-placeholder-pattern": null
}
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
body{background-color:#f3f3f3;color:#333;display:grid;font-family:sans-serif;font-size:1rem;font-weight:400;grid-template-columns:minmax(0,1fr);line-height:1.4;margin:0;min-height:100dvh;padding:0;place-content:center;width:100%}body *{box-sizing:border-box}.layout-error{background-color:#fff;border:1px solid #ddd;border-radius:.5rem;box-shadow:0 .5rem 1rem rgba(0,0,0,.1);margin:1rem auto;max-width:calc(100% - 2rem);padding:2rem;text-align:center;width:34rem}.layout-error h1,.layout-error h2,.layout-error h3,.layout-error h4,.layout-error h5,.layout-error h6{font-weight:600;margin-block-end:1rem;margin-block-start:0}.layout-error p{margin-block-end:1rem;margin-block-start:0}.error__logo{height:auto;margin-block-end:2rem;max-height:12rem;max-width:100%;width:auto}.error__title{font-size:1.5rem;font-weight:600}.error__content,.error__title{margin-block-end:1.5rem}.error__content>p:last-child,.error__text,.error__text>p:last-child{margin-block-end:0}

View File

@@ -0,0 +1 @@
body{background-color:#f3f3f3;color:#333;display:grid;font-family:sans-serif;font-size:1rem;font-weight:400;grid-template-columns:minmax(0,1fr);line-height:1.4;margin:0;min-height:100dvh;padding:0;place-content:center;width:100%}body *{box-sizing:border-box}.layout-error{background-color:#fff;border:1px solid #ddd;border-radius:.5rem;box-shadow:0 .5rem 1rem rgba(0,0,0,.1);margin:1rem auto;max-width:calc(100% - 2rem);padding:2rem;text-align:center;width:34rem}.layout-error h1,.layout-error h2,.layout-error h3,.layout-error h4,.layout-error h5,.layout-error h6{font-weight:600;margin-block-end:1rem;margin-block-start:0}.layout-error p{margin-block-end:1rem;margin-block-start:0}.error__logo{height:auto;margin-block-end:2rem;max-height:12rem;max-width:100%;width:auto}.error__title{font-size:1.5rem;font-weight:600}.error__content,.error__title{margin-block-end:1.5rem}.error__content>p:last-child,.error__text,.error__text>p:last-child{margin-block-end:0}

View File

@@ -0,0 +1 @@
@font-face{font-display:swap;font-family:Vazirmatn;font-style:normal;font-weight:400;src:url(../fonts/Vazirmatn-Regular-58c84f666915410c0ba8.woff2) format("woff2")}@font-face{font-display:swap;font-family:Vazirmatn;font-style:normal;font-weight:700;src:url(../fonts/Vazirmatn-Bold-0d6a47ce8c185a9436b2.woff2) format("woff2")}body.lang-ar,body.lang-fa{font-family:Vazirmatn,sans-serif}.carousel-control-next-icon,.carousel-control-prev-icon,.material-icons.rtl-flip{transform:scaleX(-1)}.dropdown-menu-start{--bs-position:end}#search_widget .search{transform:translateX(-1rem)}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 865 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 813 B

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,6 @@
<link
rel="preload"
href="../fonts/MaterialIcons-Regular-2d8017489da689caedc1.woff2"
as="font"
crossorigin
>

View File

@@ -0,0 +1,6 @@
module.exports = {
presets: [
['@babel/preset-env', { targets: { node: 'current' } }],
'@babel/preset-typescript',
],
};

View File

@@ -0,0 +1,10 @@
# Apache 2.2
<IfModule !mod_authz_core.c>
Order deny,allow
Deny from all
</IfModule>
# Apache 2.4
<IfModule mod_authz_core.c>
Require all denied
</IfModule>

View File

@@ -0,0 +1,233 @@
name: hummingbird
display_name: Hummingbird
version: 2.0.0
author:
name: "PrestaShop Team and Contributors"
email: "pub@prestashop.com"
url: "https://www.prestashop-project.org/"
meta:
compatibility:
from: 9.1.0
to: ~9.1.0
framework: bootstrap-v5.3.3
available_layouts:
layout-full-width:
name: Full Width
description: No side columns, ideal for distraction-free pages such as product pages.
layout-both-columns:
name: Three Columns
description: One large central column and 2 side columns.
layout-left-column:
name: Two Columns, small left column
description: Two columns with a small left column
layout-right-column:
name: Two Columns, small right column
description: Two columns with a small right column
global_settings:
configuration:
PS_IMAGE_QUALITY: png
HOME_FEATURED_NBR: 4
NEW_PRODUCTS_NBR: 4
BLOCKSPECIALS_SPECIALS_NBR: 4
PS_BLOCK_BESTSELLERS_TO_DISPLAY: 4
PRODUCTS_VIEWED_NBR: 4
CATEGORYPRODUCTS_DISPLAY_PRODUCTS: 4
PSR_ICON_COLOR: "#0b69f6"
PSR_TEXT_COLOR: "#212529"
modules:
to_disable:
- blockwishlist
- ps_brandlist
- ps_supplierlist
hooks:
modules_to_unhook:
displayFooter:
- ps_socialfollow
displaySearch:
- ps_searchbar
modules_to_hook:
displayAfterBodyOpeningTag:
- blockreassurance
# Keep existing hooks and append them after
- ~
displayNav1:
- ps_contactinfo
# Keep existing hooks and append them after
- ~
displayNav2:
- ps_languageselector
- ps_currencyselector
- ps_customersignin
- ps_shoppingcart
# Keep existing hooks and append them after
- ~
displayNavFullWidth:
- blockreassurance
# Keep existing hooks and append them after
- ~
displayTop:
- ps_mainmenu
- ps_searchbar
# Keep existing hooks and append them after
- ~
displayHome:
- ps_imageslider
- ps_customtext
- ps_featuredproducts
- ps_banner
- ps_newproducts
- ps_bestsellers
# Keep existing hooks and append them after
- ~
displayFooterBefore:
- ps_socialfollow
- ps_emailsubscription
- blockreassurance
# Keep existing hooks and append them after
- ~
displayFooter:
- ps_linklist
- ps_customeraccountlinks
- ps_contactinfo
# Keep existing hooks and append them after
- ~
displayFooterAfter:
- blockreassurance
# Keep existing hooks and append them after
- ~
displayLeftColumn:
- ps_categorytree
- ps_facetedsearch
# Keep existing hooks and append them after
- ~
displayContactLeftColumn:
- ps_contactinfo
# Keep existing hooks and append them after
- ~
displayContactRightColumn:
- ps_contactinfo
# Keep existing hooks and append them after
- ~
displayContactContent:
- contactform
# Keep existing hooks and append them after
- ~
displayProductAdditionalInfo:
- ps_sharebuttons
- productcomments
- ps_emailalerts
- ps_viewedproduct
# Keep existing hooks and append them after
- ~
displayProductListReviews:
- productcomments
# Keep existing hooks and append them after
- ~
displayFooterProduct:
- productcomments
- ps_categoryproducts
- ps_viewedproduct
# Keep existing hooks and append them after
- ~
displayCrossSellingShoppingCart:
- ps_featuredproducts
# Keep existing hooks and append them after
- ~
displayOrderConfirmation2:
- ps_featuredproducts
# Keep existing hooks and append them after
- ~
displayReassurance:
- blockreassurance
# Keep existing hooks and append them after
- ~
displayCustomerAccount:
- ps_emailalerts
- psgdpr
# Keep existing hooks and append them after
- ~
displayGDPRConsent:
- psgdpr
# Keep existing hooks and append them after
- ~
image_types:
cart_default:
width: 125
height: 125
scope: [products]
small_default:
width: 98
height: 98
scope: [products, categories, manufacturers, suppliers]
medium_default:
width: 452
height: 452
scope: [products, manufacturers, suppliers]
large_default:
width: 800
height: 800
scope: [products, manufacturers, suppliers]
home_default:
width: 250
height: 250
scope: [products]
category_default:
width: 180
height: 180
scope: [categories]
stores_default:
width: 287
height: 160
scope: [stores]
default_xs:
width: 160
height: 160
scope: [products, manufacturers, suppliers, categories]
default_sm:
width: 216
height: 216
scope: [categories, products]
default_md:
width: 261
height: 261
scope: [manufacturers, suppliers, products, categories]
default_lg:
width: 336
height: 336
scope: [categories, products]
default_xl:
width: 400
height: 400
scope: [products]
product_main:
width: 720
height: 720
scope: [products]
category_cover:
width: 1000
height: 200
scope: [categories]
product_main_2x:
width: 1440
height: 1440
scope: [products]
category_cover_2x:
width: 2000
height: 400
scope: [categories]
theme_settings:
rtl_generation: false
default_layout: layout-full-width
layouts:
category: layout-left-column
best-sales: layout-left-column
new-products: layout-left-column
prices-drop: layout-left-column
contact: layout-left-column
manufacturer: layout-left-column
supplier: layout-left-column

Binary file not shown.

After

Width:  |  Height:  |  Size: 536 KiB

Some files were not shown because too many files have changed in this diff Show More