vision-accessibility 1.0.1 → 1.0.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.
package/dist/index.esm.js CHANGED
@@ -1156,30 +1156,30 @@ const ImageControl = ({
1156
1156
  ] })
1157
1157
  ] });
1158
1158
  };
1159
- const stickyContainer = "_stickyContainer_lzoik_9";
1160
- const panel = "_panel_lzoik_23";
1161
- const topRight = "_top-right_lzoik_38";
1162
- const topLeft = "_top-left_lzoik_42";
1163
- const bottomRight = "_bottom-right_lzoik_46";
1164
- const bottomLeft = "_bottom-left_lzoik_54";
1165
- const header = "_header_lzoik_75";
1166
- const title = "_title_lzoik_84";
1167
- const closeButton = "_closeButton_lzoik_92";
1168
- const description = "_description_lzoik_123";
1169
- const content = "_content_lzoik_131";
1170
- const controls = "_controls_lzoik_151";
1171
- const highContrastMode = "_highContrastMode_lzoik_157";
1172
- const slideIn = "_slideIn_lzoik_1";
1159
+ const stickyContainer = "_stickyContainer_18ltw_9";
1160
+ const panel = "_panel_18ltw_21";
1161
+ const topRight = "_top-right_18ltw_36";
1162
+ const topLeft = "_top-left_18ltw_40";
1163
+ const bottomRight = "_bottom-right_18ltw_44";
1164
+ const bottomLeft = "_bottom-left_18ltw_52";
1165
+ const header = "_header_18ltw_73";
1166
+ const title = "_title_18ltw_82";
1167
+ const closeButton = "_closeButton_18ltw_90";
1168
+ const description = "_description_18ltw_121";
1169
+ const content = "_content_18ltw_129";
1170
+ const controls = "_controls_18ltw_149";
1171
+ const highContrastMode = "_highContrastMode_18ltw_155";
1172
+ const slideIn = "_slideIn_18ltw_1";
1173
1173
  const AccessibilityPanel_module = {
1174
1174
  stickyContainer,
1175
1175
  panel,
1176
- "top-right": "_top-right_lzoik_38",
1176
+ "top-right": "_top-right_18ltw_36",
1177
1177
  topRight,
1178
- "top-left": "_top-left_lzoik_42",
1178
+ "top-left": "_top-left_18ltw_40",
1179
1179
  topLeft,
1180
- "bottom-right": "_bottom-right_lzoik_46",
1180
+ "bottom-right": "_bottom-right_18ltw_44",
1181
1181
  bottomRight,
1182
- "bottom-left": "_bottom-left_lzoik_54",
1182
+ "bottom-left": "_bottom-left_18ltw_52",
1183
1183
  bottomLeft,
1184
1184
  header,
1185
1185
  title,
package/dist/index.umd.js CHANGED
@@ -1,9 +1,9 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).VisionAccessibility={},e.React)}(this,function(e,t){"use strict";const o={isEnabled:!1,colorScheme:"standard",fontSize:"standard",showImages:!0},r="accessibility-settings",n=e=>{try{if("undefined"==typeof window)return;localStorage.setItem(r,JSON.stringify(e))}catch(t){console.warn("Не удалось сохранить настройки доступности:",t)}},s=()=>{try{if("undefined"==typeof window)return null;const e=localStorage.getItem(r);return e?i(JSON.parse(e)):null}catch(e){return console.warn("Не удалось загрузить настройки доступности:",e),null}},a=()=>{try{if("undefined"==typeof window)return;localStorage.removeItem(r)}catch(e){console.warn("Не удалось очистить настройки доступности:",e)}},i=e=>{if(!e||"object"!=typeof e)return o;const t=e;return{isEnabled:"boolean"==typeof t.isEnabled?t.isEnabled:o.isEnabled,colorScheme:["standard","high-contrast","grayscale"].includes(t.colorScheme)?t.colorScheme:o.colorScheme,fontSize:["small","standard","large"].includes(t.fontSize)?t.fontSize:o.fontSize,showImages:"boolean"==typeof t.showImages?t.showImages:o.showImages}},l=()=>"undefined"==typeof document?[]:document.querySelectorAll("h1, h2, h3, h4, h5, h6, p, span, a, button, label, li"),c=()=>"undefined"==typeof document?[]:document.querySelectorAll('img, picture, svg[role="img"]'),d=(e,t)=>{e.forEach(e=>{e&&e.classList&&e.classList.add(t)})},u=(e,t)=>{e.forEach(e=>{e&&e.classList&&e.classList.remove(t)})},f=(e,t)=>{try{if("undefined"==typeof window)return;e()}catch(o){console.warn(t,o)}},p=()=>"undefined"!=typeof window&&"undefined"!=typeof document;function m(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var y,_={exports:{}};
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).VisionAccessibility={},e.React)}(this,function(e,t){"use strict";const r={isEnabled:!1,colorScheme:"standard",fontSize:"standard",showImages:!0},o="accessibility-settings",n=e=>{try{if("undefined"==typeof window)return;localStorage.setItem(o,JSON.stringify(e))}catch(t){console.warn("Не удалось сохранить настройки доступности:",t)}},s=()=>{try{if("undefined"==typeof window)return null;const e=localStorage.getItem(o);return e?l(JSON.parse(e)):null}catch(e){return console.warn("Не удалось загрузить настройки доступности:",e),null}},a=()=>{try{if("undefined"==typeof window)return;localStorage.removeItem(o)}catch(e){console.warn("Не удалось очистить настройки доступности:",e)}},l=e=>{if(!e||"object"!=typeof e)return r;const t=e;return{isEnabled:"boolean"==typeof t.isEnabled?t.isEnabled:r.isEnabled,colorScheme:["standard","high-contrast","grayscale"].includes(t.colorScheme)?t.colorScheme:r.colorScheme,fontSize:["small","standard","large"].includes(t.fontSize)?t.fontSize:r.fontSize,showImages:"boolean"==typeof t.showImages?t.showImages:r.showImages}},i=()=>"undefined"==typeof document?[]:document.querySelectorAll("h1, h2, h3, h4, h5, h6, p, span, a, button, label, li"),c=()=>"undefined"==typeof document?[]:document.querySelectorAll('img, picture, svg[role="img"]'),d=(e,t)=>{e.forEach(e=>{e&&e.classList&&e.classList.add(t)})},u=(e,t)=>{e.forEach(e=>{e&&e.classList&&e.classList.remove(t)})},f=(e,t)=>{try{if("undefined"==typeof window)return;e()}catch(r){console.warn(t,r)}},p=()=>"undefined"!=typeof window&&"undefined"!=typeof document;function m(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var y,_={exports:{}};
2
2
  /*!
3
3
  Copyright (c) 2018 Jed Watson.
4
4
  Licensed under the MIT License (MIT), see
5
5
  http://jedwatson.github.io/classnames
6
- */y=_,function(){var e={}.hasOwnProperty;function t(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=r(e,o(n)))}return e}function o(o){if("string"==typeof o||"number"==typeof o)return o;if("object"!=typeof o)return"";if(Array.isArray(o))return t.apply(null,o);if(o.toString!==Object.prototype.toString&&!o.toString.toString().includes("[native code]"))return o.toString();var n="";for(var s in o)e.call(o,s)&&o[s]&&(n=r(n,s));return n}function r(e,t){return t?e?e+" "+t:e+t:e}y.exports?(t.default=t,y.exports=t):window.classNames=t}();const h=m(_.exports),b="data-original-font-size",g={small:.8,standard:1,large:1.3},S=e=>{const t=window.getComputedStyle(e).fontSize;return parseFloat(t)},k=e=>{if(!e.hasAttribute(b)){const t=S(e);e.setAttribute(b,t.toString())}},v=e=>{const t=e.getAttribute(b);if(t)return parseFloat(t);const o=S(e);return e.setAttribute(b,o.toString()),o},j=(e,t)=>{e.style.fontSize=`${t}px`},x=e=>{e.style.fontSize="",e.removeAttribute(b)},E=e=>{f(()=>{if(!p())return;const t=l(),o=g[e];t.forEach(t=>{try{if("standard"===e)x(t);else{k(t);const e=v(t);j(t,e*o)}}catch(r){console.warn("Ошибка при изменении размера шрифта элемента:",t,r)}})},`Ошибка при применении динамического размера шрифта: ${e}`)},N=()=>{f(()=>{if(!p())return;l().forEach(e=>{try{x(e)}catch(t){console.warn("Ошибка при сбросе размера шрифта элемента:",e,t)}})},"Ошибка при сбросе всех размеров шрифта")},w=e=>{"standard"!==e&&f(()=>{if(!p())return;const t=l(),o=g[e];t.forEach(e=>{if(!e.hasAttribute(b)&&!e.style.fontSize)try{k(e);const t=v(e);j(e,t*o)}catch(t){console.warn("Ошибка при обновлении размера шрифта нового элемента:",e,t)}})},`Ошибка при обновлении размера шрифта новых элементов: ${e}`)},C={HIGH_CONTRAST:h("accessibility-high-contrast"),FONT_SMALL:"accessibility-font-small",FONT_LARGE:"accessibility-font-large",HIDE_IMAGES:"accessibility-hide-images"},A=e=>{f(()=>{if(p())switch(document.body.classList.remove(C.HIGH_CONTRAST),document.body.style.filter="",I(),e){case"high-contrast":document.body.classList.add(C.HIGH_CONTRAST),$();break;case"grayscale":document.body.style.filter="grayscale(100%)";break;case"standard":break;default:console.warn(`Неизвестная цветовая схема: ${e}`)}},`Ошибка при применении цветовой схемы: ${e}`)},T=e=>{E(e)},z=e=>{f(()=>{if(!p())return;const t=c();e?u(t,C.HIDE_IMAGES):d(t,C.HIDE_IMAGES)},`Ошибка при управлении отображением изображений: ${e}`)},O=()=>{f(()=>{if(!p())return;document.body.classList.remove(C.HIGH_CONTRAST),document.body.classList.remove(C.FONT_SMALL),document.body.classList.remove(C.FONT_LARGE),document.body.style.filter="",N();const e=c();u(e,C.HIDE_IMAGES),I()},"Ошибка при удалении всех стилей доступности")},L=e=>{e.isEnabled?(A(e.colorScheme),T(e.fontSize),z(e.showImages)):O()},$=()=>{f(()=>{if(!p())return;document.querySelectorAll("*").forEach(e=>{e instanceof HTMLElement&&(e.style.backgroundColor="#000",e.style.color="#fff",e.style.borderColor="#fff")});document.querySelectorAll("a").forEach(e=>{e instanceof HTMLElement&&(e.style.color="#ffff00")});document.querySelectorAll("a:visited").forEach(e=>{e instanceof HTMLElement&&(e.style.color="#ff00ff")});document.querySelectorAll("button").forEach(e=>{e instanceof HTMLElement&&(e.style.backgroundColor="#fff",e.style.color="#000",e.style.border="2px solid #fff")});document.querySelectorAll("input, textarea, select").forEach(e=>{e instanceof HTMLElement&&(e.style.backgroundColor="#fff",e.style.color="#000",e.style.border="2px solid #fff")})},"Ошибка при применении стилей высокого контраста ко всем элементам")},I=()=>{f(()=>{if(!p())return;document.querySelectorAll("*").forEach(e=>{e instanceof HTMLElement&&(e.style.backgroundColor="",e.style.color="",e.style.borderColor="")});document.querySelectorAll("a").forEach(e=>{e instanceof HTMLElement&&(e.style.color="")});document.querySelectorAll("a:visited").forEach(e=>{e instanceof HTMLElement&&(e.style.color="")});document.querySelectorAll("button").forEach(e=>{e instanceof HTMLElement&&(e.style.backgroundColor="",e.style.color="",e.style.border="")});document.querySelectorAll("input, textarea, select").forEach(e=>{e instanceof HTMLElement&&(e.style.backgroundColor="",e.style.color="",e.style.border="")})},"Ошибка при удалении стилей высокого контраста со всех элементов")},M=()=>{const[e,r]=t.useState(o),[i,l]=t.useState(!1);t.useEffect(()=>{if("undefined"==typeof window||!i||!e.isEnabled)return;const t=new MutationObserver(t=>{let o=!1;t.forEach(e=>{"childList"===e.type&&e.addedNodes.forEach(e=>{if(e.nodeType===Node.ELEMENT_NODE){const t=e;(t.matches("h1, h2, h3, h4, h5, h6, p, span, a, button, label, li, div")||t.querySelector("h1, h2, h3, h4, h5, h6, p, span, a, button, label, li, div"))&&(o=!0)}})}),o&&"standard"!==e.fontSize&&setTimeout(()=>{w(e.fontSize)},100)});return t.observe(document.body,{childList:!0,subtree:!0}),()=>{t.disconnect()}},[i,e.isEnabled,e.fontSize]),t.useEffect(()=>{if("undefined"!=typeof window)try{const e=s();e&&(r(e),e.isEnabled&&L(e))}catch(e){console.warn("Ошибка при загрузке настроек доступности:",e),r(o)}finally{l(!0)}},[]),t.useEffect(()=>{if(i)try{n(e),e.isEnabled?L(e):O()}catch(t){console.warn("Ошибка при сохранении настроек доступности:",t)}},[e,i]);const c=t.useCallback(e=>{r(t=>{const o={...t,...e};return t.isEnabled&&!o.isEnabled&&O(),o})},[]),d=t.useCallback(()=>{try{O(),r(o),a()}catch(e){console.warn("Ошибка при сбросе настроек доступности:",e)}},[]);return{settings:e,updateSettings:c,resetSettings:d,isLoaded:i}};var R,H={exports:{}},P={};var D,F={};
6
+ */y=_,function(){var e={}.hasOwnProperty;function t(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=o(e,r(n)))}return e}function r(r){if("string"==typeof r||"number"==typeof r)return r;if("object"!=typeof r)return"";if(Array.isArray(r))return t.apply(null,r);if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]"))return r.toString();var n="";for(var s in r)e.call(r,s)&&r[s]&&(n=o(n,s));return n}function o(e,t){return t?e?e+" "+t:e+t:e}y.exports?(t.default=t,y.exports=t):window.classNames=t}();const h=m(_.exports),b="data-original-font-size",g={small:.8,standard:1,large:1.3},S=e=>{const t=window.getComputedStyle(e).fontSize;return parseFloat(t)},v=e=>{if(!e.hasAttribute(b)){const t=S(e);e.setAttribute(b,t.toString())}},k=e=>{const t=e.getAttribute(b);if(t)return parseFloat(t);const r=S(e);return e.setAttribute(b,r.toString()),r},j=(e,t)=>{e.style.fontSize=`${t}px`},x=e=>{e.style.fontSize="",e.removeAttribute(b)},w=e=>{f(()=>{if(!p())return;const t=i(),r=g[e];t.forEach(t=>{try{if("standard"===e)x(t);else{v(t);const e=k(t);j(t,e*r)}}catch(o){console.warn("Ошибка при изменении размера шрифта элемента:",t,o)}})},`Ошибка при применении динамического размера шрифта: ${e}`)},E=()=>{f(()=>{if(!p())return;i().forEach(e=>{try{x(e)}catch(t){console.warn("Ошибка при сбросе размера шрифта элемента:",e,t)}})},"Ошибка при сбросе всех размеров шрифта")},N=e=>{"standard"!==e&&f(()=>{if(!p())return;const t=i(),r=g[e];t.forEach(e=>{if(!e.hasAttribute(b)&&!e.style.fontSize)try{v(e);const t=k(e);j(e,t*r)}catch(t){console.warn("Ошибка при обновлении размера шрифта нового элемента:",e,t)}})},`Ошибка при обновлении размера шрифта новых элементов: ${e}`)},C={HIGH_CONTRAST:h("accessibility-high-contrast"),FONT_SMALL:"accessibility-font-small",FONT_LARGE:"accessibility-font-large",HIDE_IMAGES:"accessibility-hide-images"},A=e=>{f(()=>{if(p())switch(document.body.classList.remove(C.HIGH_CONTRAST),document.body.style.filter="",z(),e){case"high-contrast":document.body.classList.add(C.HIGH_CONTRAST),I();break;case"grayscale":document.body.style.filter="grayscale(100%)";break;case"standard":break;default:console.warn(`Неизвестная цветовая схема: ${e}`)}},`Ошибка при применении цветовой схемы: ${e}`)},T=e=>{w(e)},O=e=>{f(()=>{if(!p())return;const t=c();e?u(t,C.HIDE_IMAGES):d(t,C.HIDE_IMAGES)},`Ошибка при управлении отображением изображений: ${e}`)},L=()=>{f(()=>{if(!p())return;document.body.classList.remove(C.HIGH_CONTRAST),document.body.classList.remove(C.FONT_SMALL),document.body.classList.remove(C.FONT_LARGE),document.body.style.filter="",E();const e=c();u(e,C.HIDE_IMAGES),z()},"Ошибка при удалении всех стилей доступности")},$=e=>{e.isEnabled?(A(e.colorScheme),T(e.fontSize),O(e.showImages)):L()},I=()=>{f(()=>{if(!p())return;document.querySelectorAll("*").forEach(e=>{e instanceof HTMLElement&&(e.style.backgroundColor="#000",e.style.color="#fff",e.style.borderColor="#fff")});document.querySelectorAll("a").forEach(e=>{e instanceof HTMLElement&&(e.style.color="#ffff00")});document.querySelectorAll("a:visited").forEach(e=>{e instanceof HTMLElement&&(e.style.color="#ff00ff")});document.querySelectorAll("button").forEach(e=>{e instanceof HTMLElement&&(e.style.backgroundColor="#fff",e.style.color="#000",e.style.border="2px solid #fff")});document.querySelectorAll("input, textarea, select").forEach(e=>{e instanceof HTMLElement&&(e.style.backgroundColor="#fff",e.style.color="#000",e.style.border="2px solid #fff")})},"Ошибка при применении стилей высокого контраста ко всем элементам")},z=()=>{f(()=>{if(!p())return;document.querySelectorAll("*").forEach(e=>{e instanceof HTMLElement&&(e.style.backgroundColor="",e.style.color="",e.style.borderColor="")});document.querySelectorAll("a").forEach(e=>{e instanceof HTMLElement&&(e.style.color="")});document.querySelectorAll("a:visited").forEach(e=>{e instanceof HTMLElement&&(e.style.color="")});document.querySelectorAll("button").forEach(e=>{e instanceof HTMLElement&&(e.style.backgroundColor="",e.style.color="",e.style.border="")});document.querySelectorAll("input, textarea, select").forEach(e=>{e instanceof HTMLElement&&(e.style.backgroundColor="",e.style.color="",e.style.border="")})},"Ошибка при удалении стилей высокого контраста со всех элементов")},M=()=>{const[e,o]=t.useState(r),[l,i]=t.useState(!1);t.useEffect(()=>{if("undefined"==typeof window||!l||!e.isEnabled)return;const t=new MutationObserver(t=>{let r=!1;t.forEach(e=>{"childList"===e.type&&e.addedNodes.forEach(e=>{if(e.nodeType===Node.ELEMENT_NODE){const t=e;(t.matches("h1, h2, h3, h4, h5, h6, p, span, a, button, label, li, div")||t.querySelector("h1, h2, h3, h4, h5, h6, p, span, a, button, label, li, div"))&&(r=!0)}})}),r&&"standard"!==e.fontSize&&setTimeout(()=>{N(e.fontSize)},100)});return t.observe(document.body,{childList:!0,subtree:!0}),()=>{t.disconnect()}},[l,e.isEnabled,e.fontSize]),t.useEffect(()=>{if("undefined"!=typeof window)try{const e=s();e&&(o(e),e.isEnabled&&$(e))}catch(e){console.warn("Ошибка при загрузке настроек доступности:",e),o(r)}finally{i(!0)}},[]),t.useEffect(()=>{if(l)try{n(e),e.isEnabled?$(e):L()}catch(t){console.warn("Ошибка при сохранении настроек доступности:",t)}},[e,l]);const c=t.useCallback(e=>{o(t=>{const r={...t,...e};return t.isEnabled&&!r.isEnabled&&L(),r})},[]),d=t.useCallback(()=>{try{L(),o(r),a()}catch(e){console.warn("Ошибка при сбросе настроек доступности:",e)}},[]);return{settings:e,updateSettings:c,resetSettings:d,isLoaded:l}};var R,H={exports:{}},P={};var D,F={};
7
7
  /**
8
8
  * @license React
9
9
  * react-jsx-runtime.development.js
@@ -12,5 +12,5 @@
12
12
  *
13
13
  * This source code is licensed under the MIT license found in the
14
14
  * LICENSE file in the root directory of this source tree.
15
- */"production"===process.env.NODE_ENV?H.exports=function(){if(R)return P;R=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function o(t,o,r){var n=null;if(void 0!==r&&(n=""+r),void 0!==o.key&&(n=""+o.key),"key"in o)for(var s in r={},o)"key"!==s&&(r[s]=o[s]);else r=o;return o=r.ref,{$$typeof:e,type:t,key:n,ref:void 0!==o?o:null,props:r}}return P.Fragment=t,P.jsx=o,P.jsxs=o,P}():H.exports=(D||(D=1,"production"!==process.env.NODE_ENV&&function(){function e(t){if(null==t)return null;if("function"==typeof t)return t.$$typeof===E?null:t.displayName||t.name||null;if("string"==typeof t)return t;switch(t){case m:return"Fragment";case _:return"Profiler";case y:return"StrictMode";case S:return"Suspense";case k:return"SuspenseList";case x:return"Activity"}if("object"==typeof t)switch("number"==typeof t.tag&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),t.$$typeof){case p:return"Portal";case b:return t.displayName||"Context";case h:return(t._context.displayName||"Context")+".Consumer";case g:var o=t.render;return(t=t.displayName)||(t=""!==(t=o.displayName||o.name||"")?"ForwardRef("+t+")":"ForwardRef"),t;case v:return null!==(o=t.displayName||null)?o:e(t.type)||"Memo";case j:o=t._payload,t=t._init;try{return e(t(o))}catch(r){}}return null}function o(e){return""+e}function r(e){try{o(e);var t=!1}catch(s){t=!0}if(t){var r=(t=console).error,n="function"==typeof Symbol&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return r.call(t,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",n),o(e)}}function n(t){if(t===m)return"<>";if("object"==typeof t&&null!==t&&t.$$typeof===j)return"<...>";try{var o=e(t);return o?"<"+o+">":"<...>"}catch(r){return"<...>"}}function s(){return Error("react-stack-top-frame")}function a(){var t=e(this.type);return T[t]||(T[t]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),void 0!==(t=this.props.ref)?t:null}function i(t,o,n,s,i,c){var u,p=o.children;if(void 0!==p)if(s)if(C(p)){for(s=0;s<p.length;s++)l(p[s]);Object.freeze&&Object.freeze(p)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else l(p);if(w.call(o,"key")){p=e(t);var m=Object.keys(o).filter(function(e){return"key"!==e});s=0<m.length?"{key: someKey, "+m.join(": ..., ")+": ...}":"{key: someKey}",L[p+s]||(m=0<m.length?"{"+m.join(": ..., ")+": ...}":"{}",console.error('A props object containing a "key" prop is being spread into JSX:\n let props = %s;\n <%s {...props} />\nReact keys must be passed directly to JSX without using spread:\n let props = %s;\n <%s key={someKey} {...props} />',s,p,m,p),L[p+s]=!0)}if(p=null,void 0!==n&&(r(n),p=""+n),function(e){if(w.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return void 0!==e.key}(o)&&(r(o.key),p=""+o.key),"key"in o)for(var y in n={},o)"key"!==y&&(n[y]=o[y]);else n=o;return p&&function(e,t){function o(){d||(d=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}o.isReactWarning=!0,Object.defineProperty(e,"key",{get:o,configurable:!0})}(n,"function"==typeof t?t.displayName||t.name||"Unknown":t),function(e,t,o,r,n,s){var i=o.ref;return e={$$typeof:f,type:e,key:t,props:o,_owner:r},null!==(void 0!==i?i:null)?Object.defineProperty(e,"ref",{enumerable:!1,get:a}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:n}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:s}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}(t,p,n,null===(u=N.A)?null:u.getOwner(),i,c)}function l(e){c(e)?e._store&&(e._store.validated=1):"object"==typeof e&&null!==e&&e.$$typeof===j&&("fulfilled"===e._payload.status?c(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function c(e){return"object"==typeof e&&null!==e&&e.$$typeof===f}var d,u=t,f=Symbol.for("react.transitional.element"),p=Symbol.for("react.portal"),m=Symbol.for("react.fragment"),y=Symbol.for("react.strict_mode"),_=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),b=Symbol.for("react.context"),g=Symbol.for("react.forward_ref"),S=Symbol.for("react.suspense"),k=Symbol.for("react.suspense_list"),v=Symbol.for("react.memo"),j=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),E=Symbol.for("react.client.reference"),N=u.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,w=Object.prototype.hasOwnProperty,C=Array.isArray,A=console.createTask?console.createTask:function(){return null},T={},z=(u={react_stack_bottom_frame:function(e){return e()}}).react_stack_bottom_frame.bind(u,s)(),O=A(n(s)),L={};F.Fragment=m,F.jsx=function(e,t,o){var r=1e4>N.recentlyCreatedOwnerStacks++;return i(e,t,o,!1,r?Error("react-stack-top-frame"):z,r?A(n(e)):O)},F.jsxs=function(e,t,o){var r=1e4>N.recentlyCreatedOwnerStacks++;return i(e,t,o,!0,r?Error("react-stack-top-frame"):z,r?A(n(e)):O)}}()),F);var q=H.exports;const G=t.createContext(null),B=({children:e})=>{const t=M();return q.jsx(G.Provider,{value:t,children:e})},U=()=>{const e=t.useContext(G);if(!e)throw new Error("useAccessibilityContext должен использоваться внутри AccessibilityProvider");return e},V="_accessibilityToggle_kpjm6_9",J="_toggleContainer_kpjm6_15",K="_toggleLabel_kpjm6_21",Y="_toggleInput_kpjm6_42",W="_toggleSlider_kpjm6_49",X="_toggleThumb_kpjm6_55",Q="_toggleContent_kpjm6_81",Z="_toggleTitle_kpjm6_88",ee="_toggleStatus_kpjm6_95",te="_description_kpjm6_102",oe="_highContrastMode_kpjm6_110",re=({className:e})=>{const{settings:t,updateSettings:o}=U(),r=t.isEnabled;return q.jsx("div",{className:`${V} ${e||""} ${"high-contrast"===t.colorScheme?oe:""}`,children:q.jsxs("div",{className:J,children:[q.jsxs("label",{className:K,children:[q.jsx("input",{type:"checkbox",checked:r,onChange:e=>{o({isEnabled:e.target.checked})},className:Y,"aria-describedby":"accessibility-toggle-description"}),q.jsx("span",{className:W,"aria-hidden":"true",children:q.jsx("span",{className:X})}),q.jsxs("div",{className:Q,children:[q.jsx("span",{className:Z,children:"Режим доступности"}),q.jsx("span",{className:ee,children:r?"Включен":"Выключен"})]})]}),q.jsx("p",{id:"accessibility-toggle-description",className:te,children:r?"Все настройки доступности активны. Используйте элементы управления ниже для точной настройки.":"Включите режим доступности для активации всех настроек. При выключении все изменения будут сброшены."})]})})},ne="_colorSchemeControl_1kr72_9",se="_disabled_1kr72_12",ae="_title_1kr72_12",ie="_optionsContainer_1kr72_23",le="_option_1kr72_23",ce="_selected_1kr72_50",de="_radioIndicator_1kr72_54",ue="_optionDisabled_1kr72_62",fe="_radioInput_1kr72_72",pe="_optionContent_1kr72_79",me="_optionLabel_1kr72_91",ye="_optionDescription_1kr72_98",_e="_highContrastMode_1kr72_129",he=[{value:"standard",label:"Стандартный",description:"Обычная цветовая схема сайта"},{value:"high-contrast",label:"Контрастный белый на черном",description:"Высококонтрастная схема для лучшей читаемости"},{value:"grayscale",label:"Черно-белый",description:"Преобразование всех цветов в оттенки серого"}],be=({className:e})=>{const{settings:t,updateSettings:o}=U(),r=t.colorScheme,n=t.isEnabled,s=e=>{const t=e.target.value;o({colorScheme:t})};return q.jsxs("div",{className:`${ne} ${e||""} ${n?"":se} ${"high-contrast"===r?_e:""}`,children:[q.jsx("h4",{className:ae,children:"Цветовая схема"}),q.jsx("div",{className:ie,role:"radiogroup","aria-labelledby":"color-scheme-title",children:he.map(e=>q.jsxs("label",{className:`${le} ${r===e.value?ce:""} ${n?"":ue}`,children:[q.jsx("input",{type:"radio",name:"colorScheme",value:e.value,checked:r===e.value,onChange:s,className:fe,"aria-describedby":`color-scheme-${e.value}-description`,disabled:!n}),q.jsxs("div",{className:pe,children:[q.jsx("span",{className:me,children:e.label}),q.jsx("span",{id:`color-scheme-${e.value}-description`,className:ye,children:e.description})]}),q.jsx("div",{className:de,"aria-hidden":"true"})]},e.value))})]})},ge="_fontSizeControl_1c68l_9",Se="_disabled_1c68l_12",ke="_title_1c68l_12",ve="_optionsContainer_1c68l_23",je="_option_1c68l_23",xe="_selected_1c68l_50",Ee="_radioIndicator_1c68l_54",Ne="_optionDisabled_1c68l_62",we="_radioInput_1c68l_72",Ce="_optionContent_1c68l_79",Ae="_optionLabel_1c68l_91",Te="_optionDescription_1c68l_98",ze="_highContrastMode_1c68l_129",Oe=[{value:"small",label:"Мелкий",description:"Уменьшенный размер текста (80%)"},{value:"standard",label:"Стандартный",description:"Обычный размер текста"},{value:"large",label:"Крупный",description:"Увеличенный размер текста (130%)"}],Le=({className:e})=>{const{settings:t,updateSettings:o}=U(),r=t.fontSize,n=t.isEnabled,s=e=>{const t=e.target.value;o({fontSize:t})};return q.jsxs("div",{className:`${ge} ${e||""} ${n?"":Se} ${"high-contrast"===t.colorScheme?ze:""}`,children:[q.jsx("h4",{className:ke,children:"Размер шрифта"}),q.jsx("div",{className:ve,role:"radiogroup","aria-labelledby":"font-size-title",children:Oe.map(e=>q.jsxs("label",{className:`${je} ${r===e.value?xe:""} ${n?"":Ne}`,children:[q.jsx("input",{type:"radio",name:"fontSize",value:e.value,checked:r===e.value,onChange:s,className:we,"aria-describedby":`font-size-${e.value}-description`,disabled:!n}),q.jsxs("div",{className:Ce,children:[q.jsx("span",{className:Ae,children:e.label}),q.jsx("span",{id:`font-size-${e.value}-description`,className:Te,children:e.description})]}),q.jsx("div",{className:Ee,"aria-hidden":"true"})]},e.value))})]})},$e="_imageControl_hkxkm_9",Ie="_disabled_hkxkm_12",Me="_title_hkxkm_12",Re="_switchContainer_hkxkm_23",He="_switchLabel_hkxkm_29",Pe="_switchDisabled_hkxkm_49",De="_switchInput_hkxkm_59",Fe="_switchSlider_hkxkm_66",qe="_switchThumb_hkxkm_72",Ge="_switchText_hkxkm_98",Be="_description_hkxkm_106",Ue="_highContrastMode_hkxkm_114",Ve=({className:e})=>{const{settings:t,updateSettings:o}=U(),r=t.showImages,n=t.isEnabled;return q.jsxs("div",{className:`${$e} ${e||""} ${n?"":Ie} ${"high-contrast"===t.colorScheme?Ue:""}`,children:[q.jsx("h4",{className:Me,children:"Изображения"}),q.jsxs("div",{className:Re,children:[q.jsxs("label",{className:`${He} ${n?"":Pe}`,children:[q.jsx("input",{type:"checkbox",checked:r,onChange:e=>{o({showImages:e.target.checked})},className:De,"aria-describedby":"image-control-description",disabled:!n}),q.jsx("span",{className:Fe,"aria-hidden":"true",children:q.jsx("span",{className:qe})}),q.jsx("span",{className:Ge,children:r?"Показывать изображения":"Скрывать изображения"})]}),q.jsx("p",{id:"image-control-description",className:Be,children:r?"Изображения отображаются на странице":"Изображения скрыты для лучшей концентрации на тексте"})]})]})},Je="_stickyContainer_lzoik_9",Ke="_panel_lzoik_23",Ye="_top-right_lzoik_38",We="_top-left_lzoik_42",Xe="_bottom-right_lzoik_46",Qe="_bottom-left_lzoik_54",Ze="_header_lzoik_75",et="_title_lzoik_84",tt="_closeButton_lzoik_92",ot="_description_lzoik_123",rt="_content_lzoik_131",nt="_controls_lzoik_151",st="_highContrastMode_lzoik_157",at="_slideIn_lzoik_1",it={stickyContainer:Je,panel:Ke,"top-right":"_top-right_lzoik_38",topRight:Ye,"top-left":"_top-left_lzoik_42",topLeft:We,"bottom-right":"_bottom-right_lzoik_46",bottomRight:Xe,"bottom-left":"_bottom-left_lzoik_54",bottomLeft:Qe,header:Ze,title:et,closeButton:tt,description:ot,content:rt,controls:nt,highContrastMode:st,slideIn:at},lt=Object.freeze(Object.defineProperty({__proto__:null,bottomLeft:Qe,bottomRight:Xe,closeButton:tt,content:rt,controls:nt,default:it,description:ot,header:Ze,highContrastMode:st,panel:Ke,slideIn:at,stickyContainer:Je,title:et,topLeft:We,topRight:Ye},Symbol.toStringTag,{value:"Module"})),ct="object"==typeof lt&&it?it:it||lt,dt=({isOpen:e,onClose:o,position:r="top-right"})=>{const n=t.useRef(null);t.useEffect(()=>{if(!e)return;const t=e=>{n.current&&!n.current.contains(e.target)&&o()},r=setTimeout(()=>{document.addEventListener("mousedown",t)},100);return()=>{clearTimeout(r),document.removeEventListener("mousedown",t)}},[e,o]),t.useEffect(()=>{if(!e)return;const t=e=>{"Escape"===e.key&&o()};return document.addEventListener("keydown",t),()=>{document.removeEventListener("keydown",t)}},[e,o]);if(!e)return null;const{settings:s}=U();return q.jsx("div",{className:h(ct.stickyContainer),children:q.jsxs("div",{ref:n,className:h(ct.panel,ct[r],"high-contrast"===s.colorScheme&&ct.highContrastMode),role:"dialog","aria-modal":"true","aria-labelledby":"accessibility-panel-title","aria-describedby":"accessibility-panel-description",children:[q.jsxs("div",{className:h(ct.header),children:[q.jsx("h3",{id:"accessibility-panel-title",className:h(ct.title),children:"Настройки доступности"}),q.jsx("button",{onClick:e=>{e.preventDefault(),e.stopPropagation(),o()},className:h(ct.closeButton),"aria-label":"Закрыть панель настроек доступности",type:"button",children:"×"})]}),q.jsx("div",{id:"accessibility-panel-description",className:h(ct.description),children:"Настройте отображение страницы для улучшения доступности"}),q.jsxs("div",{className:h(ct.content),children:[q.jsx(re,{}),q.jsxs("div",{className:h(ct.controls),children:[q.jsx(be,{}),q.jsx(Le,{}),q.jsx(Ve,{})]})]})]})})};e.AccessibilityPanel=e=>q.jsx(B,{children:q.jsx(dt,{...e})}),e.AccessibilityProvider=B,e.AccessibilityToggle=re,e.CSS_CLASSES=C,e.ColorSchemeControl=be,e.DEFAULT_ACCESSIBILITY_SETTINGS=o,e.FontSizeControl=Le,e.ImageControl=Ve,e.STORAGE_KEY=r,e.applyAllSettings=L,e.applyClassToElements=d,e.applyColorScheme=A,e.applyDynamicFontSize=E,e.applyFontSize=T,e.applyImageVisibility=z,e.applySettingIfEnabled=(e,t,o)=>{if(e)switch(t){case"colorScheme":A(o);break;case"fontSize":T(o);break;case"imageVisibility":z(o);break;default:console.warn(`Неизвестный тип настройки: ${t}`)}},e.clearStorage=a,e.getImageElements=c,e.getTextElements=l,e.isDOMAvailable=p,e.isFontSizeModified=()=>{if(!p())return!1;const e=l();for(let t=0;t<Math.min(e.length,10);t++)if(e[t].hasAttribute(b))return!0;return!1},e.loadFromStorage=s,e.removeAllAccessibilityStyles=O,e.removeClassFromElements=u,e.resetAllFontSizes=N,e.safeDOMOperation=f,e.safeLocalStorageOperation=(e,t,o)=>{try{return e()}catch(r){return console.warn(o,r),t}},e.saveToStorage=n,e.updateNewElementsFontSize=w,e.useAccessibilityContext=U,e.useAccessibilitySetting=e=>{const{settings:o,updateSettings:r}=M(),n=t.useCallback(t=>{r({[e]:t})},[e,r]);return[o[e],n]},e.useAccessibilitySettings=M,e.useAccessibilityToggle=()=>{const{settings:e,updateSettings:o}=M(),r=t.useCallback(e=>{o({isEnabled:e})},[o]);return[e.isEnabled,r]},e.validateSettings=i,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})});
15
+ */"production"===process.env.NODE_ENV?H.exports=function(){if(R)return P;R=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function r(t,r,o){var n=null;if(void 0!==o&&(n=""+o),void 0!==r.key&&(n=""+r.key),"key"in r)for(var s in o={},r)"key"!==s&&(o[s]=r[s]);else o=r;return r=o.ref,{$$typeof:e,type:t,key:n,ref:void 0!==r?r:null,props:o}}return P.Fragment=t,P.jsx=r,P.jsxs=r,P}():H.exports=(D||(D=1,"production"!==process.env.NODE_ENV&&function(){function e(t){if(null==t)return null;if("function"==typeof t)return t.$$typeof===w?null:t.displayName||t.name||null;if("string"==typeof t)return t;switch(t){case m:return"Fragment";case _:return"Profiler";case y:return"StrictMode";case S:return"Suspense";case v:return"SuspenseList";case x:return"Activity"}if("object"==typeof t)switch("number"==typeof t.tag&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),t.$$typeof){case p:return"Portal";case b:return t.displayName||"Context";case h:return(t._context.displayName||"Context")+".Consumer";case g:var r=t.render;return(t=t.displayName)||(t=""!==(t=r.displayName||r.name||"")?"ForwardRef("+t+")":"ForwardRef"),t;case k:return null!==(r=t.displayName||null)?r:e(t.type)||"Memo";case j:r=t._payload,t=t._init;try{return e(t(r))}catch(o){}}return null}function r(e){return""+e}function o(e){try{r(e);var t=!1}catch(s){t=!0}if(t){var o=(t=console).error,n="function"==typeof Symbol&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return o.call(t,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",n),r(e)}}function n(t){if(t===m)return"<>";if("object"==typeof t&&null!==t&&t.$$typeof===j)return"<...>";try{var r=e(t);return r?"<"+r+">":"<...>"}catch(o){return"<...>"}}function s(){return Error("react-stack-top-frame")}function a(){var t=e(this.type);return T[t]||(T[t]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),void 0!==(t=this.props.ref)?t:null}function l(t,r,n,s,l,c){var u,p=r.children;if(void 0!==p)if(s)if(C(p)){for(s=0;s<p.length;s++)i(p[s]);Object.freeze&&Object.freeze(p)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else i(p);if(N.call(r,"key")){p=e(t);var m=Object.keys(r).filter(function(e){return"key"!==e});s=0<m.length?"{key: someKey, "+m.join(": ..., ")+": ...}":"{key: someKey}",$[p+s]||(m=0<m.length?"{"+m.join(": ..., ")+": ...}":"{}",console.error('A props object containing a "key" prop is being spread into JSX:\n let props = %s;\n <%s {...props} />\nReact keys must be passed directly to JSX without using spread:\n let props = %s;\n <%s key={someKey} {...props} />',s,p,m,p),$[p+s]=!0)}if(p=null,void 0!==n&&(o(n),p=""+n),function(e){if(N.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return void 0!==e.key}(r)&&(o(r.key),p=""+r.key),"key"in r)for(var y in n={},r)"key"!==y&&(n[y]=r[y]);else n=r;return p&&function(e,t){function r(){d||(d=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}r.isReactWarning=!0,Object.defineProperty(e,"key",{get:r,configurable:!0})}(n,"function"==typeof t?t.displayName||t.name||"Unknown":t),function(e,t,r,o,n,s){var l=r.ref;return e={$$typeof:f,type:e,key:t,props:r,_owner:o},null!==(void 0!==l?l:null)?Object.defineProperty(e,"ref",{enumerable:!1,get:a}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:n}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:s}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}(t,p,n,null===(u=E.A)?null:u.getOwner(),l,c)}function i(e){c(e)?e._store&&(e._store.validated=1):"object"==typeof e&&null!==e&&e.$$typeof===j&&("fulfilled"===e._payload.status?c(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function c(e){return"object"==typeof e&&null!==e&&e.$$typeof===f}var d,u=t,f=Symbol.for("react.transitional.element"),p=Symbol.for("react.portal"),m=Symbol.for("react.fragment"),y=Symbol.for("react.strict_mode"),_=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),b=Symbol.for("react.context"),g=Symbol.for("react.forward_ref"),S=Symbol.for("react.suspense"),v=Symbol.for("react.suspense_list"),k=Symbol.for("react.memo"),j=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),w=Symbol.for("react.client.reference"),E=u.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,N=Object.prototype.hasOwnProperty,C=Array.isArray,A=console.createTask?console.createTask:function(){return null},T={},O=(u={react_stack_bottom_frame:function(e){return e()}}).react_stack_bottom_frame.bind(u,s)(),L=A(n(s)),$={};F.Fragment=m,F.jsx=function(e,t,r){var o=1e4>E.recentlyCreatedOwnerStacks++;return l(e,t,r,!1,o?Error("react-stack-top-frame"):O,o?A(n(e)):L)},F.jsxs=function(e,t,r){var o=1e4>E.recentlyCreatedOwnerStacks++;return l(e,t,r,!0,o?Error("react-stack-top-frame"):O,o?A(n(e)):L)}}()),F);var q=H.exports;const G=t.createContext(null),B=({children:e})=>{const t=M();return q.jsx(G.Provider,{value:t,children:e})},U=()=>{const e=t.useContext(G);if(!e)throw new Error("useAccessibilityContext должен использоваться внутри AccessibilityProvider");return e},V="_accessibilityToggle_kpjm6_9",J="_toggleContainer_kpjm6_15",K="_toggleLabel_kpjm6_21",Y="_toggleInput_kpjm6_42",W="_toggleSlider_kpjm6_49",X="_toggleThumb_kpjm6_55",Q="_toggleContent_kpjm6_81",Z="_toggleTitle_kpjm6_88",ee="_toggleStatus_kpjm6_95",te="_description_kpjm6_102",re="_highContrastMode_kpjm6_110",oe=({className:e})=>{const{settings:t,updateSettings:r}=U(),o=t.isEnabled;return q.jsx("div",{className:`${V} ${e||""} ${"high-contrast"===t.colorScheme?re:""}`,children:q.jsxs("div",{className:J,children:[q.jsxs("label",{className:K,children:[q.jsx("input",{type:"checkbox",checked:o,onChange:e=>{r({isEnabled:e.target.checked})},className:Y,"aria-describedby":"accessibility-toggle-description"}),q.jsx("span",{className:W,"aria-hidden":"true",children:q.jsx("span",{className:X})}),q.jsxs("div",{className:Q,children:[q.jsx("span",{className:Z,children:"Режим доступности"}),q.jsx("span",{className:ee,children:o?"Включен":"Выключен"})]})]}),q.jsx("p",{id:"accessibility-toggle-description",className:te,children:o?"Все настройки доступности активны. Используйте элементы управления ниже для точной настройки.":"Включите режим доступности для активации всех настроек. При выключении все изменения будут сброшены."})]})})},ne="_colorSchemeControl_1kr72_9",se="_disabled_1kr72_12",ae="_title_1kr72_12",le="_optionsContainer_1kr72_23",ie="_option_1kr72_23",ce="_selected_1kr72_50",de="_radioIndicator_1kr72_54",ue="_optionDisabled_1kr72_62",fe="_radioInput_1kr72_72",pe="_optionContent_1kr72_79",me="_optionLabel_1kr72_91",ye="_optionDescription_1kr72_98",_e="_highContrastMode_1kr72_129",he=[{value:"standard",label:"Стандартный",description:"Обычная цветовая схема сайта"},{value:"high-contrast",label:"Контрастный белый на черном",description:"Высококонтрастная схема для лучшей читаемости"},{value:"grayscale",label:"Черно-белый",description:"Преобразование всех цветов в оттенки серого"}],be=({className:e})=>{const{settings:t,updateSettings:r}=U(),o=t.colorScheme,n=t.isEnabled,s=e=>{const t=e.target.value;r({colorScheme:t})};return q.jsxs("div",{className:`${ne} ${e||""} ${n?"":se} ${"high-contrast"===o?_e:""}`,children:[q.jsx("h4",{className:ae,children:"Цветовая схема"}),q.jsx("div",{className:le,role:"radiogroup","aria-labelledby":"color-scheme-title",children:he.map(e=>q.jsxs("label",{className:`${ie} ${o===e.value?ce:""} ${n?"":ue}`,children:[q.jsx("input",{type:"radio",name:"colorScheme",value:e.value,checked:o===e.value,onChange:s,className:fe,"aria-describedby":`color-scheme-${e.value}-description`,disabled:!n}),q.jsxs("div",{className:pe,children:[q.jsx("span",{className:me,children:e.label}),q.jsx("span",{id:`color-scheme-${e.value}-description`,className:ye,children:e.description})]}),q.jsx("div",{className:de,"aria-hidden":"true"})]},e.value))})]})},ge="_fontSizeControl_1c68l_9",Se="_disabled_1c68l_12",ve="_title_1c68l_12",ke="_optionsContainer_1c68l_23",je="_option_1c68l_23",xe="_selected_1c68l_50",we="_radioIndicator_1c68l_54",Ee="_optionDisabled_1c68l_62",Ne="_radioInput_1c68l_72",Ce="_optionContent_1c68l_79",Ae="_optionLabel_1c68l_91",Te="_optionDescription_1c68l_98",Oe="_highContrastMode_1c68l_129",Le=[{value:"small",label:"Мелкий",description:"Уменьшенный размер текста (80%)"},{value:"standard",label:"Стандартный",description:"Обычный размер текста"},{value:"large",label:"Крупный",description:"Увеличенный размер текста (130%)"}],$e=({className:e})=>{const{settings:t,updateSettings:r}=U(),o=t.fontSize,n=t.isEnabled,s=e=>{const t=e.target.value;r({fontSize:t})};return q.jsxs("div",{className:`${ge} ${e||""} ${n?"":Se} ${"high-contrast"===t.colorScheme?Oe:""}`,children:[q.jsx("h4",{className:ve,children:"Размер шрифта"}),q.jsx("div",{className:ke,role:"radiogroup","aria-labelledby":"font-size-title",children:Le.map(e=>q.jsxs("label",{className:`${je} ${o===e.value?xe:""} ${n?"":Ee}`,children:[q.jsx("input",{type:"radio",name:"fontSize",value:e.value,checked:o===e.value,onChange:s,className:Ne,"aria-describedby":`font-size-${e.value}-description`,disabled:!n}),q.jsxs("div",{className:Ce,children:[q.jsx("span",{className:Ae,children:e.label}),q.jsx("span",{id:`font-size-${e.value}-description`,className:Te,children:e.description})]}),q.jsx("div",{className:we,"aria-hidden":"true"})]},e.value))})]})},Ie="_imageControl_hkxkm_9",ze="_disabled_hkxkm_12",Me="_title_hkxkm_12",Re="_switchContainer_hkxkm_23",He="_switchLabel_hkxkm_29",Pe="_switchDisabled_hkxkm_49",De="_switchInput_hkxkm_59",Fe="_switchSlider_hkxkm_66",qe="_switchThumb_hkxkm_72",Ge="_switchText_hkxkm_98",Be="_description_hkxkm_106",Ue="_highContrastMode_hkxkm_114",Ve=({className:e})=>{const{settings:t,updateSettings:r}=U(),o=t.showImages,n=t.isEnabled;return q.jsxs("div",{className:`${Ie} ${e||""} ${n?"":ze} ${"high-contrast"===t.colorScheme?Ue:""}`,children:[q.jsx("h4",{className:Me,children:"Изображения"}),q.jsxs("div",{className:Re,children:[q.jsxs("label",{className:`${He} ${n?"":Pe}`,children:[q.jsx("input",{type:"checkbox",checked:o,onChange:e=>{r({showImages:e.target.checked})},className:De,"aria-describedby":"image-control-description",disabled:!n}),q.jsx("span",{className:Fe,"aria-hidden":"true",children:q.jsx("span",{className:qe})}),q.jsx("span",{className:Ge,children:o?"Показывать изображения":"Скрывать изображения"})]}),q.jsx("p",{id:"image-control-description",className:Be,children:o?"Изображения отображаются на странице":"Изображения скрыты для лучшей концентрации на тексте"})]})]})},Je="_stickyContainer_18ltw_9",Ke="_panel_18ltw_21",Ye="_top-right_18ltw_36",We="_top-left_18ltw_40",Xe="_bottom-right_18ltw_44",Qe="_bottom-left_18ltw_52",Ze="_header_18ltw_73",et="_title_18ltw_82",tt="_closeButton_18ltw_90",rt="_description_18ltw_121",ot="_content_18ltw_129",nt="_controls_18ltw_149",st="_highContrastMode_18ltw_155",at="_slideIn_18ltw_1",lt={stickyContainer:Je,panel:Ke,"top-right":"_top-right_18ltw_36",topRight:Ye,"top-left":"_top-left_18ltw_40",topLeft:We,"bottom-right":"_bottom-right_18ltw_44",bottomRight:Xe,"bottom-left":"_bottom-left_18ltw_52",bottomLeft:Qe,header:Ze,title:et,closeButton:tt,description:rt,content:ot,controls:nt,highContrastMode:st,slideIn:at},it=Object.freeze(Object.defineProperty({__proto__:null,bottomLeft:Qe,bottomRight:Xe,closeButton:tt,content:ot,controls:nt,default:lt,description:rt,header:Ze,highContrastMode:st,panel:Ke,slideIn:at,stickyContainer:Je,title:et,topLeft:We,topRight:Ye},Symbol.toStringTag,{value:"Module"})),ct="object"==typeof it&&lt?lt:lt||it,dt=({isOpen:e,onClose:r,position:o="top-right"})=>{const n=t.useRef(null);t.useEffect(()=>{if(!e)return;const t=e=>{n.current&&!n.current.contains(e.target)&&r()},o=setTimeout(()=>{document.addEventListener("mousedown",t)},100);return()=>{clearTimeout(o),document.removeEventListener("mousedown",t)}},[e,r]),t.useEffect(()=>{if(!e)return;const t=e=>{"Escape"===e.key&&r()};return document.addEventListener("keydown",t),()=>{document.removeEventListener("keydown",t)}},[e,r]);if(!e)return null;const{settings:s}=U();return q.jsx("div",{className:h(ct.stickyContainer),children:q.jsxs("div",{ref:n,className:h(ct.panel,ct[o],"high-contrast"===s.colorScheme&&ct.highContrastMode),role:"dialog","aria-modal":"true","aria-labelledby":"accessibility-panel-title","aria-describedby":"accessibility-panel-description",children:[q.jsxs("div",{className:h(ct.header),children:[q.jsx("h3",{id:"accessibility-panel-title",className:h(ct.title),children:"Настройки доступности"}),q.jsx("button",{onClick:e=>{e.preventDefault(),e.stopPropagation(),r()},className:h(ct.closeButton),"aria-label":"Закрыть панель настроек доступности",type:"button",children:"×"})]}),q.jsx("div",{id:"accessibility-panel-description",className:h(ct.description),children:"Настройте отображение страницы для улучшения доступности"}),q.jsxs("div",{className:h(ct.content),children:[q.jsx(oe,{}),q.jsxs("div",{className:h(ct.controls),children:[q.jsx(be,{}),q.jsx($e,{}),q.jsx(Ve,{})]})]})]})})};e.AccessibilityPanel=e=>q.jsx(B,{children:q.jsx(dt,{...e})}),e.AccessibilityProvider=B,e.AccessibilityToggle=oe,e.CSS_CLASSES=C,e.ColorSchemeControl=be,e.DEFAULT_ACCESSIBILITY_SETTINGS=r,e.FontSizeControl=$e,e.ImageControl=Ve,e.STORAGE_KEY=o,e.applyAllSettings=$,e.applyClassToElements=d,e.applyColorScheme=A,e.applyDynamicFontSize=w,e.applyFontSize=T,e.applyImageVisibility=O,e.applySettingIfEnabled=(e,t,r)=>{if(e)switch(t){case"colorScheme":A(r);break;case"fontSize":T(r);break;case"imageVisibility":O(r);break;default:console.warn(`Неизвестный тип настройки: ${t}`)}},e.clearStorage=a,e.getImageElements=c,e.getTextElements=i,e.isDOMAvailable=p,e.isFontSizeModified=()=>{if(!p())return!1;const e=i();for(let t=0;t<Math.min(e.length,10);t++)if(e[t].hasAttribute(b))return!0;return!1},e.loadFromStorage=s,e.removeAllAccessibilityStyles=L,e.removeClassFromElements=u,e.resetAllFontSizes=E,e.safeDOMOperation=f,e.safeLocalStorageOperation=(e,t,r)=>{try{return e()}catch(o){return console.warn(r,o),t}},e.saveToStorage=n,e.updateNewElementsFontSize=N,e.useAccessibilityContext=U,e.useAccessibilitySetting=e=>{const{settings:r,updateSettings:o}=M(),n=t.useCallback(t=>{o({[e]:t})},[e,o]);return[r[e],n]},e.useAccessibilitySettings=M,e.useAccessibilityToggle=()=>{const{settings:e,updateSettings:r}=M(),o=t.useCallback(e=>{r({isEnabled:e})},[r]);return[e.isEnabled,o]},e.validateSettings=l,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})});
16
16
  //# sourceMappingURL=index.umd.js.map
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- @charset "UTF-8";._accessibilityToggle_kpjm6_9{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #dee2e6}._toggleContainer_kpjm6_15{display:flex;flex-direction:column;gap:8px}._toggleLabel_kpjm6_21{display:flex;align-items:center;gap:16px;cursor:pointer;padding:16px;border:2px solid #007bff;border-radius:8px;transition:all .2s ease;background:#f8f9ff}._toggleLabel_kpjm6_21:hover{background:#e3f2fd;border-color:#0056b3}._toggleLabel_kpjm6_21:focus-within{background:#e3f2fd;border-color:#0056b3;box-shadow:0 0 0 3px #007bff40}._toggleInput_kpjm6_42{position:absolute;opacity:0;width:0;height:0;margin:0}._toggleInput_kpjm6_42:focus+._toggleSlider_kpjm6_49{box-shadow:0 0 0 3px #007bff40}._toggleInput_kpjm6_42:checked+._toggleSlider_kpjm6_49{background:#28a745}._toggleInput_kpjm6_42:checked+._toggleSlider_kpjm6_49 ._toggleThumb_kpjm6_55{transform:translate(28px)}._toggleSlider_kpjm6_49{position:relative;width:56px;height:28px;background:#ced4da;border-radius:14px;transition:all .3s ease;flex-shrink:0}._toggleThumb_kpjm6_55{position:absolute;top:2px;left:2px;width:24px;height:24px;background:#fff;border-radius:50%;transition:transform .3s ease;box-shadow:0 2px 6px #0000004d}._toggleContent_kpjm6_81{flex:1;display:flex;flex-direction:column;gap:4px}._toggleTitle_kpjm6_88{font-size:16px;font-weight:600;color:#343a40;line-height:1.3}._toggleStatus_kpjm6_95{font-size:14px;font-weight:500;color:#007bff;line-height:1.2}._description_kpjm6_102{font-size:13px;color:#6c757d;line-height:1.4;margin:0;padding:0 16px}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110{border-bottom-color:#fff!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleLabel_kpjm6_21{background:#000!important;border-color:#fff!important;color:#fff!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleLabel_kpjm6_21:hover,._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleLabel_kpjm6_21:focus-within{background:#343a40!important;border-color:#ff0!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleTitle_kpjm6_88{color:#fff!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleStatus_kpjm6_95{color:#ff0!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._description_kpjm6_102{color:#ced4da!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleSlider_kpjm6_49{background:#6c757d!important;border:2px solid #ffffff!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleInput_kpjm6_42:checked+._toggleSlider_kpjm6_49{background:#ff0!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleInput_kpjm6_42:checked+._toggleSlider_kpjm6_49 ._toggleThumb_kpjm6_55{background:#000!important;border:2px solid #ffffff!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleThumb_kpjm6_55{background:#fff!important;border:2px solid #000000!important}._colorSchemeControl_1kr72_9{margin-bottom:16px}._colorSchemeControl_1kr72_9._disabled_1kr72_12 ._title_1kr72_12{opacity:.6}._title_1kr72_12{font-size:14px;font-weight:600;margin:0 0 12px;color:#343a40}._optionsContainer_1kr72_23{display:flex;flex-direction:column;gap:8px}._option_1kr72_23{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:12px;border:1px solid #dee2e6;border-radius:6px;transition:all .2s ease;position:relative;background:#fff}._option_1kr72_23:hover{background:#f8f9fa;border-color:#007bff}._option_1kr72_23:focus-within{background:#f8f9fa;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}._option_1kr72_23._selected_1kr72_50{background:#e3f2fd;border-color:#007bff}._option_1kr72_23._selected_1kr72_50 ._radioIndicator_1kr72_54{background:#007bff;border-color:#007bff}._option_1kr72_23._selected_1kr72_50 ._radioIndicator_1kr72_54:after{opacity:1;transform:scale(1)}._option_1kr72_23._optionDisabled_1kr72_62{opacity:.5;cursor:not-allowed;pointer-events:none}._option_1kr72_23._optionDisabled_1kr72_62:hover{background:#fff;border-color:#dee2e6}._radioInput_1kr72_72{position:absolute;opacity:0;width:0;height:0;margin:0}._radioInput_1kr72_72:focus+._optionContent_1kr72_79{outline:2px solid #007bff;outline-offset:2px}._optionContent_1kr72_79{flex:1;display:flex;flex-direction:column;gap:4px}._optionLabel_1kr72_91{font-size:14px;font-weight:500;color:#343a40;line-height:1.4}._optionDescription_1kr72_98{font-size:12px;color:#6c757d;line-height:1.3}._radioIndicator_1kr72_54{width:18px;height:18px;border:2px solid #ced4da;border-radius:50%;background:#fff;transition:all .2s ease;position:relative;flex-shrink:0;margin-top:1px}._radioIndicator_1kr72_54:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;background:#fff;border-radius:50%;transform:translate(-50%,-50%) scale(0);transition:all .2s ease;opacity:0}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._title_1kr72_12{color:#fff!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._option_1kr72_23{background:#000!important;border-color:#fff!important;color:#fff!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._option_1kr72_23:hover,._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._option_1kr72_23:focus-within{background:#343a40!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._option_1kr72_23._selected_1kr72_50{background:#343a40!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._optionLabel_1kr72_91{color:#fff!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._optionDescription_1kr72_98{color:#ced4da!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._radioIndicator_1kr72_54{border-color:#fff!important;background:#000!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._radioIndicator_1kr72_54:after{background:#fff!important}._fontSizeControl_1c68l_9{margin-bottom:16px}._fontSizeControl_1c68l_9._disabled_1c68l_12 ._title_1c68l_12{opacity:.6}._title_1c68l_12{font-size:14px;font-weight:600;margin:0 0 12px;color:#343a40}._optionsContainer_1c68l_23{display:flex;flex-direction:column;gap:8px}._option_1c68l_23{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:12px;border:1px solid #dee2e6;border-radius:6px;transition:all .2s ease;position:relative;background:#fff}._option_1c68l_23:hover{background:#f8f9fa;border-color:#007bff}._option_1c68l_23:focus-within{background:#f8f9fa;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}._option_1c68l_23._selected_1c68l_50{background:#e3f2fd;border-color:#007bff}._option_1c68l_23._selected_1c68l_50 ._radioIndicator_1c68l_54{background:#007bff;border-color:#007bff}._option_1c68l_23._selected_1c68l_50 ._radioIndicator_1c68l_54:after{opacity:1;transform:scale(1)}._option_1c68l_23._optionDisabled_1c68l_62{opacity:.5;cursor:not-allowed;pointer-events:none}._option_1c68l_23._optionDisabled_1c68l_62:hover{background:#fff;border-color:#dee2e6}._radioInput_1c68l_72{position:absolute;opacity:0;width:0;height:0;margin:0}._radioInput_1c68l_72:focus+._optionContent_1c68l_79{outline:2px solid #007bff;outline-offset:2px}._optionContent_1c68l_79{flex:1;display:flex;flex-direction:column;gap:4px}._optionLabel_1c68l_91{font-size:14px;font-weight:500;color:#343a40;line-height:1.4}._optionDescription_1c68l_98{font-size:12px;color:#6c757d;line-height:1.3}._radioIndicator_1c68l_54{width:18px;height:18px;border:2px solid #ced4da;border-radius:50%;background:#fff;transition:all .2s ease;position:relative;flex-shrink:0;margin-top:1px}._radioIndicator_1c68l_54:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;background:#fff;border-radius:50%;transform:translate(-50%,-50%) scale(0);transition:all .2s ease;opacity:0}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._title_1c68l_12{color:#fff!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._option_1c68l_23{background:#000!important;border-color:#fff!important;color:#fff!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._option_1c68l_23:hover,._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._option_1c68l_23:focus-within{background:#343a40!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._option_1c68l_23._selected_1c68l_50{background:#343a40!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._optionLabel_1c68l_91{color:#fff!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._optionDescription_1c68l_98{color:#ced4da!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._radioIndicator_1c68l_54{border-color:#fff!important;background:#000!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._radioIndicator_1c68l_54:after{background:#fff!important}._imageControl_hkxkm_9{margin-bottom:16px}._imageControl_hkxkm_9._disabled_hkxkm_12 ._title_hkxkm_12{opacity:.6}._title_hkxkm_12{font-size:14px;font-weight:600;margin:0 0 12px;color:#343a40}._switchContainer_hkxkm_23{display:flex;flex-direction:column;gap:8px}._switchLabel_hkxkm_29{display:flex;align-items:center;gap:12px;cursor:pointer;padding:12px;border:1px solid #dee2e6;border-radius:6px;transition:all .2s ease;background:#fff}._switchLabel_hkxkm_29:hover{background:#f8f9fa;border-color:#007bff}._switchLabel_hkxkm_29:focus-within{background:#f8f9fa;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}._switchLabel_hkxkm_29._switchDisabled_hkxkm_49{opacity:.5;cursor:not-allowed;pointer-events:none}._switchLabel_hkxkm_29._switchDisabled_hkxkm_49:hover{background:#fff;border-color:#dee2e6}._switchInput_hkxkm_59{position:absolute;opacity:0;width:0;height:0;margin:0}._switchInput_hkxkm_59:focus+._switchSlider_hkxkm_66{box-shadow:0 0 0 2px #007bff40}._switchInput_hkxkm_59:checked+._switchSlider_hkxkm_66{background:#007bff}._switchInput_hkxkm_59:checked+._switchSlider_hkxkm_66 ._switchThumb_hkxkm_72{transform:translate(20px)}._switchSlider_hkxkm_66{position:relative;width:44px;height:24px;background:#ced4da;border-radius:12px;transition:all .2s ease;flex-shrink:0}._switchThumb_hkxkm_72{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 2px 4px #0003}._switchText_hkxkm_98{font-size:14px;font-weight:500;color:#343a40;line-height:1.4;flex:1}._description_hkxkm_106{font-size:12px;color:#6c757d;line-height:1.3;margin:0;padding-left:56px}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._title_hkxkm_12{color:#fff!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchLabel_hkxkm_29{background:#000!important;border-color:#fff!important;color:#fff!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchLabel_hkxkm_29:hover,._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchLabel_hkxkm_29:focus-within{background:#343a40!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchText_hkxkm_98{color:#fff!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._description_hkxkm_106{color:#ced4da!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchSlider_hkxkm_66{background:#6c757d!important;border:1px solid #ffffff!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchInput_hkxkm_59:checked+._switchSlider_hkxkm_66{background:#fff!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchInput_hkxkm_59:checked+._switchSlider_hkxkm_66 ._switchThumb_hkxkm_72{background:#000!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchThumb_hkxkm_72{background:#fff!important;border:1px solid #000000!important}._stickyContainer_lzoik_9{position:fixed;top:70px;right:0;left:0;pointer-events:none;z-index:1000}@media (max-width: 767px){._stickyContainer_lzoik_9{top:60px}}._panel_lzoik_23{position:sticky;top:20px;width:360px;max-width:calc(100vw - 40px);max-height:calc(100vh - 40px);background:#fff;border:1px solid #dee2e6;border-radius:12px;box-shadow:0 8px 32px #0000001f;overflow:hidden;display:flex;flex-direction:column;pointer-events:auto}._panel_lzoik_23._top-right_lzoik_38{margin-left:auto;margin-right:20px}._panel_lzoik_23._top-left_lzoik_42{margin-left:20px;margin-right:auto}._panel_lzoik_23._bottom-right_lzoik_46{margin-left:auto;margin-right:20px;position:fixed;top:auto;bottom:20px;width:360px}._panel_lzoik_23._bottom-left_lzoik_54{margin-left:20px;margin-right:auto;position:fixed;top:auto;bottom:20px;width:360px}@media (max-width: 767px){._panel_lzoik_23{width:calc(100vw - 32px);max-height:calc(100vh - 100px);margin-left:16px;margin-right:16px}._panel_lzoik_23._top-right_lzoik_38,._panel_lzoik_23._top-left_lzoik_42,._panel_lzoik_23._bottom-right_lzoik_46,._panel_lzoik_23._bottom-left_lzoik_54{margin-left:16px;margin-right:16px}}._header_lzoik_75{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid #e9ecef;background:#f8f9fa}._title_lzoik_84{margin:0;font-size:18px;font-weight:600;color:#343a40;line-height:1.3}._closeButton_lzoik_92{background:none;border:none;font-size:24px;font-weight:300;color:#6c757d;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease;line-height:1;width:32px;height:32px;display:flex;align-items:center;justify-content:center}._closeButton_lzoik_92:hover{background:#e9ecef;color:#343a40}._closeButton_lzoik_92:focus{outline:2px solid #007bff;outline-offset:2px;background:#e9ecef;color:#343a40}._closeButton_lzoik_92:active{background:#dee2e6}._description_lzoik_123{padding:16px 24px 0;font-size:14px;color:#6c757d;line-height:1.4;margin:0}._content_lzoik_131{flex:1;padding:20px 24px 24px;overflow-y:auto}._content_lzoik_131::-webkit-scrollbar{width:6px}._content_lzoik_131::-webkit-scrollbar-track{background:#e9ecef;border-radius:3px}._content_lzoik_131::-webkit-scrollbar-thumb{background:#ced4da;border-radius:3px}._content_lzoik_131::-webkit-scrollbar-thumb:hover{background:#adb5bd}._controls_lzoik_151{display:flex;flex-direction:column;gap:4px}._panel_lzoik_23._highContrastMode_lzoik_157{background:#000!important;border-color:#fff!important;color:#fff!important}._panel_lzoik_23._highContrastMode_lzoik_157 ._header_lzoik_75{background:#000!important;border-bottom-color:#fff!important}._panel_lzoik_23._highContrastMode_lzoik_157 ._title_lzoik_84{color:#fff!important}._panel_lzoik_23._highContrastMode_lzoik_157 ._closeButton_lzoik_92{color:#fff!important;border:1px solid #ffffff!important}._panel_lzoik_23._highContrastMode_lzoik_157 ._closeButton_lzoik_92:hover,._panel_lzoik_23._highContrastMode_lzoik_157 ._closeButton_lzoik_92:focus{background:#343a40!important;color:#ff0!important}._panel_lzoik_23._highContrastMode_lzoik_157 ._closeButton_lzoik_92:active{background:#6c757d!important}._panel_lzoik_23._highContrastMode_lzoik_157 ._description_lzoik_123{color:#ced4da!important}._panel_lzoik_23._highContrastMode_lzoik_157 ._content_lzoik_131::-webkit-scrollbar-track{background:#343a40!important}._panel_lzoik_23._highContrastMode_lzoik_157 ._content_lzoik_131::-webkit-scrollbar-thumb{background:#6c757d!important}._panel_lzoik_23._highContrastMode_lzoik_157 ._content_lzoik_131::-webkit-scrollbar-thumb:hover{background:#adb5bd!important}@keyframes _slideIn_lzoik_1{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}._panel_lzoik_23{animation:_slideIn_lzoik_1 .2s ease}
1
+ @charset "UTF-8";._accessibilityToggle_kpjm6_9{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #dee2e6}._toggleContainer_kpjm6_15{display:flex;flex-direction:column;gap:8px}._toggleLabel_kpjm6_21{display:flex;align-items:center;gap:16px;cursor:pointer;padding:16px;border:2px solid #007bff;border-radius:8px;transition:all .2s ease;background:#f8f9ff}._toggleLabel_kpjm6_21:hover{background:#e3f2fd;border-color:#0056b3}._toggleLabel_kpjm6_21:focus-within{background:#e3f2fd;border-color:#0056b3;box-shadow:0 0 0 3px #007bff40}._toggleInput_kpjm6_42{position:absolute;opacity:0;width:0;height:0;margin:0}._toggleInput_kpjm6_42:focus+._toggleSlider_kpjm6_49{box-shadow:0 0 0 3px #007bff40}._toggleInput_kpjm6_42:checked+._toggleSlider_kpjm6_49{background:#28a745}._toggleInput_kpjm6_42:checked+._toggleSlider_kpjm6_49 ._toggleThumb_kpjm6_55{transform:translate(28px)}._toggleSlider_kpjm6_49{position:relative;width:56px;height:28px;background:#ced4da;border-radius:14px;transition:all .3s ease;flex-shrink:0}._toggleThumb_kpjm6_55{position:absolute;top:2px;left:2px;width:24px;height:24px;background:#fff;border-radius:50%;transition:transform .3s ease;box-shadow:0 2px 6px #0000004d}._toggleContent_kpjm6_81{flex:1;display:flex;flex-direction:column;gap:4px}._toggleTitle_kpjm6_88{font-size:16px;font-weight:600;color:#343a40;line-height:1.3}._toggleStatus_kpjm6_95{font-size:14px;font-weight:500;color:#007bff;line-height:1.2}._description_kpjm6_102{font-size:13px;color:#6c757d;line-height:1.4;margin:0;padding:0 16px}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110{border-bottom-color:#fff!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleLabel_kpjm6_21{background:#000!important;border-color:#fff!important;color:#fff!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleLabel_kpjm6_21:hover,._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleLabel_kpjm6_21:focus-within{background:#343a40!important;border-color:#ff0!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleTitle_kpjm6_88{color:#fff!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleStatus_kpjm6_95{color:#ff0!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._description_kpjm6_102{color:#ced4da!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleSlider_kpjm6_49{background:#6c757d!important;border:2px solid #ffffff!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleInput_kpjm6_42:checked+._toggleSlider_kpjm6_49{background:#ff0!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleInput_kpjm6_42:checked+._toggleSlider_kpjm6_49 ._toggleThumb_kpjm6_55{background:#000!important;border:2px solid #ffffff!important}._accessibilityToggle_kpjm6_9._highContrastMode_kpjm6_110 ._toggleThumb_kpjm6_55{background:#fff!important;border:2px solid #000000!important}._colorSchemeControl_1kr72_9{margin-bottom:16px}._colorSchemeControl_1kr72_9._disabled_1kr72_12 ._title_1kr72_12{opacity:.6}._title_1kr72_12{font-size:14px;font-weight:600;margin:0 0 12px;color:#343a40}._optionsContainer_1kr72_23{display:flex;flex-direction:column;gap:8px}._option_1kr72_23{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:12px;border:1px solid #dee2e6;border-radius:6px;transition:all .2s ease;position:relative;background:#fff}._option_1kr72_23:hover{background:#f8f9fa;border-color:#007bff}._option_1kr72_23:focus-within{background:#f8f9fa;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}._option_1kr72_23._selected_1kr72_50{background:#e3f2fd;border-color:#007bff}._option_1kr72_23._selected_1kr72_50 ._radioIndicator_1kr72_54{background:#007bff;border-color:#007bff}._option_1kr72_23._selected_1kr72_50 ._radioIndicator_1kr72_54:after{opacity:1;transform:scale(1)}._option_1kr72_23._optionDisabled_1kr72_62{opacity:.5;cursor:not-allowed;pointer-events:none}._option_1kr72_23._optionDisabled_1kr72_62:hover{background:#fff;border-color:#dee2e6}._radioInput_1kr72_72{position:absolute;opacity:0;width:0;height:0;margin:0}._radioInput_1kr72_72:focus+._optionContent_1kr72_79{outline:2px solid #007bff;outline-offset:2px}._optionContent_1kr72_79{flex:1;display:flex;flex-direction:column;gap:4px}._optionLabel_1kr72_91{font-size:14px;font-weight:500;color:#343a40;line-height:1.4}._optionDescription_1kr72_98{font-size:12px;color:#6c757d;line-height:1.3}._radioIndicator_1kr72_54{width:18px;height:18px;border:2px solid #ced4da;border-radius:50%;background:#fff;transition:all .2s ease;position:relative;flex-shrink:0;margin-top:1px}._radioIndicator_1kr72_54:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;background:#fff;border-radius:50%;transform:translate(-50%,-50%) scale(0);transition:all .2s ease;opacity:0}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._title_1kr72_12{color:#fff!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._option_1kr72_23{background:#000!important;border-color:#fff!important;color:#fff!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._option_1kr72_23:hover,._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._option_1kr72_23:focus-within{background:#343a40!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._option_1kr72_23._selected_1kr72_50{background:#343a40!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._optionLabel_1kr72_91{color:#fff!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._optionDescription_1kr72_98{color:#ced4da!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._radioIndicator_1kr72_54{border-color:#fff!important;background:#000!important}._colorSchemeControl_1kr72_9._highContrastMode_1kr72_129 ._radioIndicator_1kr72_54:after{background:#fff!important}._fontSizeControl_1c68l_9{margin-bottom:16px}._fontSizeControl_1c68l_9._disabled_1c68l_12 ._title_1c68l_12{opacity:.6}._title_1c68l_12{font-size:14px;font-weight:600;margin:0 0 12px;color:#343a40}._optionsContainer_1c68l_23{display:flex;flex-direction:column;gap:8px}._option_1c68l_23{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:12px;border:1px solid #dee2e6;border-radius:6px;transition:all .2s ease;position:relative;background:#fff}._option_1c68l_23:hover{background:#f8f9fa;border-color:#007bff}._option_1c68l_23:focus-within{background:#f8f9fa;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}._option_1c68l_23._selected_1c68l_50{background:#e3f2fd;border-color:#007bff}._option_1c68l_23._selected_1c68l_50 ._radioIndicator_1c68l_54{background:#007bff;border-color:#007bff}._option_1c68l_23._selected_1c68l_50 ._radioIndicator_1c68l_54:after{opacity:1;transform:scale(1)}._option_1c68l_23._optionDisabled_1c68l_62{opacity:.5;cursor:not-allowed;pointer-events:none}._option_1c68l_23._optionDisabled_1c68l_62:hover{background:#fff;border-color:#dee2e6}._radioInput_1c68l_72{position:absolute;opacity:0;width:0;height:0;margin:0}._radioInput_1c68l_72:focus+._optionContent_1c68l_79{outline:2px solid #007bff;outline-offset:2px}._optionContent_1c68l_79{flex:1;display:flex;flex-direction:column;gap:4px}._optionLabel_1c68l_91{font-size:14px;font-weight:500;color:#343a40;line-height:1.4}._optionDescription_1c68l_98{font-size:12px;color:#6c757d;line-height:1.3}._radioIndicator_1c68l_54{width:18px;height:18px;border:2px solid #ced4da;border-radius:50%;background:#fff;transition:all .2s ease;position:relative;flex-shrink:0;margin-top:1px}._radioIndicator_1c68l_54:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;background:#fff;border-radius:50%;transform:translate(-50%,-50%) scale(0);transition:all .2s ease;opacity:0}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._title_1c68l_12{color:#fff!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._option_1c68l_23{background:#000!important;border-color:#fff!important;color:#fff!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._option_1c68l_23:hover,._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._option_1c68l_23:focus-within{background:#343a40!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._option_1c68l_23._selected_1c68l_50{background:#343a40!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._optionLabel_1c68l_91{color:#fff!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._optionDescription_1c68l_98{color:#ced4da!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._radioIndicator_1c68l_54{border-color:#fff!important;background:#000!important}._fontSizeControl_1c68l_9._highContrastMode_1c68l_129 ._radioIndicator_1c68l_54:after{background:#fff!important}._imageControl_hkxkm_9{margin-bottom:16px}._imageControl_hkxkm_9._disabled_hkxkm_12 ._title_hkxkm_12{opacity:.6}._title_hkxkm_12{font-size:14px;font-weight:600;margin:0 0 12px;color:#343a40}._switchContainer_hkxkm_23{display:flex;flex-direction:column;gap:8px}._switchLabel_hkxkm_29{display:flex;align-items:center;gap:12px;cursor:pointer;padding:12px;border:1px solid #dee2e6;border-radius:6px;transition:all .2s ease;background:#fff}._switchLabel_hkxkm_29:hover{background:#f8f9fa;border-color:#007bff}._switchLabel_hkxkm_29:focus-within{background:#f8f9fa;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}._switchLabel_hkxkm_29._switchDisabled_hkxkm_49{opacity:.5;cursor:not-allowed;pointer-events:none}._switchLabel_hkxkm_29._switchDisabled_hkxkm_49:hover{background:#fff;border-color:#dee2e6}._switchInput_hkxkm_59{position:absolute;opacity:0;width:0;height:0;margin:0}._switchInput_hkxkm_59:focus+._switchSlider_hkxkm_66{box-shadow:0 0 0 2px #007bff40}._switchInput_hkxkm_59:checked+._switchSlider_hkxkm_66{background:#007bff}._switchInput_hkxkm_59:checked+._switchSlider_hkxkm_66 ._switchThumb_hkxkm_72{transform:translate(20px)}._switchSlider_hkxkm_66{position:relative;width:44px;height:24px;background:#ced4da;border-radius:12px;transition:all .2s ease;flex-shrink:0}._switchThumb_hkxkm_72{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 2px 4px #0003}._switchText_hkxkm_98{font-size:14px;font-weight:500;color:#343a40;line-height:1.4;flex:1}._description_hkxkm_106{font-size:12px;color:#6c757d;line-height:1.3;margin:0;padding-left:56px}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._title_hkxkm_12{color:#fff!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchLabel_hkxkm_29{background:#000!important;border-color:#fff!important;color:#fff!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchLabel_hkxkm_29:hover,._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchLabel_hkxkm_29:focus-within{background:#343a40!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchText_hkxkm_98{color:#fff!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._description_hkxkm_106{color:#ced4da!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchSlider_hkxkm_66{background:#6c757d!important;border:1px solid #ffffff!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchInput_hkxkm_59:checked+._switchSlider_hkxkm_66{background:#fff!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchInput_hkxkm_59:checked+._switchSlider_hkxkm_66 ._switchThumb_hkxkm_72{background:#000!important}._imageControl_hkxkm_9._highContrastMode_hkxkm_114 ._switchThumb_hkxkm_72{background:#fff!important;border:1px solid #000000!important}._stickyContainer_18ltw_9{position:fixed;top:70px;pointer-events:none;z-index:1000}@media (max-width: 767px){._stickyContainer_18ltw_9{top:60px}}._panel_18ltw_21{position:sticky;top:20px;width:360px;max-width:calc(100vw - 40px);max-height:calc(100vh - 40px);background:#fff;border:1px solid #dee2e6;border-radius:12px;box-shadow:0 8px 32px #0000001f;overflow:hidden;display:flex;flex-direction:column;pointer-events:auto}._panel_18ltw_21._top-right_18ltw_36{margin-left:auto;margin-right:20px}._panel_18ltw_21._top-left_18ltw_40{margin-left:20px;margin-right:auto}._panel_18ltw_21._bottom-right_18ltw_44{margin-left:auto;margin-right:20px;position:fixed;top:auto;bottom:20px;width:360px}._panel_18ltw_21._bottom-left_18ltw_52{margin-left:20px;margin-right:auto;position:fixed;top:auto;bottom:20px;width:360px}@media (max-width: 767px){._panel_18ltw_21{width:calc(100vw - 32px);max-height:calc(100vh - 100px);margin-left:16px;margin-right:16px}._panel_18ltw_21._top-right_18ltw_36,._panel_18ltw_21._top-left_18ltw_40,._panel_18ltw_21._bottom-right_18ltw_44,._panel_18ltw_21._bottom-left_18ltw_52{margin-left:16px;margin-right:16px}}._header_18ltw_73{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid #e9ecef;background:#f8f9fa}._title_18ltw_82{margin:0;font-size:18px;font-weight:600;color:#343a40;line-height:1.3}._closeButton_18ltw_90{background:none;border:none;font-size:24px;font-weight:300;color:#6c757d;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease;line-height:1;width:32px;height:32px;display:flex;align-items:center;justify-content:center}._closeButton_18ltw_90:hover{background:#e9ecef;color:#343a40}._closeButton_18ltw_90:focus{outline:2px solid #007bff;outline-offset:2px;background:#e9ecef;color:#343a40}._closeButton_18ltw_90:active{background:#dee2e6}._description_18ltw_121{padding:16px 24px 0;font-size:14px;color:#6c757d;line-height:1.4;margin:0}._content_18ltw_129{flex:1;padding:20px 24px 24px;overflow-y:auto}._content_18ltw_129::-webkit-scrollbar{width:6px}._content_18ltw_129::-webkit-scrollbar-track{background:#e9ecef;border-radius:3px}._content_18ltw_129::-webkit-scrollbar-thumb{background:#ced4da;border-radius:3px}._content_18ltw_129::-webkit-scrollbar-thumb:hover{background:#adb5bd}._controls_18ltw_149{display:flex;flex-direction:column;gap:4px}._panel_18ltw_21._highContrastMode_18ltw_155{background:#000!important;border-color:#fff!important;color:#fff!important}._panel_18ltw_21._highContrastMode_18ltw_155 ._header_18ltw_73{background:#000!important;border-bottom-color:#fff!important}._panel_18ltw_21._highContrastMode_18ltw_155 ._title_18ltw_82{color:#fff!important}._panel_18ltw_21._highContrastMode_18ltw_155 ._closeButton_18ltw_90{color:#fff!important;border:1px solid #ffffff!important}._panel_18ltw_21._highContrastMode_18ltw_155 ._closeButton_18ltw_90:hover,._panel_18ltw_21._highContrastMode_18ltw_155 ._closeButton_18ltw_90:focus{background:#343a40!important;color:#ff0!important}._panel_18ltw_21._highContrastMode_18ltw_155 ._closeButton_18ltw_90:active{background:#6c757d!important}._panel_18ltw_21._highContrastMode_18ltw_155 ._description_18ltw_121{color:#ced4da!important}._panel_18ltw_21._highContrastMode_18ltw_155 ._content_18ltw_129::-webkit-scrollbar-track{background:#343a40!important}._panel_18ltw_21._highContrastMode_18ltw_155 ._content_18ltw_129::-webkit-scrollbar-thumb{background:#6c757d!important}._panel_18ltw_21._highContrastMode_18ltw_155 ._content_18ltw_129::-webkit-scrollbar-thumb:hover{background:#adb5bd!important}@keyframes _slideIn_18ltw_1{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}._panel_18ltw_21{animation:_slideIn_18ltw_1 .2s ease}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vision-accessibility",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "description": "Универсальный компонент панели доступности для слабовидящих пользователей",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",
@@ -6,8 +6,6 @@
6
6
  .stickyContainer {
7
7
  position: fixed;
8
8
  top: 70px;
9
- right: 0;
10
- left: 0;
11
9
  pointer-events: none;
12
10
  z-index: 1000;
13
11
 
@@ -14,7 +14,7 @@
14
14
 
15
15
  /* Применяем стили ко всем элементам, включая панель доступности */
16
16
  * {
17
- background: #000 !important;
17
+ background: none !important;
18
18
  color: #fff !important;
19
19
  border-color: #fff !important;
20
20
  }