mirror of
https://bitbucket.org/bellord13/kit.git
synced 2026-11-13 19:06:11 +03:00
fix
This commit is contained in:
@@ -126,11 +126,16 @@ PluginManager.ready(deps, callback)
|
|||||||
| z-index | plugin | selector |
|
| z-index | plugin | selector |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
| 100 | flex-kit | .flex-card:hover .flex-card__content |
|
| 100 | flex-kit | .flex-card:hover .flex-card__content |
|
||||||
|
| 1000 | bs | dropdown |
|
||||||
|
| 1020 | bs | sticky |
|
||||||
|
| 1030 | bs | fixed |
|
||||||
|
| 1040 | bs | modal-backdrop |
|
||||||
|
| 1050 | bs | offcanvas |
|
||||||
|
| 1060 | bs | modal |
|
||||||
|
| 1070 | bs | popover |
|
||||||
|
| 1080 | bs | tooltip |
|
||||||
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
MIT
|
|
||||||
|
|
||||||
|
|
||||||
[//]: # (These are reference links used in the body of this note and get stripped out when the markdown processor does its job. There is no need to format nicely because it shouldn't be seen. Thanks SO - http://stackoverflow.com/questions/4823468/store-comments-in-markdown-syntax)
|
[//]: # (These are reference links used in the body of this note and get stripped out when the markdown processor does its job. There is no need to format nicely because it shouldn't be seen. Thanks SO - http://stackoverflow.com/questions/4823468/store-comments-in-markdown-syntax)
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
kit.PluginManager.register('bsCore', function(module, exports, require, global){
|
kit.PluginManager.register('bsCore', function(module, exports, require, global){
|
||||||
|
|
||||||
/**
|
/** @class kitBsCore */
|
||||||
* @class kit.bsCore
|
|
||||||
*/
|
|
||||||
var bsCore = {};
|
var bsCore = {};
|
||||||
var dom = {};
|
var dom = {};
|
||||||
var util = {};
|
var util = {};
|
||||||
|
|||||||
+10
-1
@@ -1,7 +1,16 @@
|
|||||||
|
/**
|
||||||
|
* @var kit
|
||||||
|
* @type {kitCore}
|
||||||
|
*/
|
||||||
window.kit = window.kit || {};
|
window.kit = window.kit || {};
|
||||||
|
/**
|
||||||
|
* @var kit.config
|
||||||
|
* @type {kitConfig}
|
||||||
|
*/
|
||||||
kit.config = kit.config || {};
|
kit.config = kit.config || {};
|
||||||
|
|
||||||
kit.config.assetsPath = '/local/templater.dev/kit/assets';
|
kit.config.assetsPath = '/local/templater.dev/kit/assets';
|
||||||
kit.config.requiredDependencies = ['bsCore', 'toolkit'];
|
kit.config.requiredDependencies = ['bsCore', 'toolkit'];
|
||||||
kit.config.autoloadPluginList = ['tooltip'];
|
kit.config.autoloadPluginList = ['tooltip'];
|
||||||
kit.config.debug = true;
|
kit.config.debug = true;
|
||||||
|
kit.config.defaultPhoneMask = '+7 (999) 999-99-99';
|
||||||
@@ -63,13 +63,13 @@
|
|||||||
--kit-color: #1a1a1a;
|
--kit-color: #1a1a1a;
|
||||||
--kit-color-text-hover: var(--kit-color-primary);
|
--kit-color-text-hover: var(--kit-color-primary);
|
||||||
|
|
||||||
--kit-color-primary-w3: hsl(22, 100%, 70%);
|
--kit-color-primary-w3: hsl(210, 100%, 70%);
|
||||||
--kit-color-primary-w2: hsl(22, 100%, 65%);
|
--kit-color-primary-w2: hsl(210, 100%, 65%);
|
||||||
--kit-color-primary-w1: hsl(22, 100%, 60%);
|
--kit-color-primary-w1: hsl(210, 100%, 60%);
|
||||||
--kit-color-primary: hsl(22, 100%, 55%);
|
--kit-color-primary: hsl(210, 100%, 55%);
|
||||||
--kit-color-primary-b1: hsl(22, 100%, 50%);
|
--kit-color-primary-b1: hsl(210, 100%, 50%);
|
||||||
--kit-color-primary-b2: hsl(22, 100%, 45%);
|
--kit-color-primary-b2: hsl(210, 100%, 45%);
|
||||||
--kit-color-primary-b3: hsl(22, 100%, 40%);
|
--kit-color-primary-b3: hsl(210, 100%, 40%);
|
||||||
--kit-color-primary-text: #FFF;
|
--kit-color-primary-text: #FFF;
|
||||||
|
|
||||||
--kit-color-secondary-w3: hsl(0, 0%, 70%);
|
--kit-color-secondary-w3: hsl(0, 0%, 70%);
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ kit.PluginManager.register('cookie', function(module, exports, require){
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @class kit.cookie
|
* @class kitCookie
|
||||||
*/
|
*/
|
||||||
return Object.create(
|
return Object.create(
|
||||||
{
|
{
|
||||||
|
|||||||
+20
-5
@@ -1,9 +1,6 @@
|
|||||||
/**
|
/**
|
||||||
* @class kit
|
* @class kitCore
|
||||||
* @property {kit.bsCore}
|
* @extends kitCorePlugins
|
||||||
* @property {kit.toolkit}
|
|
||||||
* @property {kit.Modal}
|
|
||||||
* @property {kit.cookie}
|
|
||||||
*/
|
*/
|
||||||
window.kit = window.kit || {};
|
window.kit = window.kit || {};
|
||||||
(function(global){
|
(function(global){
|
||||||
@@ -52,6 +49,12 @@ window.kit = window.kit || {};
|
|||||||
return this;
|
return this;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param pluginId
|
||||||
|
* @param {kitModuleTypeLoader|{}} config
|
||||||
|
* @return {boolean}
|
||||||
|
*/
|
||||||
__proto.register = function (pluginId, config = {}) {
|
__proto.register = function (pluginId, config = {}) {
|
||||||
//console.warn('PluginManager.register: plugin ' + pluginId + ' ('+(this.plugins[pluginId]?this.plugins[pluginId].state:'0')+')');
|
//console.warn('PluginManager.register: plugin ' + pluginId + ' ('+(this.plugins[pluginId]?this.plugins[pluginId].state:'0')+')');
|
||||||
var defaultPlugin = {
|
var defaultPlugin = {
|
||||||
@@ -427,6 +430,12 @@ window.kit = window.kit || {};
|
|||||||
return this;
|
return this;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @name kitPluginManagerRequire
|
||||||
|
* @param {string} pluginId
|
||||||
|
* @param {callback} callback
|
||||||
|
* @return {boolean}
|
||||||
|
*/
|
||||||
__proto.require = function (pluginId, callback) {
|
__proto.require = function (pluginId, callback) {
|
||||||
//console.warn('PluginManager.require: plugin ' + pluginId + ' ('+(this.plugins[pluginId]?this.plugins[pluginId].state:'0')+')');
|
//console.warn('PluginManager.require: plugin ' + pluginId + ' ('+(this.plugins[pluginId]?this.plugins[pluginId].state:'0')+')');
|
||||||
|
|
||||||
@@ -584,11 +593,15 @@ window.kit = window.kit || {};
|
|||||||
return undefined;
|
return undefined;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @class kitConfig
|
||||||
|
*/
|
||||||
var defaultConfig = {
|
var defaultConfig = {
|
||||||
assetsPath: '',
|
assetsPath: '',
|
||||||
requiredDependencies: [],
|
requiredDependencies: [],
|
||||||
autoloadPluginList: [],
|
autoloadPluginList: [],
|
||||||
debug: false,
|
debug: false,
|
||||||
|
defaultPhoneMask: '+7 (999) 999-99-99',
|
||||||
};
|
};
|
||||||
var manager = new PluginManager(global);
|
var manager = new PluginManager(global);
|
||||||
manager.register('PluginManager', {
|
manager.register('PluginManager', {
|
||||||
@@ -613,5 +626,7 @@ window.kit = window.kit || {};
|
|||||||
global.ready = manager.ready.bind(manager);
|
global.ready = manager.ready.bind(manager);
|
||||||
global.exec = manager.exec.bind(manager);
|
global.exec = manager.exec.bind(manager);
|
||||||
global.require = manager.require.bind(manager);
|
global.require = manager.require.bind(manager);
|
||||||
|
/** @type {kitCore} */
|
||||||
|
window.__pmGlobal__ = global;
|
||||||
})(kit);
|
})(kit);
|
||||||
|
|
||||||
|
|||||||
@@ -29,21 +29,12 @@ __PluginManager__.registerPlugins({
|
|||||||
type: 'loader',
|
type: 'loader',
|
||||||
alias: '$',
|
alias: '$',
|
||||||
},
|
},
|
||||||
tooltip: {
|
|
||||||
path: __pmConfig__.assetsPath + '/tooltip',
|
|
||||||
module: '/tooltip.js',
|
|
||||||
type: 'loader',
|
|
||||||
css: '/tooltip.css',
|
|
||||||
onInstall: function(){
|
|
||||||
kit.$('[data-toggle="tooltip"]').tooltip();
|
|
||||||
},
|
|
||||||
deps: ['popper', 'bsCore'],
|
|
||||||
},
|
|
||||||
popper: {
|
popper: {
|
||||||
path: __pmConfig__.assetsPath + '/popper',
|
path: __pmConfig__.assetsPath + '/popper',
|
||||||
alias: 'popper.js',
|
alias: 'popper.js',
|
||||||
module: '/popper.js',
|
module: '/popper.js',
|
||||||
type: 'loader',
|
type: 'loader',
|
||||||
|
css: '/popper.css',
|
||||||
},
|
},
|
||||||
bsCore: {
|
bsCore: {
|
||||||
path: __pmConfig__.assetsPath + '/bsCore',
|
path: __pmConfig__.assetsPath + '/bsCore',
|
||||||
@@ -53,6 +44,32 @@ __PluginManager__.registerPlugins({
|
|||||||
'/bsCore.css'
|
'/bsCore.css'
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
Tooltip: {
|
||||||
|
path: __pmConfig__.assetsPath + '/tooltip',
|
||||||
|
module: '/tooltip.js',
|
||||||
|
type: 'loader',
|
||||||
|
css: '/tooltip.css',
|
||||||
|
onInstall: function(){
|
||||||
|
var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'));
|
||||||
|
var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
|
||||||
|
return new __pmGlobal__.Tooltip(tooltipTriggerEl, {sanitize: false});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
deps: ['popper', 'bsCore'],
|
||||||
|
},
|
||||||
|
Popover: {
|
||||||
|
path: __pmConfig__.assetsPath + '/popover',
|
||||||
|
module: '/popover.js',
|
||||||
|
type: 'loader',
|
||||||
|
css: '/popover.css',
|
||||||
|
onInstall: function(){
|
||||||
|
var popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]'));
|
||||||
|
var popoverList = popoverTriggerList.map(function (popoverTriggerEl) {
|
||||||
|
return new __pmGlobal__.Popover(popoverTriggerEl);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
deps: ['popper', 'bsCore'],
|
||||||
|
},
|
||||||
mask: {
|
mask: {
|
||||||
path: __pmConfig__.assetsPath + '/mask',
|
path: __pmConfig__.assetsPath + '/mask',
|
||||||
module: '/mask.js',
|
module: '/mask.js',
|
||||||
|
|||||||
@@ -0,0 +1,20 @@
|
|||||||
|
/**
|
||||||
|
* @typedef kitModuleTypeLoader
|
||||||
|
* @param module {{exports: Object}}
|
||||||
|
* @param exports {Object}
|
||||||
|
* @param require {kitPluginManagerRequire}
|
||||||
|
* @param global {kitCore}
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @typedef {Object} kitCorePlugins
|
||||||
|
* @property {kitPluginManagerRequire} require
|
||||||
|
* @property {kitBsCore} bsCore
|
||||||
|
* @property {kitToolkit} toolkit
|
||||||
|
* @property {kitModal} Modal
|
||||||
|
* @property {kitCookie} cookie
|
||||||
|
* @property {kitConfig} config
|
||||||
|
* @property {kitTooltip} tooltip
|
||||||
|
* @property {kitPopover} popover
|
||||||
|
* @property {kitPopper} popper
|
||||||
|
*/
|
||||||
@@ -74,7 +74,7 @@ kit.PluginManager.register('modal', function(module, exports, require){
|
|||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
/**
|
/**
|
||||||
* @class kit.Modal
|
* @class kitModal
|
||||||
*/
|
*/
|
||||||
class Modal extends BaseComponent {
|
class Modal extends BaseComponent {
|
||||||
constructor(element, config) {
|
constructor(element, config) {
|
||||||
|
|||||||
@@ -0,0 +1,71 @@
|
|||||||
|
:root {
|
||||||
|
|
||||||
|
}
|
||||||
|
.popover {
|
||||||
|
--gap: 10px;
|
||||||
|
--popper-border-width: 1px;
|
||||||
|
--popper-border-color: #ccc;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0 /* rtl:ignore */;
|
||||||
|
z-index: 1070;
|
||||||
|
display: block;
|
||||||
|
font-family: inherit;
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
line-height: 1.5;
|
||||||
|
text-align: left;
|
||||||
|
text-align: start;
|
||||||
|
text-decoration: none;
|
||||||
|
text-shadow: none;
|
||||||
|
text-transform: none;
|
||||||
|
letter-spacing: normal;
|
||||||
|
word-break: normal;
|
||||||
|
word-spacing: normal;
|
||||||
|
white-space: normal;
|
||||||
|
line-break: auto;
|
||||||
|
font-size: var(--popper-font-size);
|
||||||
|
word-wrap: break-word;
|
||||||
|
background-color: transparent;
|
||||||
|
background-clip: padding-box;
|
||||||
|
border: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
.popover .popover-arrow {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover-header:empty {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover-content {
|
||||||
|
border-radius: 3px;
|
||||||
|
overflow: hidden;
|
||||||
|
max-width: 200px;
|
||||||
|
padding: 0;
|
||||||
|
color: var(--popper-color);
|
||||||
|
text-align: center;
|
||||||
|
background-color: var(--popper-content-color);
|
||||||
|
border: var(--popper-border-width) solid var(--popper-border-color);
|
||||||
|
box-shadow: 0px 0px 5px -1px var(--popper-border-color);
|
||||||
|
}
|
||||||
|
.popover-header {
|
||||||
|
padding: calc(var(--gap) / 2) calc(var(--gap));
|
||||||
|
margin-bottom: 0;
|
||||||
|
font-size: 1em;
|
||||||
|
background-color: #f0f0f0;
|
||||||
|
border-bottom: var(--popper-border-width) solid var(--popper-border-color);
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
.popover-body {
|
||||||
|
padding: calc(var(--gap) / 2) calc(var(--gap));
|
||||||
|
background-color: var(--popper-body-content-color);
|
||||||
|
}
|
||||||
|
.popover-footer:empty {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.popover-footer {
|
||||||
|
padding: calc(var(--gap) / 2) calc(var(--gap));
|
||||||
|
background-color: var(--popper-footer-content-color);
|
||||||
|
}
|
||||||
@@ -0,0 +1,185 @@
|
|||||||
|
kit.PluginManager.register('popover',function(module, exports, require){
|
||||||
|
/**
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* Bootstrap (v5.0.2): popover.js
|
||||||
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
/** @type {kitTooltip} */
|
||||||
|
var Tooltip = require('tooltip');
|
||||||
|
|
||||||
|
/** @type {kitBsCore} */
|
||||||
|
var bsCore = require('bsCore');
|
||||||
|
|
||||||
|
var { defineJQueryPlugin } = bsCore.util.index;
|
||||||
|
var SelectorEngine = bsCore.dom.SelectorEngine;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ------------------------------------------------------------------------
|
||||||
|
* Constants
|
||||||
|
* ------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
const NAME = 'popover'
|
||||||
|
const DATA_KEY = 'bs.popover'
|
||||||
|
const EVENT_KEY = `.${DATA_KEY}`
|
||||||
|
const CLASS_PREFIX = 'bs-popover'
|
||||||
|
const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g')
|
||||||
|
|
||||||
|
const Default = {
|
||||||
|
...Tooltip.Default,
|
||||||
|
placement: 'right',
|
||||||
|
offset: [0, 0],
|
||||||
|
trigger: 'click',
|
||||||
|
content: '',
|
||||||
|
template: '<div class="popover" role="tooltip">' +
|
||||||
|
'<div class="popover-arrow" data-popper-arrow="true"></div>' +
|
||||||
|
'<div class="popover-content">' +
|
||||||
|
'<h3 class="popover-header"></h3>' +
|
||||||
|
'<div class="popover-body"></div>' +
|
||||||
|
'<div class="popover-footer"></div>' +
|
||||||
|
'</div>' +
|
||||||
|
'</div>'
|
||||||
|
}
|
||||||
|
|
||||||
|
const DefaultType = {
|
||||||
|
...Tooltip.DefaultType,
|
||||||
|
content: '(string|element|function)'
|
||||||
|
}
|
||||||
|
|
||||||
|
const Event = {
|
||||||
|
HIDE: `hide${EVENT_KEY}`,
|
||||||
|
HIDDEN: `hidden${EVENT_KEY}`,
|
||||||
|
SHOW: `show${EVENT_KEY}`,
|
||||||
|
SHOWN: `shown${EVENT_KEY}`,
|
||||||
|
INSERTED: `inserted${EVENT_KEY}`,
|
||||||
|
CLICK: `click${EVENT_KEY}`,
|
||||||
|
FOCUSIN: `focusin${EVENT_KEY}`,
|
||||||
|
FOCUSOUT: `focusout${EVENT_KEY}`,
|
||||||
|
MOUSEENTER: `mouseenter${EVENT_KEY}`,
|
||||||
|
MOUSELEAVE: `mouseleave${EVENT_KEY}`
|
||||||
|
}
|
||||||
|
|
||||||
|
const CLASS_NAME_FADE = 'fade'
|
||||||
|
const CLASS_NAME_SHOW = 'show'
|
||||||
|
|
||||||
|
const SELECTOR_TITLE = '.popover-header'
|
||||||
|
const SELECTOR_CONTENT = '.popover-body'
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ------------------------------------------------------------------------
|
||||||
|
* Class Definition
|
||||||
|
* ------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
/** @class kitPopover */
|
||||||
|
class Popover extends Tooltip {
|
||||||
|
// Getters
|
||||||
|
|
||||||
|
static get Default() {
|
||||||
|
return Default
|
||||||
|
}
|
||||||
|
|
||||||
|
static get NAME() {
|
||||||
|
return NAME
|
||||||
|
}
|
||||||
|
|
||||||
|
static get Event() {
|
||||||
|
return Event
|
||||||
|
}
|
||||||
|
|
||||||
|
static get DefaultType() {
|
||||||
|
return DefaultType
|
||||||
|
}
|
||||||
|
|
||||||
|
// Overrides
|
||||||
|
|
||||||
|
isWithContent() {
|
||||||
|
return this.getTitle() || this._getContent()
|
||||||
|
}
|
||||||
|
|
||||||
|
getTipElement() {
|
||||||
|
if (this.tip) {
|
||||||
|
return this.tip
|
||||||
|
}
|
||||||
|
|
||||||
|
this.tip = super.getTipElement()
|
||||||
|
|
||||||
|
if (!this.getTitle()) {
|
||||||
|
SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!this._getContent()) {
|
||||||
|
SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.tip
|
||||||
|
}
|
||||||
|
|
||||||
|
setContent() {
|
||||||
|
const tip = this.getTipElement()
|
||||||
|
|
||||||
|
// we use append for html objects to maintain js events
|
||||||
|
this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())
|
||||||
|
let content = this._getContent()
|
||||||
|
if (typeof content === 'function') {
|
||||||
|
content = content.call(this._element)
|
||||||
|
}
|
||||||
|
|
||||||
|
this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)
|
||||||
|
|
||||||
|
tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Private
|
||||||
|
|
||||||
|
_addAttachmentClass(attachment) {
|
||||||
|
this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)
|
||||||
|
}
|
||||||
|
|
||||||
|
_getContent() {
|
||||||
|
return this._element.getAttribute('data-bs-content') || this._config.content
|
||||||
|
}
|
||||||
|
|
||||||
|
_cleanTipClass() {
|
||||||
|
const tip = this.getTipElement()
|
||||||
|
const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)
|
||||||
|
if (tabClass !== null && tabClass.length > 0) {
|
||||||
|
tabClass.map(token => token.trim())
|
||||||
|
.forEach(tClass => tip.classList.remove(tClass))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Static
|
||||||
|
|
||||||
|
static jQueryInterface(config) {
|
||||||
|
return this.each(function () {
|
||||||
|
const data = Popover.getOrCreateInstance(this, config)
|
||||||
|
|
||||||
|
if (typeof config === 'string') {
|
||||||
|
if (typeof data[config] === 'undefined') {
|
||||||
|
throw new TypeError(`No method named "${config}"`)
|
||||||
|
}
|
||||||
|
|
||||||
|
data[config]()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ------------------------------------------------------------------------
|
||||||
|
* jQuery
|
||||||
|
* ------------------------------------------------------------------------
|
||||||
|
* add .Popover to jQuery only if jQuery is present
|
||||||
|
*/
|
||||||
|
|
||||||
|
defineJQueryPlugin(Popover)
|
||||||
|
|
||||||
|
module.exports = Popover;
|
||||||
|
|
||||||
|
return module.exports;
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,139 @@
|
|||||||
|
:root {
|
||||||
|
--popper-font-size: 0.8em;
|
||||||
|
--popper-border-color: #212121fa;
|
||||||
|
--popper-border-width: 1px;
|
||||||
|
--popper-arrow-width: 0.7em;
|
||||||
|
--popper-color: #1a1a1a;
|
||||||
|
--popper-content-color: #fff;
|
||||||
|
--popper-header-color: #1a1a1a;
|
||||||
|
--popper-header-content-color: #fff;
|
||||||
|
--popper-body-color: #1a1a1a;
|
||||||
|
--popper-body-content-color: #fff;
|
||||||
|
--popper-footer-color: #1a1a1a;
|
||||||
|
--popper-footer-content-color: #fff;
|
||||||
|
--math-sqrt-2: 1.414213562373095;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
[data-popper-arrow] {
|
||||||
|
position: absolute;
|
||||||
|
display: block;
|
||||||
|
width: 0.8rem;
|
||||||
|
height: 0.4rem;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-popper-arrow]::before {
|
||||||
|
border-width: var(--popper-border-width) var(--popper-border-width) 0px 0px;
|
||||||
|
position: absolute;
|
||||||
|
content: "";
|
||||||
|
border-color: transparent;
|
||||||
|
border-style: solid;
|
||||||
|
width: calc(var(--popper-arrow-width) + var(--popper-border-width));
|
||||||
|
height: calc(var(--popper-arrow-width) + var(--popper-border-width));
|
||||||
|
background-color: var(--popper-content-color);
|
||||||
|
box-shadow: 0px 0px 4px -2px var(--popper-content-color);
|
||||||
|
}
|
||||||
|
/*top*/
|
||||||
|
[data-popper-placement^="top"] {
|
||||||
|
padding: calc(var(--popper-arrow-width) / var(--math-sqrt-2) + var(--popper-border-width) * (var(--math-sqrt-2) - 1)) 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-popper-placement^="top"] [data-popper-arrow] {
|
||||||
|
bottom: 0;
|
||||||
|
width: calc(var(--popper-arrow-width) * var(--math-sqrt-2) + var(--popper-border-width) * var(--math-sqrt-2));
|
||||||
|
height: calc(var(--popper-arrow-width) / var(--math-sqrt-2) + var(--popper-border-width) * var(--math-sqrt-2));
|
||||||
|
/* left: 50% !important; */
|
||||||
|
/* transform: translate(-50%, 0); */
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-popper-placement^="top"] [data-popper-arrow]::before {
|
||||||
|
bottom: 0;
|
||||||
|
left: 50%;
|
||||||
|
transform: rotate(
|
||||||
|
225deg
|
||||||
|
) translate(0, 100%);
|
||||||
|
transform-origin: 0 100%;
|
||||||
|
border-left-color: var(
|
||||||
|
--popper-border-color);
|
||||||
|
border-top-color: var(
|
||||||
|
--popper-border-color);
|
||||||
|
border-width: var(--popper-border-width) 0 0 var(--popper-border-width);
|
||||||
|
}
|
||||||
|
/*right*/
|
||||||
|
[data-popper-placement^="right"] {
|
||||||
|
padding: 0 calc(var(--popper-arrow-width) / var(--math-sqrt-2) + var(--popper-border-width) * (var(--math-sqrt-2) - 1));
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-popper-placement^="right"] [data-popper-arrow] {
|
||||||
|
left: 0;
|
||||||
|
width: calc(var(--popper-arrow-width) / var(--math-sqrt-2) + var(--popper-border-width) * var(--math-sqrt-2));
|
||||||
|
height: calc(var(--popper-arrow-width) * var(--math-sqrt-2) + var(--popper-border-width) * var(--math-sqrt-2));
|
||||||
|
top: 50% !important;
|
||||||
|
transform: translate(0px, -50%) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-popper-placement^="right"] [data-popper-arrow]::before {
|
||||||
|
left: 0px;
|
||||||
|
top: 50%;
|
||||||
|
transform: rotate(
|
||||||
|
225deg
|
||||||
|
) translate(25%, -50%);
|
||||||
|
transform-origin: 75% 0;
|
||||||
|
border-right-color: var(
|
||||||
|
--popper-border-color);
|
||||||
|
border-top-color: var(
|
||||||
|
--popper-border-color);
|
||||||
|
}
|
||||||
|
/*bottom*/
|
||||||
|
[data-popper-placement^="bottom"] {
|
||||||
|
padding: calc(var(--popper-arrow-width) / var(--math-sqrt-2) + var(--popper-border-width) * (var(--math-sqrt-2) - 1)) 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-popper-placement^="bottom"] [data-popper-arrow] {
|
||||||
|
top: 0;
|
||||||
|
width: calc(var(--popper-arrow-width) * var(--math-sqrt-2) + var(--popper-border-width) * var(--math-sqrt-2));
|
||||||
|
height: calc(var(--popper-arrow-width) / var(--math-sqrt-2) + var(--popper-border-width) * var(--math-sqrt-2));
|
||||||
|
/*left: 50% !important;*/
|
||||||
|
/*transform: translate(-50%, 0);*/
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-popper-placement^="bottom"] [data-popper-arrow]::before {
|
||||||
|
top: 0;
|
||||||
|
left: 50%;
|
||||||
|
transform: rotate(
|
||||||
|
45deg
|
||||||
|
) translate(0, 0);
|
||||||
|
transform-origin: 0 0;
|
||||||
|
border-left-color: var(
|
||||||
|
--popper-border-color);
|
||||||
|
border-top-color: var(
|
||||||
|
--popper-border-color);
|
||||||
|
border-width: var(--popper-border-width) 0 0 var(--popper-border-width);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*left*/
|
||||||
|
[data-popper-placement^="left"] {
|
||||||
|
padding: 0 calc(var(--popper-arrow-width) / var(--math-sqrt-2) + var(--popper-border-width) * (var(--math-sqrt-2) - 1));
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-popper-placement^="left"] [data-popper-arrow] {
|
||||||
|
right: 0;
|
||||||
|
width: calc(var(--popper-arrow-width) / var(--math-sqrt-2) + var(--popper-border-width) * var(--math-sqrt-2));
|
||||||
|
height: calc(var(--popper-arrow-width) * var(--math-sqrt-2) + var(--popper-border-width) * var(--math-sqrt-2));
|
||||||
|
top: 50% !important;
|
||||||
|
transform: translate(0px, -50%) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-popper-placement^="left"] [data-popper-arrow]::before {
|
||||||
|
right: 0;
|
||||||
|
top: 50%;
|
||||||
|
transform: rotate(
|
||||||
|
45deg
|
||||||
|
) translate(-25%, -50%);
|
||||||
|
transform-origin: 25% 0;
|
||||||
|
border-right-color: var(
|
||||||
|
--popper-border-color);
|
||||||
|
border-top-color: var(
|
||||||
|
--popper-border-color);
|
||||||
|
}
|
||||||
@@ -705,12 +705,16 @@
|
|||||||
.kit-button * {
|
.kit-button * {
|
||||||
pointer-events: none;
|
pointer-events: none;
|
||||||
}
|
}
|
||||||
.kit-button:hover,
|
.kit-button:hover {
|
||||||
.kit-button:focus {
|
|
||||||
--kit-color-button-text: var(--kit-color-button-text-hover);
|
--kit-color-button-text: var(--kit-color-button-text-hover);
|
||||||
--kit-color-button-content: var(--kit-color-button-content-hover);
|
--kit-color-button-content: var(--kit-color-button-content-hover);
|
||||||
--kit-color-button-material: var(--kit-color-button-material-hover);
|
--kit-color-button-material: var(--kit-color-button-material-hover);
|
||||||
}
|
}
|
||||||
|
.kit-button:focus {
|
||||||
|
--kit-color-button-text: var(--kit-color-button-text-active);
|
||||||
|
--kit-color-button-content: var(--kit-color-button-content-active);
|
||||||
|
--kit-color-button-material: var(--kit-color-button-material-active);
|
||||||
|
}
|
||||||
.kit-button:active {
|
.kit-button:active {
|
||||||
--kit-color-button-text: var(--kit-color-button-text-active);
|
--kit-color-button-text: var(--kit-color-button-text-active);
|
||||||
--kit-color-button-content: var(--kit-color-button-content-active);
|
--kit-color-button-content: var(--kit-color-button-content-active);
|
||||||
@@ -727,7 +731,7 @@
|
|||||||
box-shadow: inset 0 -2px 0 var(--kit-color-button-material);
|
box-shadow: inset 0 -2px 0 var(--kit-color-button-material);
|
||||||
}
|
}
|
||||||
.kit-button.kit-button--material:hover {
|
.kit-button.kit-button--material:hover {
|
||||||
box-shadow: inset 0 -3px 0 var(--kit-color-button-material);
|
box-shadow: inset 0 -2px 0 var(--kit-color-button-material);
|
||||||
}
|
}
|
||||||
.kit-button__icon {
|
.kit-button__icon {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
@@ -750,7 +754,10 @@
|
|||||||
.kit-button:disabled,
|
.kit-button:disabled,
|
||||||
.kit-button[disabled],
|
.kit-button[disabled],
|
||||||
.kit-button.disabled,
|
.kit-button.disabled,
|
||||||
.kit-button.inactive-button {
|
.kit-button.inactive-button,
|
||||||
|
.kit-button[loading],
|
||||||
|
.kit-button.loading {
|
||||||
|
opacity: 0.7;
|
||||||
--kit-color-button-content: var(--kit-color-button-content-disabled);
|
--kit-color-button-content: var(--kit-color-button-content-disabled);
|
||||||
--kit-color-button-text:var(--kit-color-button-text-disabled);
|
--kit-color-button-text:var(--kit-color-button-text-disabled);
|
||||||
--kit-color-button-material: var(--kit-color-button-material-disabled);
|
--kit-color-button-material: var(--kit-color-button-material-disabled);
|
||||||
|
|||||||
@@ -1,35 +1,10 @@
|
|||||||
import assign from "../../../../../_utils/cookie/src/assign";
|
kit.PluginManager.register('toolkit', function(module, exports, require, global) {
|
||||||
import defaultConverter from "../../../../../_utils/cookie/src/converter";
|
|
||||||
|
|
||||||
kit.PluginManager.register('toolkit',function(module, exports, require) {
|
|
||||||
|
|
||||||
var $ = require('jquery');
|
var $ = require('jquery');
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var __Config = function () {
|
|
||||||
|
|
||||||
function Config() {
|
|
||||||
this.mask =
|
|
||||||
{
|
|
||||||
tel: '+375 (99) 999-99-99'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Config.prototype.test = function test() {
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
return Config;
|
|
||||||
}();
|
|
||||||
var Config = new __Config();
|
|
||||||
|
|
||||||
|
|
||||||
var __Helper = function () {
|
var __Helper = function () {
|
||||||
|
|
||||||
function Helper() {
|
function Helper() {}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @description Вызывает событие
|
* @description Вызывает событие
|
||||||
@@ -859,7 +834,7 @@ kit.PluginManager.register('toolkit',function(module, exports, require) {
|
|||||||
Inputs.prototype.setTelMask = function () {
|
Inputs.prototype.setTelMask = function () {
|
||||||
var _this3 = this;
|
var _this3 = this;
|
||||||
|
|
||||||
$('[type=tel]').mask(Config.mask.tel, {
|
$('[type=tel]').mask(global.config.defaultPhoneMask, {
|
||||||
placeholder: '_', completed: function completed() {
|
placeholder: '_', completed: function completed() {
|
||||||
_this3.fieldNormalize(this);
|
_this3.fieldNormalize(this);
|
||||||
}
|
}
|
||||||
@@ -953,12 +928,11 @@ kit.PluginManager.register('toolkit',function(module, exports, require) {
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @class kit.toolkit
|
* @class kitToolkit
|
||||||
*/
|
*/
|
||||||
var toolkit = {
|
var toolkit = {
|
||||||
Helper: Helper,
|
Helper: Helper,
|
||||||
Select: Select(),
|
Select: Select(),
|
||||||
Config: Config,
|
|
||||||
Message: Message,
|
Message: Message,
|
||||||
Inputs: Inputs,
|
Inputs: Inputs,
|
||||||
device: device,
|
device: device,
|
||||||
|
|||||||
+11
-146
@@ -1,13 +1,10 @@
|
|||||||
:root {
|
|
||||||
--kit-tooltip-font-size: 0.8em;
|
|
||||||
--kit-tooltip-color: #ffffff;
|
|
||||||
--kit-tooltip-content-color: #212121fa;
|
|
||||||
--kit-tooltip-border-color: #212121fa;
|
|
||||||
--kit-tooltip-border-width: 0px;
|
|
||||||
--kit-tooltip-arrow-width: 0.7em;
|
|
||||||
--math-sqrt-2: 1.414213562373095;
|
|
||||||
}
|
|
||||||
.tooltip {
|
.tooltip {
|
||||||
|
--popper-border-color: #212121fa;
|
||||||
|
--popper-border-width: 0em;
|
||||||
|
--popper-arrow-width: 0.7em;
|
||||||
|
--popper-color: #ffffff;
|
||||||
|
--popper-content-color: #212121fa;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
z-index: 1070;
|
z-index: 1070;
|
||||||
display: block;
|
display: block;
|
||||||
@@ -26,7 +23,7 @@
|
|||||||
word-spacing: normal;
|
word-spacing: normal;
|
||||||
white-space: normal;
|
white-space: normal;
|
||||||
line-break: auto;
|
line-break: auto;
|
||||||
font-size: var(--kit-tooltip-font-size);
|
font-size: var(--popper-font-size);
|
||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
}
|
}
|
||||||
@@ -35,145 +32,13 @@
|
|||||||
opacity: 0.9;
|
opacity: 0.9;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip .tooltip-arrow {
|
|
||||||
position: absolute;
|
|
||||||
display: block;
|
|
||||||
width: 0.8rem;
|
|
||||||
height: 0.4rem;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tooltip .tooltip-arrow::before {
|
|
||||||
border-width: var(--kit-tooltip-border-width) var(--kit-tooltip-border-width) 0px 0px;
|
|
||||||
position: absolute;
|
|
||||||
content: "";
|
|
||||||
border-color: transparent;
|
|
||||||
border-style: solid;
|
|
||||||
width: var(--kit-tooltip-arrow-width);
|
|
||||||
height: var(--kit-tooltip-arrow-width);
|
|
||||||
background-color: var(--kit-tooltip-content-color);
|
|
||||||
box-shadow: 0px 0px 4px -2px var(--kit-tooltip-content-color);
|
|
||||||
}
|
|
||||||
/*top*/
|
|
||||||
.kit-tooltip-top, .kit-tooltip-auto[x-placement^="top"] {
|
|
||||||
padding: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1)) 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-top .tooltip-arrow, .kit-tooltip-auto[x-placement^="top"] .tooltip-arrow {
|
|
||||||
bottom: 0;
|
|
||||||
width: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
height: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
/* left: 50% !important; */
|
|
||||||
/* transform: translate(-50%, 0); */
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-top .tooltip-arrow::before, .kit-tooltip-auto[x-placement^="top"] .tooltip-arrow::before {
|
|
||||||
bottom: 0;
|
|
||||||
left: 50%;
|
|
||||||
transform: rotate(
|
|
||||||
225deg
|
|
||||||
) translate(0, 100%);
|
|
||||||
transform-origin: 0 100%;
|
|
||||||
border-left-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
border-top-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
border-width: var(--kit-tooltip-border-width) 0 0 var(--kit-tooltip-border-width);
|
|
||||||
}
|
|
||||||
/*right*/
|
|
||||||
.kit-tooltip-right, .kit-tooltip-auto[x-placement^="right"], .kit-tooltip-end {
|
|
||||||
padding: 0 calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-right .arrow,
|
|
||||||
.kit-tooltip-auto[x-placement^="right"] .arrow,
|
|
||||||
.kit-tooltip-end .tooltip-arrow {
|
|
||||||
left: 0;
|
|
||||||
width: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
height: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
top: 50% !important;
|
|
||||||
transform: translate(0px, -50%) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-right .arrow::before,
|
|
||||||
.kit-tooltip-auto[x-placement^="right"] .arrow::before,
|
|
||||||
.kit-tooltip-end .tooltip-arrow::before {
|
|
||||||
left: 0px;
|
|
||||||
top: 50%;
|
|
||||||
transform: rotate(
|
|
||||||
225deg
|
|
||||||
) translate(25%, -50%);
|
|
||||||
transform-origin: 75% 0;
|
|
||||||
border-right-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
border-top-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
}
|
|
||||||
/*bottom*/
|
|
||||||
.kit-tooltip-bottom, .kit-tooltip-auto[x-placement^="bottom"] {
|
|
||||||
padding: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1)) 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-bottom .tooltip-arrow, .kit-tooltip-auto[x-placement^="bottom"] .arrow {
|
|
||||||
top: 0;
|
|
||||||
width: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
height: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
/*left: 50% !important;*/
|
|
||||||
/*transform: translate(-50%, 0);*/
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-bottom .tooltip-arrow::before, .kit-tooltip-auto[x-placement^="bottom"] .arrow::before {
|
|
||||||
top: 0;
|
|
||||||
left: 50%;
|
|
||||||
transform: rotate(
|
|
||||||
45deg
|
|
||||||
) translate(0, 0);
|
|
||||||
transform-origin: 0 0;
|
|
||||||
border-left-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
border-top-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
border-width: var(--kit-tooltip-border-width) 0 0 var(--kit-tooltip-border-width);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*left*/
|
|
||||||
.kit-tooltip-left,
|
|
||||||
.kit-tooltip-auto[x-placement^="left"],
|
|
||||||
.kit-tooltip-start {
|
|
||||||
padding: 0 calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-left .arrow, .kit-tooltip-auto[x-placement^="left"] .arrow,
|
|
||||||
.kit-tooltip-start .tooltip-arrow {
|
|
||||||
right: 0;
|
|
||||||
width: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
height: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
top: 50% !important;
|
|
||||||
transform: translate(0px, -50%) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-left .arrow::before,
|
|
||||||
.kit-tooltip-auto[x-placement^="left"] .arrow::before,
|
|
||||||
.kit-tooltip-start .tooltip-arrow::before {
|
|
||||||
right: 0;
|
|
||||||
top: 50%;
|
|
||||||
transform: rotate(
|
|
||||||
45deg
|
|
||||||
) translate(-25%, -50%);
|
|
||||||
transform-origin: 25% 0;
|
|
||||||
border-right-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
border-top-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
}
|
|
||||||
|
|
||||||
.tooltip-inner {
|
.tooltip-inner {
|
||||||
max-width: 200px;
|
max-width: 200px;
|
||||||
padding: 0.25rem 0.5rem;
|
padding: 0.25rem 0.5rem;
|
||||||
color: var(--kit-tooltip-color);
|
color: var(--popper-color);
|
||||||
text-align: center;
|
text-align: center;
|
||||||
background-color: var(--kit-tooltip-content-color);
|
background-color: var(--popper-content-color);
|
||||||
border-radius: 0.25rem;
|
border-radius: 0.25rem;
|
||||||
border: var(--kit-tooltip-border-width) solid var(--kit-tooltip-border-color);
|
border: var(--popper-border-width) solid var(--popper-border-color);
|
||||||
box-shadow: 0px 0px 5px -1px var(--kit-tooltip-content-color);
|
box-shadow: 0px 0px 5px -1px var(--popper-content-color);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,9 +25,9 @@ kit.PluginManager.register('tooltip',function(module, exports, require){
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
const NAME = 'tooltip'
|
const NAME = 'tooltip'
|
||||||
const DATA_KEY = 'kit.tooltip'
|
const DATA_KEY = 'bs.tooltip'
|
||||||
const EVENT_KEY = `.${DATA_KEY}`
|
const EVENT_KEY = `.${DATA_KEY}`
|
||||||
const CLASS_PREFIX = 'kit-tooltip'
|
const CLASS_PREFIX = 'bs-tooltip'
|
||||||
const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g')
|
const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g')
|
||||||
const DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])
|
const DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])
|
||||||
|
|
||||||
@@ -62,7 +62,7 @@ kit.PluginManager.register('tooltip',function(module, exports, require){
|
|||||||
const Default = {
|
const Default = {
|
||||||
animation: true,
|
animation: true,
|
||||||
template: '<div class="tooltip" role="tooltip">' +
|
template: '<div class="tooltip" role="tooltip">' +
|
||||||
'<div class="tooltip-arrow"></div>' +
|
'<div class="tooltip-arrow" data-popper-arrow="true"></div>' +
|
||||||
'<div class="tooltip-inner"></div>' +
|
'<div class="tooltip-inner"></div>' +
|
||||||
'</div>',
|
'</div>',
|
||||||
trigger: 'hover focus',
|
trigger: 'hover focus',
|
||||||
@@ -76,7 +76,7 @@ kit.PluginManager.register('tooltip',function(module, exports, require){
|
|||||||
fallbackPlacements: ['top', 'right', 'bottom', 'left'],
|
fallbackPlacements: ['top', 'right', 'bottom', 'left'],
|
||||||
boundary: 'clippingParents',
|
boundary: 'clippingParents',
|
||||||
customClass: '',
|
customClass: '',
|
||||||
sanitize: true,
|
sanitize: false,
|
||||||
sanitizeFn: null,
|
sanitizeFn: null,
|
||||||
allowList: DefaultAllowlist,
|
allowList: DefaultAllowlist,
|
||||||
popperConfig: null
|
popperConfig: null
|
||||||
@@ -115,6 +115,7 @@ kit.PluginManager.register('tooltip',function(module, exports, require){
|
|||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/** @class kitTooltip */
|
||||||
class Tooltip extends BaseComponent {
|
class Tooltip extends BaseComponent {
|
||||||
constructor(element, config) {
|
constructor(element, config) {
|
||||||
if (typeof Popper === 'undefined') {
|
if (typeof Popper === 'undefined') {
|
||||||
@@ -405,7 +406,7 @@ kit.PluginManager.register('tooltip',function(module, exports, require){
|
|||||||
}
|
}
|
||||||
|
|
||||||
getTitle() {
|
getTitle() {
|
||||||
let title = this._element.getAttribute('data-kit-original-title')
|
let title = this._element.getAttribute('data-bs-original-title')
|
||||||
|
|
||||||
if (!title) {
|
if (!title) {
|
||||||
title = typeof this._config.title === 'function' ?
|
title = typeof this._config.title === 'function' ?
|
||||||
@@ -552,10 +553,10 @@ kit.PluginManager.register('tooltip',function(module, exports, require){
|
|||||||
|
|
||||||
_fixTitle() {
|
_fixTitle() {
|
||||||
const title = this._element.getAttribute('title')
|
const title = this._element.getAttribute('title')
|
||||||
const originalTitleType = typeof this._element.getAttribute('data-kit-original-title')
|
const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')
|
||||||
|
|
||||||
if (title || originalTitleType !== 'string') {
|
if (title || originalTitleType !== 'string') {
|
||||||
this._element.setAttribute('data-kit-original-title', title || '')
|
this._element.setAttribute('data-bs-original-title', title || '')
|
||||||
if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {
|
if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {
|
||||||
this._element.setAttribute('aria-label', title)
|
this._element.setAttribute('aria-label', title)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,171 +0,0 @@
|
|||||||
:root {
|
|
||||||
--kit-tooltip-font-size: 0.8em;
|
|
||||||
--kit-tooltip-color: #ffffff;
|
|
||||||
--kit-tooltip-content-color: #212121fa;
|
|
||||||
--kit-tooltip-border-color: #212121fa;
|
|
||||||
--kit-tooltip-border-width: 0px;
|
|
||||||
--kit-tooltip-arrow-width: 0.8em;
|
|
||||||
--math-sqrt-2: 1.414213562373095;
|
|
||||||
}
|
|
||||||
.tooltip {
|
|
||||||
position: absolute;
|
|
||||||
z-index: 1070;
|
|
||||||
display: block;
|
|
||||||
margin: 0;
|
|
||||||
font-family: inherit;
|
|
||||||
font-style: normal;
|
|
||||||
font-weight: 400;
|
|
||||||
line-height: 1.5;
|
|
||||||
text-align: left;
|
|
||||||
text-align: start;
|
|
||||||
text-decoration: none;
|
|
||||||
text-shadow: none;
|
|
||||||
text-transform: none;
|
|
||||||
letter-spacing: normal;
|
|
||||||
word-break: normal;
|
|
||||||
word-spacing: normal;
|
|
||||||
white-space: normal;
|
|
||||||
line-break: auto;
|
|
||||||
font-size: var(--kit-tooltip-font-size);
|
|
||||||
word-wrap: break-word;
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tooltip.show {
|
|
||||||
opacity: 0.9;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tooltip .arrow {
|
|
||||||
position: absolute;
|
|
||||||
display: block;
|
|
||||||
width: 0.8rem;
|
|
||||||
height: 0.4rem;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tooltip .arrow::before {
|
|
||||||
border-width: var(--kit-tooltip-border-width) var(--kit-tooltip-border-width) 0px 0px;
|
|
||||||
position: absolute;
|
|
||||||
content: "";
|
|
||||||
border-color: transparent;
|
|
||||||
border-style: solid;
|
|
||||||
width: var(--kit-tooltip-arrow-width);
|
|
||||||
height: var(--kit-tooltip-arrow-width);
|
|
||||||
background-color: var(--kit-tooltip-content-color);
|
|
||||||
box-shadow: 0px 0px 4px -2px var(--kit-tooltip-content-color);
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-top, .kit-tooltip-auto[x-placement^="top"] {
|
|
||||||
padding: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1)) 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-top .arrow, .kit-tooltip-auto[x-placement^="top"] .arrow {
|
|
||||||
bottom: 0;
|
|
||||||
width: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
height: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
/* left: 50% !important; */
|
|
||||||
/* transform: translate(-50%, 0); */
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-top .arrow::before, .kit-tooltip-auto[x-placement^="top"] .arrow::before {
|
|
||||||
bottom: 0;
|
|
||||||
left: 50%;
|
|
||||||
transform: rotate(
|
|
||||||
225deg
|
|
||||||
) translate(0, 100%);
|
|
||||||
transform-origin: 0 100%;
|
|
||||||
border-left-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
border-top-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
border-width: var(--kit-tooltip-border-width) 0 0 var(--kit-tooltip-border-width);
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-right, .kit-tooltip-auto[x-placement^="right"] {
|
|
||||||
padding: 0 calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-right .arrow, .kit-tooltip-auto[x-placement^="right"] .arrow {
|
|
||||||
left: 0;
|
|
||||||
width: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
height: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
top: 50% !important;
|
|
||||||
transform: translate(0px, -50%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-right .arrow::before, .kit-tooltip-auto[x-placement^="right"] .arrow::before {
|
|
||||||
left: 0px;
|
|
||||||
top: 50%;
|
|
||||||
transform: rotate(
|
|
||||||
225deg
|
|
||||||
) translate(25%, -50%);
|
|
||||||
transform-origin: 75% 0;
|
|
||||||
border-right-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
border-top-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-bottom, .kit-tooltip-auto[x-placement^="bottom"] {
|
|
||||||
padding: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1)) 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-bottom .arrow, .kit-tooltip-auto[x-placement^="bottom"] .arrow {
|
|
||||||
top: 0;
|
|
||||||
width: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
height: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
/*left: 50% !important;*/
|
|
||||||
/*transform: translate(-50%, 0);*/
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-bottom .arrow::before, .kit-tooltip-auto[x-placement^="bottom"] .arrow::before {
|
|
||||||
top: 0;
|
|
||||||
left: 50%;
|
|
||||||
transform: rotate(
|
|
||||||
45deg
|
|
||||||
) translate(0, 0);
|
|
||||||
transform-origin: 0 0;
|
|
||||||
border-left-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
border-top-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
border-width: var(--kit-tooltip-border-width) 0 0 var(--kit-tooltip-border-width);
|
|
||||||
}
|
|
||||||
|
|
||||||
::before {}
|
|
||||||
|
|
||||||
.kit-tooltip-left, .kit-tooltip-auto[x-placement^="left"] {
|
|
||||||
padding: 0 calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * (var(--math-sqrt-2) - 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-left .arrow, .kit-tooltip-auto[x-placement^="left"] .arrow {
|
|
||||||
right: 0;
|
|
||||||
width: calc(var(--kit-tooltip-arrow-width) / var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
height: calc(var(--kit-tooltip-arrow-width) * var(--math-sqrt-2) + var(--kit-tooltip-border-width) * var(--math-sqrt-2));
|
|
||||||
top: 50% !important;
|
|
||||||
transform: translate(0px, -50%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.kit-tooltip-left .arrow::before, .kit-tooltip-auto[x-placement^="left"] .arrow::before {
|
|
||||||
right: 0;
|
|
||||||
top: 50%;
|
|
||||||
transform: rotate(
|
|
||||||
45deg
|
|
||||||
) translate(-25%, -50%);
|
|
||||||
transform-origin: 25% 0;
|
|
||||||
border-right-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
border-top-color: var(
|
|
||||||
--kit-tooltip-border-color);
|
|
||||||
}
|
|
||||||
|
|
||||||
.tooltip-inner {
|
|
||||||
max-width: 200px;
|
|
||||||
padding: 0.25rem 0.5rem;
|
|
||||||
color: var(--kit-tooltip-color);
|
|
||||||
text-align: center;
|
|
||||||
background-color: var(--kit-tooltip-content-color);
|
|
||||||
border-radius: 0.25rem;
|
|
||||||
border: var(--kit-tooltip-border-width) solid var(--kit-tooltip-border-color);
|
|
||||||
box-shadow: 0px 0px 5px -1px var(--kit-tooltip-content-color);
|
|
||||||
}
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,7 @@
|
|||||||
<div class="flex-card__content">
|
<div class="flex-card__content">
|
||||||
<div class="flex-card__body-shell aspect-ratio">
|
<div class="flex-card__body-shell aspect-ratio">
|
||||||
<div class="flex-card__body">
|
<div class="flex-card__body">
|
||||||
<div class="flex-card__picture"><?=$arParams['picture']?></div>
|
<div class="flex-card__picture kit-picture"><?=$arParams['picture']?></div>
|
||||||
<div class="flex-card__title">
|
<div class="flex-card__title">
|
||||||
<div class="kit-line-clamp">
|
<div class="kit-line-clamp">
|
||||||
<?=$arParams['name']?>
|
<?=$arParams['name']?>
|
||||||
@@ -20,6 +20,17 @@
|
|||||||
<div class="flex-card__header"><?=$arParams['header']?></div>
|
<div class="flex-card__header"><?=$arParams['header']?></div>
|
||||||
<div class="flex-card__footer"><?=$arParams['footer']?></div>
|
<div class="flex-card__footer"><?=$arParams['footer']?></div>
|
||||||
<div class="flex-card__hover"><?=$arParams['hover']?></div>
|
<div class="flex-card__hover"><?=$arParams['hover']?></div>
|
||||||
|
<div class="flex-list flex-list--ticket"><?
|
||||||
|
foreach ($item['tickets'] as $ticket) {
|
||||||
|
?>
|
||||||
|
<div class="flex-list-item">
|
||||||
|
<div class="ticket-item <?=$ticket['code']?>">
|
||||||
|
<div class="kit-line-clamp"><?=$ticket['name']?></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<?
|
||||||
|
}
|
||||||
|
?></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
<div class="kit-field__hint kit-icon" data-toggle="tooltip" title="<?=\Bx\Kit\Node\Lib::safeHtmlAttr($arParams['TITLE'])?>">
|
<div class="kit-field__hint kit-icon" data-bs-toggle="tooltip" title="<?=\Bx\Kit\Node\Lib::safeHtmlAttr($arParams['TITLE'])?>">
|
||||||
<?app()->service()->templater()->render('kit:svg/hint')?>
|
<?app()->service()->templater()->render('kit:svg/hint')?>
|
||||||
</div>
|
</div>
|
||||||
+4
-4
@@ -12,7 +12,7 @@ $arParams['TYPE'] = $arParams['TYPE']?:'hidden';
|
|||||||
$isReadonly = Tools::isTrue($arParams['READONLY']);
|
$isReadonly = Tools::isTrue($arParams['READONLY']);
|
||||||
$isRequired = Tools::isTrue($arParams['REQUIRED']);
|
$isRequired = Tools::isTrue($arParams['REQUIRED']);
|
||||||
$isChecked = Tools::isTrue($arParams['CHECKED']);
|
$isChecked = Tools::isTrue($arParams['CHECKED']);
|
||||||
$isHint = boolval(strlen($arParams['HINT']));
|
$isHint = (string)($arParams['HINT']) !== '';
|
||||||
$isDatepicker = Tools::isTrue($arParams['DATEPICKER']) || is_array($arParams['DATEPICKER']);
|
$isDatepicker = Tools::isTrue($arParams['DATEPICKER']) || is_array($arParams['DATEPICKER']);
|
||||||
|
|
||||||
$label = $arParams['LABEL'];
|
$label = $arParams['LABEL'];
|
||||||
@@ -62,9 +62,9 @@ if($isHint) {
|
|||||||
?>
|
?>
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
><?
|
><?
|
||||||
if($isHint){?><div class="kit-field__hint kit-icon" data-toggle="tooltip" data-kit-html="true" title="<?=Str::safeHtmlAttr($arParams['HINT'])?>" data-placement="top">
|
if($isHint){
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" width="14px" height="14px" version="1.1" style="shape-rendering:geometricPrecision;text-rendering:geometricPrecision;image-rendering:optimizeQuality;fill-rule:evenodd;clip-rule:evenodd;" viewBox="0 0 5.36 5.36"><g id="Слой_x0020_1"><path class="fil0" d="M2.68 0c1.48,0 2.68,1.2 2.68,2.68 0,1.48 -1.2,2.68 -2.68,2.68 -1.48,0 -2.68,-1.2 -2.68,-2.68 0,-1.48 1.2,-2.68 2.68,-2.68zm-0.48 2.98c0.21,-0.16 0.37,-0.34 0.5,-0.55 0.13,-0.2 0.19,-0.41 0.19,-0.62 0,-0.2 -0.08,-0.3 -0.23,-0.3 -0.07,0 -0.12,0.02 -0.16,0.06 -0.04,0.04 -0.06,0.1 -0.06,0.17 0,0.07 0.02,0.15 0.05,0.24l-0.64 0.15c-0.05,-0.14 -0.07,-0.28 -0.07,-0.41 0,-0.25 0.08,-0.45 0.23,-0.6 0.16,-0.14 0.38,-0.21 0.66,-0.21 0.29,0 0.51,0.08 0.67,0.23 0.16,0.15 0.24,0.37 0.24,0.65 0,0.26 -0.06,0.5 -0.19,0.72 -0.13,0.22 -0.31,0.42 -0.55,0.61l0 0.42 -0.64 0 0 -0.56zm-0.02 0.81l0.69 0 0 0.67 -0.69 0 0 -0.67z"/></g></svg>
|
app()->service()->templater()->render('kit:field/hint', ['TITLE' => $arParams['HINT']]);
|
||||||
</div><?}
|
}
|
||||||
?>
|
?>
|
||||||
<div class="kit-field__label"><div class="kit-field__label-content kit-line-clamp"><?=$label;?></div><?
|
<div class="kit-field__label"><div class="kit-field__label-content kit-line-clamp"><?=$label;?></div><?
|
||||||
if(in_array($arParams['TYPE'], ['radio', 'checkbox'])) {?>
|
if(in_array($arParams['TYPE'], ['radio', 'checkbox'])) {?>
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 6.7 KiB |
@@ -0,0 +1,72 @@
|
|||||||
|
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");?>
|
||||||
|
<?
|
||||||
|
if(\Bitrix\Main\Loader::includeModule('wt.core')) {
|
||||||
|
app()->service()->assets()->setPlugins([
|
||||||
|
'kit:config',
|
||||||
|
'kit:flex-kit',
|
||||||
|
'kit:core',
|
||||||
|
'kit:bsCore',
|
||||||
|
'kit:collapse',
|
||||||
|
'kit:site',
|
||||||
|
'kit:toolkit',
|
||||||
|
'kit:theme',
|
||||||
|
])->render();
|
||||||
|
}
|
||||||
|
$APPLICATION->ShowHead();
|
||||||
|
|
||||||
|
?>
|
||||||
|
<style type="text/css">
|
||||||
|
.section-product-list {
|
||||||
|
--col-count: 5;
|
||||||
|
|
||||||
|
}
|
||||||
|
.section-product-list .flex-card {
|
||||||
|
--kit-color-content: #FFF;
|
||||||
|
--aspect-ratio: calc(200 / 250);
|
||||||
|
}
|
||||||
|
.section-product-list .flex-card__picture {
|
||||||
|
flex-grow: 1;
|
||||||
|
}
|
||||||
|
.flex-card__hover {
|
||||||
|
text-align: center;
|
||||||
|
color: grey;
|
||||||
|
font-size: 0.8em;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<?
|
||||||
|
|
||||||
|
$items = array_fill(0, 40, [
|
||||||
|
'id' => 1,
|
||||||
|
'name' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit Ab accusamus aliquid, consequuntur corporis ducimus',
|
||||||
|
'hover' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit Ab accusamus aliquid, consequuntur corporis ducimus',
|
||||||
|
'picture' => app()->service()->templater()->get('kit:svg/shop/cardPictureEmpty'),
|
||||||
|
'text_preview' => 'asdas asdas dasdasd',
|
||||||
|
'tickets' => [
|
||||||
|
[
|
||||||
|
'code' => 'news',
|
||||||
|
'name' => 'Новинка'
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'code' => 'discount',
|
||||||
|
'name' => 'Скидка'
|
||||||
|
]
|
||||||
|
]
|
||||||
|
]);
|
||||||
|
|
||||||
|
?>
|
||||||
|
<div class="kit-wrapper">
|
||||||
|
<section class="section-product-list">
|
||||||
|
<div>
|
||||||
|
<h1>Каталог</h1>
|
||||||
|
</div>
|
||||||
|
<div class="flex-list flex-card-list--list-">
|
||||||
|
<?foreach($items as $item) {?>
|
||||||
|
<div class="flex-list-item">
|
||||||
|
<?
|
||||||
|
echo app()->service()->templater()->get('kit:card/block', $item);
|
||||||
|
?>
|
||||||
|
</div>
|
||||||
|
<?}?>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
+103
-5
@@ -15,7 +15,11 @@ if(\Bitrix\Main\Loader::includeModule('wt.core')) {
|
|||||||
$APPLICATION->ShowHead();
|
$APPLICATION->ShowHead();
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
<script>
|
||||||
|
kit.ready(['popover', 'datepicker'], function () {
|
||||||
|
|
||||||
|
});
|
||||||
|
</script>
|
||||||
<div class="kit-wrapper">
|
<div class="kit-wrapper">
|
||||||
|
|
||||||
<h1 style="text-align: center;">BX.KIT FRONT-END FRAMEWORK</h1>
|
<h1 style="text-align: center;">BX.KIT FRONT-END FRAMEWORK</h1>
|
||||||
@@ -27,6 +31,8 @@ $APPLICATION->ShowHead();
|
|||||||
<h6>Lorem ipsum dolor sit amet, consectetur adipisicing elit</h6>
|
<h6>Lorem ipsum dolor sit amet, consectetur adipisicing elit</h6>
|
||||||
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Blanditiis eos esse excepturi explicabo fugit labore laborum quaerat quasi voluptatibus? A ab earum explicabo labore nobis nostrum optio perspiciatis provident, quam.</p>
|
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Blanditiis eos esse excepturi explicabo fugit labore laborum quaerat quasi voluptatibus? A ab earum explicabo labore nobis nostrum optio perspiciatis provident, quam.</p>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Tooltip</h2>
|
||||||
<div class="flex-line-wrap flex-col-count" style="--flex-col-count: 5">
|
<div class="flex-line-wrap flex-col-count" style="--flex-col-count: 5">
|
||||||
<div class="flex-list-item">
|
<div class="flex-list-item">
|
||||||
<?
|
<?
|
||||||
@@ -34,7 +40,7 @@ $APPLICATION->ShowHead();
|
|||||||
'LABEL' => 'Tooltip on top',
|
'LABEL' => 'Tooltip on top',
|
||||||
'CLASS' => '',
|
'CLASS' => '',
|
||||||
'ATTR' => [
|
'ATTR' => [
|
||||||
'data-toggle' => 'tooltip',
|
'data-bs-toggle' => 'tooltip',
|
||||||
'data-bs-placement' => 'top',
|
'data-bs-placement' => 'top',
|
||||||
'title' => 'Tooltip on top'
|
'title' => 'Tooltip on top'
|
||||||
]
|
]
|
||||||
@@ -47,7 +53,7 @@ $APPLICATION->ShowHead();
|
|||||||
'LABEL' => 'Tooltip on end',
|
'LABEL' => 'Tooltip on end',
|
||||||
'CLASS' => '',
|
'CLASS' => '',
|
||||||
'ATTR' => [
|
'ATTR' => [
|
||||||
'data-toggle' => 'tooltip',
|
'data-bs-toggle' => 'tooltip',
|
||||||
'data-bs-placement' => 'right',
|
'data-bs-placement' => 'right',
|
||||||
'title' => 'Tooltip on end'
|
'title' => 'Tooltip on end'
|
||||||
]
|
]
|
||||||
@@ -60,7 +66,7 @@ $APPLICATION->ShowHead();
|
|||||||
'LABEL' => 'Tooltip on bottom',
|
'LABEL' => 'Tooltip on bottom',
|
||||||
'CLASS' => '',
|
'CLASS' => '',
|
||||||
'ATTR' => [
|
'ATTR' => [
|
||||||
'data-toggle' => 'tooltip',
|
'data-bs-toggle' => 'tooltip',
|
||||||
'data-bs-placement' => 'bottom',
|
'data-bs-placement' => 'bottom',
|
||||||
'title' => 'Tooltip on bottom'
|
'title' => 'Tooltip on bottom'
|
||||||
]
|
]
|
||||||
@@ -73,7 +79,7 @@ $APPLICATION->ShowHead();
|
|||||||
'LABEL' => 'Tooltip on start',
|
'LABEL' => 'Tooltip on start',
|
||||||
'CLASS' => '',
|
'CLASS' => '',
|
||||||
'ATTR' => [
|
'ATTR' => [
|
||||||
'data-toggle' => 'tooltip',
|
'data-bs-toggle' => 'tooltip',
|
||||||
'data-bs-placement' => 'left',
|
'data-bs-placement' => 'left',
|
||||||
'title' => 'Tooltip on start'
|
'title' => 'Tooltip on start'
|
||||||
]
|
]
|
||||||
@@ -86,7 +92,7 @@ $APPLICATION->ShowHead();
|
|||||||
'LABEL' => 'Tooltip with HTML',
|
'LABEL' => 'Tooltip with HTML',
|
||||||
'CLASS' => '',
|
'CLASS' => '',
|
||||||
'ATTR' => [
|
'ATTR' => [
|
||||||
'data-toggle' => 'tooltip',
|
'data-bs-toggle' => 'tooltip',
|
||||||
'data-bs-html' => 'true',
|
'data-bs-html' => 'true',
|
||||||
'title' => '<em>Tooltip</em> <u>with</u> <b>HTML</b>'
|
'title' => '<em>Tooltip</em> <u>with</u> <b>HTML</b>'
|
||||||
]
|
]
|
||||||
@@ -95,6 +101,98 @@ $APPLICATION->ShowHead();
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<h2>Popover</h2>
|
||||||
|
|
||||||
|
<div class="flex-line-wrap flex-col-count" style="--flex-col-count: 5">
|
||||||
|
<div class="flex-list-item">
|
||||||
|
<?
|
||||||
|
service()->templater()->render('kit:button', [
|
||||||
|
'LABEL' => 'Popover on top',
|
||||||
|
'CLASS' => '',
|
||||||
|
'ATTR' => [
|
||||||
|
'data-bs-toggle' => 'popover',
|
||||||
|
'data-bs-placement' => 'top',
|
||||||
|
'data-bs-content' => 'Top popover',
|
||||||
|
'data-bs-container' => 'body',
|
||||||
|
]
|
||||||
|
]);
|
||||||
|
?>
|
||||||
|
</div>
|
||||||
|
<div class="flex-list-item">
|
||||||
|
<?
|
||||||
|
service()->templater()->render('kit:button', [
|
||||||
|
'LABEL' => 'Popover on right',
|
||||||
|
'CLASS' => '',
|
||||||
|
'ATTR' => [
|
||||||
|
'data-bs-toggle' => 'popover',
|
||||||
|
'data-bs-placement' => 'right',
|
||||||
|
'data-bs-content' => 'Right popover',
|
||||||
|
'data-bs-container' => 'body',
|
||||||
|
]
|
||||||
|
]);
|
||||||
|
?>
|
||||||
|
</div>
|
||||||
|
<div class="flex-list-item">
|
||||||
|
<?
|
||||||
|
service()->templater()->render('kit:button', [
|
||||||
|
'LABEL' => 'Popover on bottom',
|
||||||
|
'CLASS' => '',
|
||||||
|
'ATTR' => [
|
||||||
|
'data-bs-toggle' => 'popover',
|
||||||
|
'data-bs-placement' => 'bottom',
|
||||||
|
'data-bs-content' => 'Bottom popover',
|
||||||
|
'data-bs-container' => 'body',
|
||||||
|
]
|
||||||
|
]);
|
||||||
|
?>
|
||||||
|
</div>
|
||||||
|
<div class="flex-list-item">
|
||||||
|
<?
|
||||||
|
service()->templater()->render('kit:button', [
|
||||||
|
'LABEL' => 'Popover on left',
|
||||||
|
'CLASS' => '',
|
||||||
|
'ATTR' => [
|
||||||
|
'data-bs-toggle' => 'popover',
|
||||||
|
'data-bs-placement' => 'left',
|
||||||
|
'data-bs-content' => 'Left popover',
|
||||||
|
'data-bs-container' => 'body',
|
||||||
|
]
|
||||||
|
]);
|
||||||
|
?>
|
||||||
|
</div>
|
||||||
|
<div class="flex-list-item">
|
||||||
|
<?
|
||||||
|
service()->templater()->render('kit:button', [
|
||||||
|
'LABEL' => htmlspecialchars('<HTML> & header'),
|
||||||
|
'CLASS' => '',
|
||||||
|
'ATTR' => [
|
||||||
|
'data-bs-toggle' => 'popover',
|
||||||
|
'data-bs-content' => 'And here\'s some amazing content. It\'s very engaging. <em>Right</em>?',
|
||||||
|
'data-bs-container' => 'body',
|
||||||
|
'data-bs-html' => 'true',
|
||||||
|
'title' => '<em>Tooltip</em> <u>with</u> <b>HTML</b>'
|
||||||
|
]
|
||||||
|
]);
|
||||||
|
?>
|
||||||
|
</div>
|
||||||
|
<div class="flex-list-item">
|
||||||
|
<?
|
||||||
|
service()->templater()->render('kit:button', [
|
||||||
|
'LABEL' => 'trigger focus',
|
||||||
|
'CLASS' => '',
|
||||||
|
'ATTR' => [
|
||||||
|
'data-bs-toggle' => 'popover',
|
||||||
|
'data-bs-content' => 'And here\'s some amazing content. It\'s very engaging. <em>Right</em>?',
|
||||||
|
'data-bs-container' => 'body',
|
||||||
|
'data-bs-html' => 'true',
|
||||||
|
'data-bs-trigger' => 'focus',
|
||||||
|
'title' => '<em>Tooltip</em> <u>with</u> <b>HTML</b>'
|
||||||
|
]
|
||||||
|
]);
|
||||||
|
?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class="d-flex justify-content-between flex-wrap">
|
<div class="d-flex justify-content-between flex-wrap">
|
||||||
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#exampleModalCenteredScrollable">
|
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#exampleModalCenteredScrollable">
|
||||||
|
|||||||
@@ -1,49 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
|
|
||||||
?>
|
|
||||||
|
|
||||||
<div class="flex-card aspect-ratio flex-list-item">
|
|
||||||
<div class="flex-card__section">
|
|
||||||
<div class="flex-card__content">
|
|
||||||
<div class="flex-card__body-shell aspect-ratio">
|
|
||||||
<div class="flex-card__body">
|
|
||||||
<div class="flex-card__picture">
|
|
||||||
<div class="kit-picture" style="background-image: url(<?=$item['image_preview']?>)">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flex-card__title">
|
|
||||||
<div class="kit-line-clamp">
|
|
||||||
<?=$item['name']?>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flex-card__props"></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="flex-card__header">
|
|
||||||
<div class="flex-list flex-list--ticket">
|
|
||||||
<?
|
|
||||||
foreach ($item['tickets'] as $ticket) {
|
|
||||||
?>
|
|
||||||
<div class="flex-list-item">
|
|
||||||
<div class="ticket-item <?=$ticket['code']?>">
|
|
||||||
<div class="kit-line-clamp"><?=$ticket['name']?></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<?
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flex-card__footer"></div>
|
|
||||||
<div class="flex-card__hover">
|
|
||||||
<div class="flex-card__hover-content">
|
|
||||||
<?=$item['hover']?>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flex-card__border"></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@@ -1,65 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<script src="chat.js"></script>
|
|
||||||
<link href="./../../assets/flex-kit/flex-kit.css" rel="stylesheet">
|
|
||||||
<style type="text/css">
|
|
||||||
.section-product-list {
|
|
||||||
--col-count: 4;
|
|
||||||
|
|
||||||
}
|
|
||||||
.section-product-list .flex-card {
|
|
||||||
--kit-color-content: #FFF;
|
|
||||||
--aspect-ratio: calc(200 / 250);
|
|
||||||
}
|
|
||||||
.section-product-list .flex-card__picture {
|
|
||||||
flex-grow: 1;
|
|
||||||
}
|
|
||||||
.flex-card__hover {
|
|
||||||
text-align: center;
|
|
||||||
color: grey;
|
|
||||||
font-size: 0.8em;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
</head>
|
|
||||||
<?
|
|
||||||
|
|
||||||
$items = array_fill(0, 40, [
|
|
||||||
'id' => 1,
|
|
||||||
'name' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit Ab accusamus aliquid, consequuntur corporis ducimus',
|
|
||||||
'hover' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit Ab accusamus aliquid, consequuntur corporis ducimus',
|
|
||||||
'image_preview' => './product.svg',
|
|
||||||
'image_detail' => '',
|
|
||||||
'text_preview' => 'asdas asdas dasdasd',
|
|
||||||
'tickets' => [
|
|
||||||
[
|
|
||||||
'code' => 'news',
|
|
||||||
'name' => 'Новинка'
|
|
||||||
],
|
|
||||||
[
|
|
||||||
'code' => 'discount',
|
|
||||||
'name' => 'Скидка'
|
|
||||||
]
|
|
||||||
]
|
|
||||||
]);
|
|
||||||
|
|
||||||
?>
|
|
||||||
<body>
|
|
||||||
<div class="kit-wrapper">
|
|
||||||
<section class="section-product-list">
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<h1>Каталог</h1>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="flex-list flex-card-list--list-">
|
|
||||||
<?foreach($items as $item) {?>
|
|
||||||
<?
|
|
||||||
include "product-list-item.php";
|
|
||||||
?>
|
|
||||||
<?}?>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 6.7 KiB |
Reference in New Issue
Block a user