griffincss-utils 0.28.0 → 0.28.2

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.
@@ -1,3 +1,3 @@
1
1
  /*! Griffincss Utils | MIT | https://gitverse.ru/BarneyScott/GriffinCSS */
2
- (()=>{"use strict";var r=(()=>{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 e(e){if(-1!==e.indexOf("[")){var t=b(e);return t?t.value:null}for(var n in r)if(Object.prototype.hasOwnProperty.call(r,n)&&0===e.indexOf(n)){var i=e.slice(n.length),a=r[n];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 t="griffincss.utils",n="gr-radius",i=/^gr-r-[0-9a-z]+$/,a=null,l={};function s(r){Object.prototype.hasOwnProperty.call(l,r)||(l[r]=!0,"undefined"!=typeof console&&console.warn&&console.warn("Griffincss: "+r))}function u(){var r="undefined"!=typeof window?window.Griffincss:null;return r&&"function"==typeof r._emit?r:(s("the radius cascade needs griffincss.js: include the core"),null)}function o(){if(a)return a;var r=u();return r&&"function"==typeof r._scanner?a=r._scanner({delay:16,hasWork:A,handleAdded:_,flush:r._flush,refresh:L}):null}function d(r,t,n){var i,a=r.style?r.style.getPropertyValue(t).trim():"",l=null;for(i=0;i<r.classList.length;i++){var u=r.classList.item(i),o=e(u);null!==o&&0===u.indexOf(n)&&(l=o)}return a&&l&&a!==l&&s(t+" is set both by a class ("+l+") and in style ("+a+"); the values differ"),a||l||null}function f(r,e){return r?e?"max(0px,calc("+r+" - "+e+"))":r:null}function g(r,e){return!(!r.classList||!r.classList.contains(e))}function c(r){var e=u();if(!e)return!1;var a=d(r,"--gr-r","gr-radius-");d(r,"--gr-p","gr-p-");var l,s=a?null:(r=>{var e=(r=>{for(var e,t=[],i=r,a=null;i&&i.classList;)g(i,n)&&t.push(i),i=i.parentNode;for(e=t.length-1;e>=0;e--)a={radius:d(t[e],"--gr-r","gr-radius-")||(a?f(a.radius,a.gap):null),gap:d(t[e],"--gr-p","gr-p-")};return a})(r.parentNode);return e?f(e.radius,e.gap):null})(r),o=s?"gr-r-"+e._hash(s):null;for(l=r.classList.length-1;l>=0;l--){var c=r.classList.item(l);i.test(c)&&c!==o&&r.classList.remove(c)}if(!o)return!1;var p=e._emit(t,s,"."+o+"{--gr-r:"+s+"}");return r.classList.add(o),p}function p(r){var e,t=(r||document).querySelectorAll("."+n),i=!1;for(e=0;e<t.length;e++)c(t[e])&&(i=!0);return i}var v={"gr-m-":"margin:{}","gr-mt-":"margin-top:{}","gr-mb-":"margin-bottom:{}","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-pb-":"padding-bottom:{}","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-bottom-":"bottom:{}","gr-start-":"inset-inline-start:{}","gr-end-":"inset-inline-end:{}","gr-inset-":"inset:{}","gr-z-":"z-index:{}"},m=48,h=/[{};"'\\]|\/\*|\s/,y='[class*="["]';function b(r){var e=r.indexOf("[");if(-1===e||"]"!==r.charAt(r.length-1))return null;var t=r.slice(e+1,r.length-1);if(""===t||t.length>m||h.test(t))return s("arbitrary value in ."+r+" rejected"),null;var n=(r=>{var e,t=null;for(e in v)Object.prototype.hasOwnProperty.call(v,e)&&0===r.indexOf(e)&&(!t||e.length>t.length)&&(t=e);return t})(r.slice(0,e));return n?{prefix:n,value:t}:(s("arbitrary value ."+r+": unknown property"),null)}function w(r){var e=b(r);return e?"."+(r=>r.replace(/[^\w-]/g,r=>"\\"+r))(r)+"{"+v[e.prefix].split("{}").join(e.value)+"}":null}function x(r){var e,n=u(),i=!1;if(!n||!r.classList)return!1;for(e=0;e<r.classList.length;e++){var a=r.classList.item(e);if(-1!==a.indexOf("[")){var l=w(a);l&&n._emit(t,a,l)&&(i=!0)}}return i}function O(r){var e,t=(r=r||document).querySelectorAll(y),n=x(r);for(e=0;e<t.length;e++)x(t[e])&&(n=!0);return n}function L(r){var e=u();if(e){var t=O(r);p(r)&&(t=!0),t&&e._flush()}}function _(r){var e,t,i=!1;for(e=0;e<r.length;e++){var a=r[e];if(a&&1===a.nodeType&&(x(a)&&(i=!0),g(a,n)&&c(a)&&(i=!0),a.querySelectorAll)){var l=a.querySelectorAll(y);for(t=0;t<l.length;t++)x(l[t])&&(i=!0);var s=a.querySelectorAll("."+n);for(t=0;t<s.length;t++)c(s[t])&&(i=!0)}}return i}function A(r){var e;for(e=0;e<r.length;e++){var t,i=r[e].addedNodes;for(t=0;t<i.length;t++){var a=i[t];if(a&&1===a.nodeType){if(g(a,n))return!0;if(a.className&&-1!==a.className.indexOf("["))return!0;if(a.querySelectorAll){if(a.querySelectorAll("."+n).length>0)return!0;if(a.querySelectorAll(y).length>0)return!0}}}}return!1}function S(r){var e=o();e&&e.observe(r)}return{radiusCascade:r=>{var e=u();e&&p(r)&&e._flush()},arbitrary:r=>{var e=u();e&&O(r)&&e._flush()},observe:S,stop:()=>{a&&a.stop()},classValue:e,version:"0.28.0",_rules:r,_props:v,_autoStart:()=>{var r,e=!0,t=!0,n=!0;try{var i=document.currentScript;i&&"SCRIPT"===i.tagName&&("false"===i.getAttribute("data-auto")&&(e=!1),"false"===i.getAttribute("data-stream")&&(t=!1),"false"===i.getAttribute("data-observe")&&(n=!1))}catch(r){}function l(){a&&a.stopParseObserver(),L(document),n&&S(document.body)}e&&("loading"===document.readyState?(t&&(r=o())&&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())})();
2
+ (()=>{"use strict";var r=(()=>{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 e(e){if(-1!==e.indexOf("[")){var t=x(e);return t?t.value:null}for(var n in r)if(Object.prototype.hasOwnProperty.call(r,n)&&0===e.indexOf(n)){var i=e.slice(n.length),a=r[n];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 t="griffincss.utils",n="gr-radius",i=/^gr-r-[0-9a-z]+$/,a=null,l={};function s(r){Object.prototype.hasOwnProperty.call(l,r)||(l[r]=!0,"undefined"!=typeof console&&console.warn&&console.warn("Griffincss: "+r))}function u(){var r="undefined"!=typeof window?window.Griffincss:null;return r&&"function"==typeof r._emit?r:(s("the radius cascade needs griffincss.js: include the core"),null)}function o(){if(a)return a;var r=u();return r&&"function"==typeof r._scanner?a=r._scanner({delay:16,hasWork:j,handleAdded:S,flush:r._flush,refresh:_}):null}function d(r,t,n){var i,a=r.style?r.style.getPropertyValue(t).trim():"",l=null;for(a&&(a.length>m||!b(a))&&(s(t+" in style rejected: "+a.slice(0,h)),a=""),i=0;i<r.classList.length;i++){var u=r.classList.item(i),o=e(u);null!==o&&0===u.indexOf(n)&&(l=o)}return a&&l&&a!==l&&s(t+" is set both by a class ("+l+") and in style ("+a+"); the values differ"),a||l||null}function f(r,e){return r?e?"max(0px,calc("+r+" - "+e+"))":r:null}function g(r,e){return!(!r.classList||!r.classList.contains(e))}function c(r){var e=u();if(!e)return!1;var a=d(r,"--gr-r","gr-radius-");d(r,"--gr-p","gr-p-");var l,s=a?null:(r=>{var e=(r=>{for(var e,t=[],i=r,a=null;i&&i.classList;)g(i,n)&&t.push(i),i=i.parentNode;for(e=t.length-1;e>=0;e--)a={radius:d(t[e],"--gr-r","gr-radius-")||(a?f(a.radius,a.gap):null),gap:d(t[e],"--gr-p","gr-p-")};return a})(r.parentNode);return e?f(e.radius,e.gap):null})(r),o=s?"gr-r-"+e._hash(s):null;for(l=r.classList.length-1;l>=0;l--){var c=r.classList.item(l);i.test(c)&&c!==o&&r.classList.remove(c)}if(!o)return!1;var p=e._emit(t,s,"."+o+"{--gr-r:"+s+"}");return r.classList.add(o),p}function p(r){var e,t=(r||document).querySelectorAll("."+n),i=!1;for(e=0;e<t.length;e++)c(t[e])&&(i=!0);return i}var v={"gr-m-":"margin:{}","gr-mt-":"margin-top:{}","gr-mb-":"margin-bottom:{}","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-pb-":"padding-bottom:{}","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-bottom-":"bottom:{}","gr-start-":"inset-inline-start:{}","gr-end-":"inset-inline-end:{}","gr-inset-":"inset:{}","gr-z-":"z-index:{}"},h=48,m=128,y=/[{};"'\\[\]]|\/\*/;function b(r){for(var e=0,t=0;t<r.length&&e>=0;t++)"("===r.charAt(t)?e++:")"===r.charAt(t)&&e--;return!e&&!y.test(r)}var w='[class*="["]';function x(r){var e=r.indexOf("[");if(-1===e||"]"!==r.charAt(r.length-1))return null;var t=r.slice(e+1,r.length-1);if(""===t||t.length>h||/\s/.test(t)||!b(t))return s("arbitrary value in ."+r+" rejected"),null;var n=(r=>{var e,t=null;for(e in v)Object.prototype.hasOwnProperty.call(v,e)&&0===r.indexOf(e)&&(!t||e.length>t.length)&&(t=e);return t})(r.slice(0,e));return n?{prefix:n,value:t}:(s("arbitrary value ."+r+": unknown property"),null)}function O(r){var e=x(r);return e?"."+(r=>r.replace(/[^\w-]/g,r=>"\\"+r))(r)+"{"+v[e.prefix].split("{}").join(e.value)+"}":null}function A(r){var e,n=u(),i=!1;if(!n||!r.classList)return!1;for(e=0;e<r.classList.length;e++){var a=r.classList.item(e);if(-1!==a.indexOf("[")){var l=O(a);l&&n._emit(t,a,l)&&(i=!0)}}return i}function L(r){var e,t=(r=r||document).querySelectorAll(w),n=A(r);for(e=0;e<t.length;e++)A(t[e])&&(n=!0);return n}function _(r){var e=u();if(e){var t=L(r);p(r)&&(t=!0),t&&e._flush()}}function S(r){var e,t,i=!1;for(e=0;e<r.length;e++){var a=r[e];if(a&&1===a.nodeType&&(A(a)&&(i=!0),g(a,n)&&c(a)&&(i=!0),a.querySelectorAll)){var l=a.querySelectorAll(w);for(t=0;t<l.length;t++)A(l[t])&&(i=!0);var s=a.querySelectorAll("."+n);for(t=0;t<s.length;t++)c(s[t])&&(i=!0)}}return i}function j(r){var e;for(e=0;e<r.length;e++){var t,i=r[e].addedNodes;for(t=0;t<i.length;t++){var a=i[t];if(a&&1===a.nodeType){if(g(a,n))return!0;if(a.className&&-1!==a.className.indexOf("["))return!0;if(a.querySelectorAll){if(a.querySelectorAll("."+n).length>0)return!0;if(a.querySelectorAll(w).length>0)return!0}}}}return!1}function N(r){var e=o();e&&e.observe(r)}return{radiusCascade:r=>{var e=u();e&&p(r)&&e._flush()},arbitrary:r=>{var e=u();e&&L(r)&&e._flush()},observe:N,stop:()=>{a&&a.stop()},classValue:e,version:"0.28.2",_rules:r,_props:v,_autoStart:()=>{var r,e=!0,t=!0,n=!0;try{var i=document.currentScript;i&&"SCRIPT"===i.tagName&&("false"===i.getAttribute("data-auto")&&(e=!1),"false"===i.getAttribute("data-stream")&&(t=!1),"false"===i.getAttribute("data-observe")&&(n=!1))}catch(r){}function l(){a&&a.stopParseObserver(),_(document),n&&N(document.body)}e&&("loading"===document.readyState?(t&&(r=o())&&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","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","tagName","getAttribute","e","settle","stopParseObserver","body","readyState","observeParsing","addEventListener","factory","module","exports","utils"],"sources":["src/griffincss-utils.js"],"mappings":"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","ignoreList":[]}
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","MAX_STYLE_LENGTH","safeValue","MAX_VALUE_LENGTH","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","BAD_VALUE","depth","charAt","ARBITRARY_SELECTOR","open","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","tagName","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.28.0",
3
+ "version": "0.28.2",
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.28.0"
34
+ "griffincss-core": "^0.28.2"
35
35
  },
36
36
  "keywords": [
37
37
  "css",
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Griffincss Utils — Runtime v0.28.0
2
+ * Griffincss Utils — Runtime v0.28.2
3
3
  * Достраивает то, чего статический CSS выразить не может.
4
4
  * Пишется руками и не компилируется — правится этот файл.
5
5
  */
@@ -23,7 +23,7 @@
23
23
  })(function () {
24
24
  'use strict';
25
25
 
26
- var VERSION = '0.28.0';
26
+ var VERSION = '0.28.2';
27
27
 
28
28
  // Таблица правил выводится из SCSS-карт скриптом scripts/sync-rule-table.mjs.
29
29
  // Правьте карты в SCSS, а не этот блок: npm run sync -- --fix перепишет его.
@@ -131,12 +131,21 @@
131
131
  }
132
132
 
133
133
  // Объявленное значение переменной: инлайн сильнее класса. Оба чтения —
134
- // разбор атрибута: раскладка не трогается.
134
+ // разбор атрибута: раскладка не трогается. Значение из style уходит
135
+ // в текст правила, как и значение класса, и проверяется так же: иначе
136
+ // строку или комментарий одного контейнера закрыла бы кавычка другого,
137
+ // а остаток стал бы правилами с любыми селекторами для всей страницы.
135
138
  function declared(el, prop, prefix) {
136
139
  var inline = el.style ? el.style.getPropertyValue(prop).trim() : '';
137
140
  var fromClass = null;
138
141
  var i;
139
142
 
143
+ // В предупреждение — только начало: значение может быть любой длины.
144
+ if (inline && (inline.length > MAX_STYLE_LENGTH || !safeValue(inline))) {
145
+ warn(prop + ' in style rejected: ' + inline.slice(0, MAX_VALUE_LENGTH));
146
+ inline = '';
147
+ }
148
+
140
149
  for (i = 0; i < el.classList.length; i++) {
141
150
  var cls = el.classList.item(i);
142
151
  var value = classValue(cls);
@@ -319,13 +328,34 @@
319
328
  };
320
329
 
321
330
  // Содержимое скобок — ввод из разметки, и проверяется он так же, как
322
- // строка раскладки в ядре: длина и запрет на то, чем правило можно
323
- // закрыть досрочно. Кавычка открыла бы строку, а обратная косая —
324
- // экранирование, и они поглотили бы все следующие правила общего листа.
325
- // Пробела в имени класса не бывает по определению, но проверяется и он:
326
- // classValue вызывают и напрямую.
331
+ // строка раскладки в ядре: длина и одно правило — значение не может
332
+ // изменить вложенность блоков общего листа. Кавычка открыла бы строку,
333
+ // обратная косая — экранирование, «/*» — комментарий, непарная «(»
334
+ // (функция, url() без «)») или «[» — блок; любой из них поглотил бы «}»
335
+ // и все следующие правила листа. Квадратные скобки не нужны ни одному
336
+ // свойству таблицы, круглые — только парные. Ту же проверку проходит
337
+ // значение из style в каскаде скруглений. Пробел законен в style,
338
+ // а в имени класса его не бывает — проверяется отдельно: classValue
339
+ // вызывают и напрямую. Длина ограничена до разбора: классу — 48 знаков,
340
+ // значению из style — 128 (выражению с var() и пробелами 48 мало,
341
+ // а килобайты радиусу и зазору не нужны).
327
342
  var MAX_VALUE_LENGTH = 48;
328
- var BAD_VALUE = /[{};"'\\]|\/\*|\s/;
343
+ var MAX_STYLE_LENGTH = 128;
344
+ var BAD_VALUE = /[{};"'\\[\]]|\/\*/;
345
+
346
+ // Скобки — счётчиком за один проход: в минус он не уходит, в конце — ноль.
347
+ // Проверка линейна при любой длине: значение из style сверяется у каждого
348
+ // предка каждого контейнера, и квадратичный разбор занимал поток на секунды.
349
+ function safeValue(value) {
350
+ var depth = 0;
351
+
352
+ for (var i = 0; i < value.length && depth >= 0; i++) {
353
+ if (value.charAt(i) === '(') depth++;
354
+ else if (value.charAt(i) === ')') depth--;
355
+ }
356
+
357
+ return !depth && !BAD_VALUE.test(value);
358
+ }
329
359
 
330
360
  // Элементы с произвольным значением: скобка в имени класса.
331
361
  var ARBITRARY_SELECTOR = '[class*="["]';
@@ -355,7 +385,7 @@
355
385
 
356
386
  var value = cls.slice(open + 1, cls.length - 1);
357
387
 
358
- if (value === '' || value.length > MAX_VALUE_LENGTH || BAD_VALUE.test(value)) {
388
+ if (value === '' || value.length > MAX_VALUE_LENGTH || /\s/.test(value) || !safeValue(value)) {
359
389
  warn('arbitrary value in .' + cls + ' rejected');
360
390
 
361
391
  return null;