griffincss-utils 0.16.0 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/griffincss-utils.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*! Griffincss Utils | MIT | https://gitverse.ru/BarneyScott/GriffinCSS */
|
|
2
|
-
!function(){"use strict";var r=function(){var r={"gr-radius-":{base:.25,unit:"rem",steps:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],literal:{full:"9999px"}},"gr-p-":{base:.25,unit:"rem",steps:[0,1,2,3,4,5,6,7,8,10,12,16]}};function t(t){if(-1!==t.indexOf("[")){var
|
|
2
|
+
!function(){"use strict";var r=function(){var r={"gr-radius-":{base:.25,unit:"rem",steps:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],literal:{full:"9999px"}},"gr-p-":{base:.25,unit:"rem",steps:[0,1,2,3,4,5,6,7,8,10,12,16]}};function t(t){if(-1!==t.indexOf("[")){var n=b(t);return n?n.value:null}for(var e in r)if(Object.prototype.hasOwnProperty.call(r,e)&&0===t.indexOf(e)){var i=t.slice(e.length),a=r[e];if(a.literal&&Object.prototype.hasOwnProperty.call(a.literal,i))return a.literal[i];var l=Number(i);if(""!==i&&!isNaN(l)&&-1!==a.steps.indexOf(l))return l*a.base+a.unit}return null}var n="griffincss.utils",e="gr-radius",i=/^gr-r-[0-9a-z]+$/,a=null,l={};function u(r){Object.prototype.hasOwnProperty.call(l,r)||(l[r]=!0,"undefined"!=typeof console&&console.warn&&console.warn("Griffincss: "+r))}function o(){var r="undefined"!=typeof window?window.Griffincss:null;return r&&"function"==typeof r._emit?r:(u("каскад скруглений требует griffincss.js — подключите ядро"),null)}function s(){if(a)return a;var r=o();return r&&"function"==typeof r._scanner?a=r._scanner({delay:16,hasWork:A,handleAdded:_,flush:r._flush,refresh:L}):null}function f(r,n,e){var i,a=r.style?r.style.getPropertyValue(n).trim():"",l=null;for(i=0;i<r.classList.length;i++){var o=r.classList.item(i),s=t(o);null!==s&&0===o.indexOf(e)&&(l=s)}return a&&l&&a!==l&&u(n+" задан и классом ("+l+"), и в style ("+a+") — значения расходятся"),a||l||null}function g(r,t){return r?t?"max(0px,calc("+r+" - "+t+"))":r:null}function c(r,t){return!(!r.classList||!r.classList.contains(t))}function d(r){var t=o();if(!t)return!1;var a=f(r,"--gr-r","gr-radius-");f(r,"--gr-p","gr-p-");var l,u=a?null:function(r){var t=function(r){for(var t,n=[],i=r,a=null;i&&i.classList;)c(i,e)&&n.push(i),i=i.parentNode;for(t=n.length-1;t>=0;t--)a={radius:f(n[t],"--gr-r","gr-radius-")||(a?g(a.radius,a.gap):null),gap:f(n[t],"--gr-p","gr-p-")};return a}(r.parentNode);return t?g(t.radius,t.gap):null}(r),s=u?"gr-r-"+t._hash(u):null;for(l=r.classList.length-1;l>=0;l--){var d=r.classList.item(l);i.test(d)&&d!==s&&r.classList.remove(d)}if(!s)return!1;var p=t._emit(n,u,"."+s+"{--gr-r:"+u+"}");return r.classList.add(s),p}function p(r){var t,n=(r||document).querySelectorAll("."+e),i=!1;for(t=0;t<n.length;t++)d(n[t])&&(i=!0);return i}var m={"gr-m-":"margin:{}","gr-mt-":"margin-top:{}","gr-mr-":"margin-right:{}","gr-mb-":"margin-bottom:{}","gr-ml-":"margin-left:{}","gr-ms-":"margin-inline-start:{}","gr-me-":"margin-inline-end:{}","gr-mx-":"margin-inline:{}","gr-my-":"margin-top:{};margin-bottom:{}","gr-p-":"--gr-p:{};padding:var(--gr-p)","gr-pt-":"padding-top:{}","gr-pr-":"padding-right:{}","gr-pb-":"padding-bottom:{}","gr-pl-":"padding-left:{}","gr-ps-":"padding-inline-start:{}","gr-pe-":"padding-inline-end:{}","gr-px-":"padding-inline:{}","gr-py-":"padding-top:{};padding-bottom:{}","gr-radius-":"--gr-r:{};border-radius:{}","gr-gap-":"gap:{}","gr-w-":"width:{}","gr-h-":"height:{}","gr-min-w-":"min-width:{}","gr-max-w-":"max-width:{}","gr-min-h-":"min-height:{}","gr-max-h-":"max-height:{}","gr-top-":"top:{}","gr-right-":"right:{}","gr-bottom-":"bottom:{}","gr-left-":"left:{}","gr-inset-":"inset:{}","gr-z-":"z-index:{}"},v=48,h=/[{};]|\/\*|\s/,y='[class*="["]';function b(r){var t=r.indexOf("[");if(-1===t||"]"!==r.charAt(r.length-1))return null;var n=r.slice(t+1,r.length-1);if(""===n||n.length>v||h.test(n))return u("произвольное значение в ."+r+" отклонено"),null;var e=function(r){var t,n=null;for(t in m)Object.prototype.hasOwnProperty.call(m,t)&&0===r.indexOf(t)&&(!n||t.length>n.length)&&(n=t);return n}(r.slice(0,t));return e?{prefix:e,value:n}:(u("произвольное значение ."+r+" — свойство неизвестно"),null)}function w(r){var t=b(r);return t?"."+function(r){return r.replace(/[^\w-]/g,function(r){return"\\"+r})}(r)+"{"+m[t.prefix].split("{}").join(t.value)+"}":null}function x(r){var t,e=o(),i=!1;if(!e||!r.classList)return!1;for(t=0;t<r.classList.length;t++){var a=r.classList.item(t);if(-1!==a.indexOf("[")){var l=w(a);l&&e._emit(n,a,l)&&(i=!0)}}return i}function O(r){var t,n=(r=r||document).querySelectorAll(y),e=x(r);for(t=0;t<n.length;t++)x(n[t])&&(e=!0);return e}function L(r){var t=o();if(t){var n=O(r);p(r)&&(n=!0),n&&t._flush()}}function _(r){var t,n,i=!1;for(t=0;t<r.length;t++){var a=r[t];if(a&&1===a.nodeType&&(x(a)&&(i=!0),c(a,e)&&d(a)&&(i=!0),a.querySelectorAll)){var l=a.querySelectorAll(y);for(n=0;n<l.length;n++)x(l[n])&&(i=!0);var u=a.querySelectorAll("."+e);for(n=0;n<u.length;n++)d(u[n])&&(i=!0)}}return i}function A(r){var t;for(t=0;t<r.length;t++){var n,i=r[t].addedNodes;for(n=0;n<i.length;n++){var a=i[n];if(a&&1===a.nodeType){if(c(a,e))return!0;if(a.className&&-1!==a.className.indexOf("["))return!0;if(a.querySelectorAll){if(a.querySelectorAll("."+e).length>0)return!0;if(a.querySelectorAll(y).length>0)return!0}}}}return!1}function S(r){var t=s();t&&t.observe(r)}return{radiusCascade:function(r){var t=o();t&&p(r)&&t._flush()},arbitrary:function(r){var t=o();t&&O(r)&&t._flush()},observe:S,stop:function(){a&&a.stop()},classValue:t,version:"0.17.0",_rules:r,_props:m,_autoStart:function(){var r,t=!0,n=!0,e=!0;try{var i=document.currentScript;i&&("false"===i.getAttribute("data-auto")&&(t=!1),"false"===i.getAttribute("data-stream")&&(n=!1),"false"===i.getAttribute("data-observe")&&(e=!1))}catch(r){}function l(){a&&a.stopParseObserver(),L(document),e&&S(document.body)}t&&("loading"===document.readyState?(n&&(r=s())&&r.observeParsing(),document.addEventListener("DOMContentLoaded",l)):l())}}}();"object"==typeof module&&module.exports&&(module.exports=r),"undefined"!=typeof window&&"undefined"!=typeof document&&(window.Griffincss||(window.Griffincss={}),window.Griffincss.utils=r,r._autoStart())}();
|
|
3
3
|
//# sourceMappingURL=griffincss-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["api","RULES","base","unit","steps","literal","full","classValue","cls","indexOf","custom","arbitraryOf","value","prefix","Object","prototype","hasOwnProperty","call","rest","slice","length","rule","step","Number","isNaN","LAYER","CONTAINER","DERIVED","
|
|
1
|
+
{"version":3,"names":["api","RULES","base","unit","steps","literal","full","classValue","cls","indexOf","custom","arbitraryOf","value","prefix","Object","prototype","hasOwnProperty","call","rest","slice","length","rule","step","Number","isNaN","LAYER","CONTAINER","DERIVED","scanner","warned","warn","message","console","core","G","window","Griffincss","_emit","scannerOf","_scanner","delay","hasWork","handleAdded","flush","_flush","refresh","sweep","declared","el","prop","i","inline","style","getPropertyValue","trim","fromClass","classList","item","childRadius","radius","gap","hasClass","node","name","contains","apply","own","expr","above","chain","cur","level","push","parentNode","levelOf","derivedRadius","_hash","existing","test","remove","fresh","add","scanRadius","root","containers","document","querySelectorAll","dirty","PROPS","MAX_VALUE_LENGTH","BAD_VALUE","ARBITRARY_SELECTOR","open","charAt","best","propFor","arbitraryRule","parsed","replace","ch","escapeClass","split","join","applyArbitrary","scanArbitrary","nodes","j","nodeType","inner","mutations","addedNodes","className","observe","s","radiusCascade","arbitrary","stop","version","_rules","_props","_autoStart","auto","streaming","watching","script","currentScript","getAttribute","e","settle","stopParseObserver","body","readyState","observeParsing","addEventListener","factory","module","exports","utils"],"sources":["src/griffincss-utils.js"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "griffincss-utils",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.17.0",
|
|
4
4
|
"description": "Griffincss Utils — утилитарные классы: отступы, типографика, цвета, видимость, скругления",
|
|
5
5
|
"homepage": "https://gitverse.ru/BarneyScott/GriffinCSS",
|
|
6
6
|
"repository": {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"src/"
|
|
32
32
|
],
|
|
33
33
|
"peerDependencies": {
|
|
34
|
-
"griffincss-core": "^0.
|
|
34
|
+
"griffincss-core": "^0.17.0"
|
|
35
35
|
},
|
|
36
36
|
"keywords": [
|
|
37
37
|
"css",
|
package/src/griffincss-utils.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Griffincss Utils — Runtime v0.
|
|
2
|
+
* Griffincss Utils — Runtime v0.17.0
|
|
3
3
|
* Достраивает то, чего статический CSS выразить не может.
|
|
4
4
|
* Пишется руками и не компилируется — правится этот файл.
|
|
5
5
|
*/
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
})(function () {
|
|
24
24
|
'use strict';
|
|
25
25
|
|
|
26
|
-
var VERSION = '0.
|
|
26
|
+
var VERSION = '0.17.0';
|
|
27
27
|
|
|
28
28
|
// Таблица правил выводится из SCSS-карт скриптом scripts/sync-rule-table.mjs.
|
|
29
29
|
// Правьте карты в SCSS, а не этот блок: npm run sync -- --fix перепишет его.
|
|
@@ -84,8 +84,7 @@
|
|
|
84
84
|
// Пауза перед пересчётом после мутаций DOM — как в ядре.
|
|
85
85
|
var REFRESH_DELAY = 16;
|
|
86
86
|
|
|
87
|
-
var
|
|
88
|
-
var parseObserver = null; // наблюдатель парсинга: живёт до DOMContentLoaded
|
|
87
|
+
var scanner = null; // экземпляр фабрики ядра, заводится лениво
|
|
89
88
|
var warned = {}; // текст предупреждения → уже сказано
|
|
90
89
|
|
|
91
90
|
// Одно и то же предупреждение говорится один раз: проход повторяется
|
|
@@ -110,6 +109,27 @@
|
|
|
110
109
|
return null;
|
|
111
110
|
}
|
|
112
111
|
|
|
112
|
+
// Машинерия наблюдения берётся у ядра той же фабрикой, которой
|
|
113
|
+
// пользуется оно само: своей копии тех же ста строк у утилит нет.
|
|
114
|
+
// Экземпляр заводится лениво — по той же причине, что и core().
|
|
115
|
+
function scannerOf() {
|
|
116
|
+
if (scanner) return scanner;
|
|
117
|
+
|
|
118
|
+
var G = core();
|
|
119
|
+
|
|
120
|
+
if (!G || typeof G._scanner !== 'function') return null;
|
|
121
|
+
|
|
122
|
+
scanner = G._scanner({
|
|
123
|
+
delay: REFRESH_DELAY,
|
|
124
|
+
hasWork: hasWork,
|
|
125
|
+
handleAdded: handleAdded,
|
|
126
|
+
flush: G._flush,
|
|
127
|
+
refresh: sweep
|
|
128
|
+
});
|
|
129
|
+
|
|
130
|
+
return scanner;
|
|
131
|
+
}
|
|
132
|
+
|
|
113
133
|
// Объявленное значение переменной: инлайн сильнее класса. Оба чтения —
|
|
114
134
|
// разбор атрибута: раскладка не трогается.
|
|
115
135
|
function declared(el, prop, prefix) {
|
|
@@ -481,78 +501,32 @@
|
|
|
481
501
|
}
|
|
482
502
|
|
|
483
503
|
// Наблюдение за парсингом документа: контейнеры получают радиус по мере
|
|
484
|
-
// появления, а не разом на DOMContentLoaded.
|
|
485
|
-
//
|
|
504
|
+
// появления, а не разом на DOMContentLoaded. Без ядра наблюдение не
|
|
505
|
+
// заводится вовсе: обрабатывать поток всё равно нечем, а финальный
|
|
506
|
+
// sweep() на DOMContentLoaded достроит всё, когда ядро появится.
|
|
486
507
|
function observeParsing() {
|
|
487
|
-
|
|
508
|
+
var s = scannerOf();
|
|
488
509
|
|
|
489
|
-
|
|
490
|
-
var dirty = false;
|
|
491
|
-
var i;
|
|
492
|
-
|
|
493
|
-
for (i = 0; i < mutations.length; i++) {
|
|
494
|
-
if (handleAdded(mutations[i].addedNodes)) dirty = true;
|
|
495
|
-
}
|
|
496
|
-
|
|
497
|
-
// Флаш один на порцию, а не на элемент: таблица переписывается целиком.
|
|
498
|
-
if (dirty) core()._flush();
|
|
499
|
-
});
|
|
500
|
-
|
|
501
|
-
parseObserver.observe(document.documentElement, { childList: true, subtree: true });
|
|
510
|
+
if (s) s.observeParsing();
|
|
502
511
|
}
|
|
503
512
|
|
|
504
513
|
function stopParseObserver() {
|
|
505
|
-
if (
|
|
506
|
-
|
|
507
|
-
parseObserver.disconnect();
|
|
508
|
-
parseObserver = null;
|
|
514
|
+
if (scanner) scanner.stopParseObserver();
|
|
509
515
|
}
|
|
510
516
|
|
|
511
517
|
// Наблюдение за живым поддеревом: пересчёт с дебаунсом и только по
|
|
512
518
|
// этому корню. Пока страница разбирается, работает поток, дальше —
|
|
513
519
|
// этот наблюдатель.
|
|
514
520
|
function observe(root) {
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
root = root || document.body;
|
|
521
|
+
var s = scannerOf();
|
|
518
522
|
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
for (i = 0; i < observers.length; i++) {
|
|
522
|
-
if (observers[i].root === root) return;
|
|
523
|
-
}
|
|
524
|
-
|
|
525
|
-
var entry = { root: root, observer: null, timer: null };
|
|
526
|
-
|
|
527
|
-
entry.observer = new MutationObserver(function (mutations) {
|
|
528
|
-
if (!hasWork(mutations)) return;
|
|
529
|
-
|
|
530
|
-
if (entry.timer) clearTimeout(entry.timer);
|
|
531
|
-
|
|
532
|
-
entry.timer = setTimeout(function () {
|
|
533
|
-
entry.timer = null;
|
|
534
|
-
sweep(entry.root);
|
|
535
|
-
}, REFRESH_DELAY);
|
|
536
|
-
});
|
|
537
|
-
|
|
538
|
-
entry.observer.observe(root, { childList: true, subtree: true });
|
|
539
|
-
observers.push(entry);
|
|
523
|
+
if (s) s.observe(root);
|
|
540
524
|
}
|
|
541
525
|
|
|
542
526
|
// Снять всё наблюдение. Выданные классы и правила остаются: они
|
|
543
527
|
// описывают текущее дерево и снимаются только сменой разметки.
|
|
544
528
|
function stop() {
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
stopParseObserver();
|
|
548
|
-
|
|
549
|
-
for (i = 0; i < observers.length; i++) {
|
|
550
|
-
if (observers[i].timer) clearTimeout(observers[i].timer);
|
|
551
|
-
|
|
552
|
-
observers[i].observer.disconnect();
|
|
553
|
-
}
|
|
554
|
-
|
|
555
|
-
observers = [];
|
|
529
|
+
if (scanner) scanner.stop();
|
|
556
530
|
}
|
|
557
531
|
|
|
558
532
|
// Автостарт: только в браузере.
|