added api translate

This commit is contained in:
gerchek 2022-01-19 14:49:32 +05:00
parent 9ca137b819
commit 89d8fcd467
39 changed files with 934 additions and 342 deletions

View File

@ -1,23 +1,22 @@
{ {
"files": { "files": {
"main.css": "/static/css/main.cf150dc9.chunk.css", "main.css": "/static/css/main.5d6483a7.chunk.css",
"main.js": "/static/js/main.b94f9cbe.chunk.js", "main.js": "/static/js/main.e1f69784.chunk.js",
"main.js.map": "/static/js/main.b94f9cbe.chunk.js.map", "main.js.map": "/static/js/main.e1f69784.chunk.js.map",
"runtime-main.js": "/static/js/runtime-main.3dce0fb3.js", "runtime-main.js": "/static/js/runtime-main.80c04ae7.js",
"runtime-main.js.map": "/static/js/runtime-main.3dce0fb3.js.map", "runtime-main.js.map": "/static/js/runtime-main.80c04ae7.js.map",
"static/css/2.d555f809.chunk.css": "/static/css/2.d555f809.chunk.css", "static/css/2.d555f809.chunk.css": "/static/css/2.d555f809.chunk.css",
"static/js/2.04e38610.chunk.js": "/static/js/2.04e38610.chunk.js", "static/js/2.0380cb5b.chunk.js": "/static/js/2.0380cb5b.chunk.js",
"static/js/2.04e38610.chunk.js.map": "/static/js/2.04e38610.chunk.js.map", "static/js/2.0380cb5b.chunk.js.map": "/static/js/2.0380cb5b.chunk.js.map",
"static/js/3.3bfbe3a5.chunk.js": "/static/js/3.3bfbe3a5.chunk.js", "static/js/3.6828d12d.chunk.js": "/static/js/3.6828d12d.chunk.js",
"static/js/3.3bfbe3a5.chunk.js.map": "/static/js/3.3bfbe3a5.chunk.js.map", "static/js/3.6828d12d.chunk.js.map": "/static/js/3.6828d12d.chunk.js.map",
"index.html": "/index.html", "index.html": "/index.html",
"static/css/2.d555f809.chunk.css.map": "/static/css/2.d555f809.chunk.css.map", "static/css/2.d555f809.chunk.css.map": "/static/css/2.d555f809.chunk.css.map",
"static/css/main.cf150dc9.chunk.css.map": "/static/css/main.cf150dc9.chunk.css.map", "static/css/main.5d6483a7.chunk.css.map": "/static/css/main.5d6483a7.chunk.css.map",
"static/js/2.04e38610.chunk.js.LICENSE.txt": "/static/js/2.04e38610.chunk.js.LICENSE.txt", "static/js/2.0380cb5b.chunk.js.LICENSE.txt": "/static/js/2.0380cb5b.chunk.js.LICENSE.txt",
"static/media/airport.9ca79b5c.jpg": "/static/media/airport.9ca79b5c.jpg", "static/media/airport.9ca79b5c.jpg": "/static/media/airport.9ca79b5c.jpg",
"static/media/downArrow.0bea9b11.svg": "/static/media/downArrow.0bea9b11.svg", "static/media/downArrow.0bea9b11.svg": "/static/media/downArrow.0bea9b11.svg",
"static/media/emblemLogo.80dd243c.svg": "/static/media/emblemLogo.80dd243c.svg", "static/media/emblemLogo.80dd243c.svg": "/static/media/emblemLogo.80dd243c.svg",
"static/media/etalonImg.2f331caa.jpg": "/static/media/etalonImg.2f331caa.jpg",
"static/media/flagOfRussia.27852e17.svg": "/static/media/flagOfRussia.27852e17.svg", "static/media/flagOfRussia.27852e17.svg": "/static/media/flagOfRussia.27852e17.svg",
"static/media/flagOfTkm.76247a50.svg": "/static/media/flagOfTkm.76247a50.svg", "static/media/flagOfTkm.76247a50.svg": "/static/media/flagOfTkm.76247a50.svg",
"static/media/flagOfUK.fd46970f.svg": "/static/media/flagOfUK.fd46970f.svg", "static/media/flagOfUK.fd46970f.svg": "/static/media/flagOfUK.fd46970f.svg",
@ -54,10 +53,10 @@
"static/media/turkmenTv.7810c539.jpg": "/static/media/turkmenTv.7810c539.jpg" "static/media/turkmenTv.7810c539.jpg": "/static/media/turkmenTv.7810c539.jpg"
}, },
"entrypoints": [ "entrypoints": [
"static/js/runtime-main.3dce0fb3.js", "static/js/runtime-main.80c04ae7.js",
"static/css/2.d555f809.chunk.css", "static/css/2.d555f809.chunk.css",
"static/js/2.04e38610.chunk.js", "static/js/2.0380cb5b.chunk.js",
"static/css/main.cf150dc9.chunk.css", "static/css/main.5d6483a7.chunk.css",
"static/js/main.b94f9cbe.chunk.js" "static/js/main.e1f69784.chunk.js"
] ]
} }

View File

@ -1 +1 @@
<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><meta name="description" content="Web site created using create-react-app"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin/><link href="https://fonts.googleapis.com/css2?family=Open+Sans&display=swap" rel="stylesheet"/><link rel="apple-touch-icon" href="/logo192.png"/><link rel="manifest" href="/manifest.json"/><title>Etalon</title><link href="/static/css/2.d555f809.chunk.css" rel="stylesheet"><link href="/static/css/main.cf150dc9.chunk.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(e){function t(t){for(var n,a,i=t[0],c=t[1],l=t[2],s=0,p=[];s<i.length;s++)a=i[s],Object.prototype.hasOwnProperty.call(o,a)&&o[a]&&p.push(o[a][0]),o[a]=0;for(n in c)Object.prototype.hasOwnProperty.call(c,n)&&(e[n]=c[n]);for(f&&f(t);p.length;)p.shift()();return u.push.apply(u,l||[]),r()}function r(){for(var e,t=0;t<u.length;t++){for(var r=u[t],n=!0,i=1;i<r.length;i++){var c=r[i];0!==o[c]&&(n=!1)}n&&(u.splice(t--,1),e=a(a.s=r[0]))}return e}var n={},o={1:0},u=[];function a(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,a),r.l=!0,r.exports}a.e=function(e){var t=[],r=o[e];if(0!==r)if(r)t.push(r[2]);else{var n=new Promise((function(t,n){r=o[e]=[t,n]}));t.push(r[2]=n);var u,i=document.createElement("script");i.charset="utf-8",i.timeout=120,a.nc&&i.setAttribute("nonce",a.nc),i.src=function(e){return a.p+"static/js/"+({}[e]||e)+"."+{3:"3bfbe3a5"}[e]+".chunk.js"}(e);var c=new Error;u=function(t){i.onerror=i.onload=null,clearTimeout(l);var r=o[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),u=t&&t.target&&t.target.src;c.message="Loading chunk "+e+" failed.\n("+n+": "+u+")",c.name="ChunkLoadError",c.type=n,c.request=u,r[1](c)}o[e]=void 0}};var l=setTimeout((function(){u({type:"timeout",target:i})}),12e4);i.onerror=i.onload=u,document.head.appendChild(i)}return Promise.all(t)},a.m=e,a.c=n,a.d=function(e,t,r){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(a.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)a.d(r,n,function(t){return e[t]}.bind(null,n));return r},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="/",a.oe=function(e){throw console.error(e),e};var i=this["webpackJsonpreact-etalon"]=this["webpackJsonpreact-etalon"]||[],c=i.push.bind(i);i.push=t,i=i.slice();for(var l=0;l<i.length;l++)t(i[l]);var f=c;r()}([])</script><script src="/static/js/2.04e38610.chunk.js"></script><script src="/static/js/main.b94f9cbe.chunk.js"></script></body></html> <!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><meta name="description" content="Web site created using create-react-app"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin/><link href="https://fonts.googleapis.com/css2?family=Open+Sans&display=swap" rel="stylesheet"/><link rel="apple-touch-icon" href="/logo192.png"/><link rel="manifest" href="/manifest.json"/><title>Etalon</title><link href="/static/css/2.d555f809.chunk.css" rel="stylesheet"><link href="/static/css/main.5d6483a7.chunk.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(e){function t(t){for(var n,a,i=t[0],c=t[1],l=t[2],s=0,p=[];s<i.length;s++)a=i[s],Object.prototype.hasOwnProperty.call(o,a)&&o[a]&&p.push(o[a][0]),o[a]=0;for(n in c)Object.prototype.hasOwnProperty.call(c,n)&&(e[n]=c[n]);for(f&&f(t);p.length;)p.shift()();return u.push.apply(u,l||[]),r()}function r(){for(var e,t=0;t<u.length;t++){for(var r=u[t],n=!0,i=1;i<r.length;i++){var c=r[i];0!==o[c]&&(n=!1)}n&&(u.splice(t--,1),e=a(a.s=r[0]))}return e}var n={},o={1:0},u=[];function a(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,a),r.l=!0,r.exports}a.e=function(e){var t=[],r=o[e];if(0!==r)if(r)t.push(r[2]);else{var n=new Promise((function(t,n){r=o[e]=[t,n]}));t.push(r[2]=n);var u,i=document.createElement("script");i.charset="utf-8",i.timeout=120,a.nc&&i.setAttribute("nonce",a.nc),i.src=function(e){return a.p+"static/js/"+({}[e]||e)+"."+{3:"6828d12d"}[e]+".chunk.js"}(e);var c=new Error;u=function(t){i.onerror=i.onload=null,clearTimeout(l);var r=o[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),u=t&&t.target&&t.target.src;c.message="Loading chunk "+e+" failed.\n("+n+": "+u+")",c.name="ChunkLoadError",c.type=n,c.request=u,r[1](c)}o[e]=void 0}};var l=setTimeout((function(){u({type:"timeout",target:i})}),12e4);i.onerror=i.onload=u,document.head.appendChild(i)}return Promise.all(t)},a.m=e,a.c=n,a.d=function(e,t,r){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(a.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)a.d(r,n,function(t){return e[t]}.bind(null,n));return r},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="/",a.oe=function(e){throw console.error(e),e};var i=this["webpackJsonpreact-etalon"]=this["webpackJsonpreact-etalon"]||[],c=i.push.bind(i);i.push=t,i=i.slice();for(var l=0;l<i.length;l++)t(i[l]);var f=c;r()}([])</script><script src="/static/js/2.0380cb5b.chunk.js"></script><script src="/static/js/main.e1f69784.chunk.js"></script></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,2 +1,2 @@
(this["webpackJsonpreact-etalon"]=this["webpackJsonpreact-etalon"]||[]).push([[3],{68:function(t,e,n){"use strict";n.r(e),n.d(e,"getCLS",(function(){return d})),n.d(e,"getFCP",(function(){return S})),n.d(e,"getFID",(function(){return F})),n.d(e,"getLCP",(function(){return k})),n.d(e,"getTTFB",(function(){return C}));var i,a,r,o,u=function(t,e){return{name:t,value:void 0===e?-1:e,delta:0,entries:[],id:"v1-".concat(Date.now(),"-").concat(Math.floor(8999999999999*Math.random())+1e12)}},c=function(t,e){try{if(PerformanceObserver.supportedEntryTypes.includes(t)){if("first-input"===t&&!("PerformanceEventTiming"in self))return;var n=new PerformanceObserver((function(t){return t.getEntries().map(e)}));return n.observe({type:t,buffered:!0}),n}}catch(t){}},f=function(t,e){var n=function n(i){"pagehide"!==i.type&&"hidden"!==document.visibilityState||(t(i),e&&(removeEventListener("visibilitychange",n,!0),removeEventListener("pagehide",n,!0)))};addEventListener("visibilitychange",n,!0),addEventListener("pagehide",n,!0)},s=function(t){addEventListener("pageshow",(function(e){e.persisted&&t(e)}),!0)},m="function"==typeof WeakSet?new WeakSet:new Set,p=function(t,e,n){var i;return function(){e.value>=0&&(n||m.has(e)||"hidden"===document.visibilityState)&&(e.delta=e.value-(i||0),(e.delta||void 0===i)&&(i=e.value,t(e)))}},d=function(t,e){var n,i=u("CLS",0),a=function(t){t.hadRecentInput||(i.value+=t.value,i.entries.push(t),n())},r=c("layout-shift",a);r&&(n=p(t,i,e),f((function(){r.takeRecords().map(a),n()})),s((function(){i=u("CLS",0),n=p(t,i,e)})))},v=-1,l=function(){return"hidden"===document.visibilityState?0:1/0},h=function(){f((function(t){var e=t.timeStamp;v=e}),!0)},g=function(){return v<0&&(v=l(),h(),s((function(){setTimeout((function(){v=l(),h()}),0)}))),{get timeStamp(){return v}}},S=function(t,e){var n,i=g(),a=u("FCP"),r=function(t){"first-contentful-paint"===t.name&&(f&&f.disconnect(),t.startTime<i.timeStamp&&(a.value=t.startTime,a.entries.push(t),m.add(a),n()))},o=performance.getEntriesByName("first-contentful-paint")[0],f=o?null:c("paint",r);(o||f)&&(n=p(t,a,e),o&&r(o),s((function(i){a=u("FCP"),n=p(t,a,e),requestAnimationFrame((function(){requestAnimationFrame((function(){a.value=performance.now()-i.timeStamp,m.add(a),n()}))}))})))},y={passive:!0,capture:!0},E=new Date,w=function(t,e){i||(i=e,a=t,r=new Date,b(removeEventListener),L())},L=function(){if(a>=0&&a<r-E){var t={entryType:"first-input",name:i.type,target:i.target,cancelable:i.cancelable,startTime:i.timeStamp,processingStart:i.timeStamp+a};o.forEach((function(e){e(t)})),o=[]}},T=function(t){if(t.cancelable){var e=(t.timeStamp>1e12?new Date:performance.now())-t.timeStamp;"pointerdown"==t.type?function(t,e){var n=function(){w(t,e),a()},i=function(){a()},a=function(){removeEventListener("pointerup",n,y),removeEventListener("pointercancel",i,y)};addEventListener("pointerup",n,y),addEventListener("pointercancel",i,y)}(e,t):w(e,t)}},b=function(t){["mousedown","keydown","touchstart","pointerdown"].forEach((function(e){return t(e,T,y)}))},F=function(t,e){var n,r=g(),d=u("FID"),v=function(t){t.startTime<r.timeStamp&&(d.value=t.processingStart-t.startTime,d.entries.push(t),m.add(d),n())},l=c("first-input",v);n=p(t,d,e),l&&f((function(){l.takeRecords().map(v),l.disconnect()}),!0),l&&s((function(){var r;d=u("FID"),n=p(t,d,e),o=[],a=-1,i=null,b(addEventListener),r=v,o.push(r),L()}))},k=function(t,e){var n,i=g(),a=u("LCP"),r=function(t){var e=t.startTime;e<i.timeStamp&&(a.value=e,a.entries.push(t)),n()},o=c("largest-contentful-paint",r);if(o){n=p(t,a,e);var d=function(){m.has(a)||(o.takeRecords().map(r),o.disconnect(),m.add(a),n())};["keydown","click"].forEach((function(t){addEventListener(t,d,{once:!0,capture:!0})})),f(d,!0),s((function(i){a=u("LCP"),n=p(t,a,e),requestAnimationFrame((function(){requestAnimationFrame((function(){a.value=performance.now()-i.timeStamp,m.add(a),n()}))}))}))}},C=function(t){var e,n=u("TTFB");e=function(){try{var e=performance.getEntriesByType("navigation")[0]||function(){var t=performance.timing,e={entryType:"navigation",startTime:0};for(var n in t)"navigationStart"!==n&&"toJSON"!==n&&(e[n]=Math.max(t[n]-t.navigationStart,0));return e}();if(n.value=n.delta=e.responseStart,n.value<0)return;n.entries=[e],t(n)}catch(t){}},"complete"===document.readyState?setTimeout(e,0):addEventListener("pageshow",e)}}}]); (this["webpackJsonpreact-etalon"]=this["webpackJsonpreact-etalon"]||[]).push([[3],{85:function(t,e,n){"use strict";n.r(e),n.d(e,"getCLS",(function(){return d})),n.d(e,"getFCP",(function(){return S})),n.d(e,"getFID",(function(){return F})),n.d(e,"getLCP",(function(){return k})),n.d(e,"getTTFB",(function(){return C}));var i,a,r,o,u=function(t,e){return{name:t,value:void 0===e?-1:e,delta:0,entries:[],id:"v1-".concat(Date.now(),"-").concat(Math.floor(8999999999999*Math.random())+1e12)}},c=function(t,e){try{if(PerformanceObserver.supportedEntryTypes.includes(t)){if("first-input"===t&&!("PerformanceEventTiming"in self))return;var n=new PerformanceObserver((function(t){return t.getEntries().map(e)}));return n.observe({type:t,buffered:!0}),n}}catch(t){}},f=function(t,e){var n=function n(i){"pagehide"!==i.type&&"hidden"!==document.visibilityState||(t(i),e&&(removeEventListener("visibilitychange",n,!0),removeEventListener("pagehide",n,!0)))};addEventListener("visibilitychange",n,!0),addEventListener("pagehide",n,!0)},s=function(t){addEventListener("pageshow",(function(e){e.persisted&&t(e)}),!0)},m="function"==typeof WeakSet?new WeakSet:new Set,p=function(t,e,n){var i;return function(){e.value>=0&&(n||m.has(e)||"hidden"===document.visibilityState)&&(e.delta=e.value-(i||0),(e.delta||void 0===i)&&(i=e.value,t(e)))}},d=function(t,e){var n,i=u("CLS",0),a=function(t){t.hadRecentInput||(i.value+=t.value,i.entries.push(t),n())},r=c("layout-shift",a);r&&(n=p(t,i,e),f((function(){r.takeRecords().map(a),n()})),s((function(){i=u("CLS",0),n=p(t,i,e)})))},v=-1,l=function(){return"hidden"===document.visibilityState?0:1/0},h=function(){f((function(t){var e=t.timeStamp;v=e}),!0)},g=function(){return v<0&&(v=l(),h(),s((function(){setTimeout((function(){v=l(),h()}),0)}))),{get timeStamp(){return v}}},S=function(t,e){var n,i=g(),a=u("FCP"),r=function(t){"first-contentful-paint"===t.name&&(f&&f.disconnect(),t.startTime<i.timeStamp&&(a.value=t.startTime,a.entries.push(t),m.add(a),n()))},o=performance.getEntriesByName("first-contentful-paint")[0],f=o?null:c("paint",r);(o||f)&&(n=p(t,a,e),o&&r(o),s((function(i){a=u("FCP"),n=p(t,a,e),requestAnimationFrame((function(){requestAnimationFrame((function(){a.value=performance.now()-i.timeStamp,m.add(a),n()}))}))})))},y={passive:!0,capture:!0},E=new Date,w=function(t,e){i||(i=e,a=t,r=new Date,b(removeEventListener),L())},L=function(){if(a>=0&&a<r-E){var t={entryType:"first-input",name:i.type,target:i.target,cancelable:i.cancelable,startTime:i.timeStamp,processingStart:i.timeStamp+a};o.forEach((function(e){e(t)})),o=[]}},T=function(t){if(t.cancelable){var e=(t.timeStamp>1e12?new Date:performance.now())-t.timeStamp;"pointerdown"==t.type?function(t,e){var n=function(){w(t,e),a()},i=function(){a()},a=function(){removeEventListener("pointerup",n,y),removeEventListener("pointercancel",i,y)};addEventListener("pointerup",n,y),addEventListener("pointercancel",i,y)}(e,t):w(e,t)}},b=function(t){["mousedown","keydown","touchstart","pointerdown"].forEach((function(e){return t(e,T,y)}))},F=function(t,e){var n,r=g(),d=u("FID"),v=function(t){t.startTime<r.timeStamp&&(d.value=t.processingStart-t.startTime,d.entries.push(t),m.add(d),n())},l=c("first-input",v);n=p(t,d,e),l&&f((function(){l.takeRecords().map(v),l.disconnect()}),!0),l&&s((function(){var r;d=u("FID"),n=p(t,d,e),o=[],a=-1,i=null,b(addEventListener),r=v,o.push(r),L()}))},k=function(t,e){var n,i=g(),a=u("LCP"),r=function(t){var e=t.startTime;e<i.timeStamp&&(a.value=e,a.entries.push(t)),n()},o=c("largest-contentful-paint",r);if(o){n=p(t,a,e);var d=function(){m.has(a)||(o.takeRecords().map(r),o.disconnect(),m.add(a),n())};["keydown","click"].forEach((function(t){addEventListener(t,d,{once:!0,capture:!0})})),f(d,!0),s((function(i){a=u("LCP"),n=p(t,a,e),requestAnimationFrame((function(){requestAnimationFrame((function(){a.value=performance.now()-i.timeStamp,m.add(a),n()}))}))}))}},C=function(t){var e,n=u("TTFB");e=function(){try{var e=performance.getEntriesByType("navigation")[0]||function(){var t=performance.timing,e={entryType:"navigation",startTime:0};for(var n in t)"navigationStart"!==n&&"toJSON"!==n&&(e[n]=Math.max(t[n]-t.navigationStart,0));return e}();if(n.value=n.delta=e.responseStart,n.value<0)return;n.entries=[e],t(n)}catch(t){}},"complete"===document.readyState?setTimeout(e,0):addEventListener("pageshow",e)}}}]);
//# sourceMappingURL=3.3bfbe3a5.chunk.js.map //# sourceMappingURL=3.6828d12d.chunk.js.map

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,2 +1,2 @@
!function(e){function t(t){for(var n,a,i=t[0],c=t[1],l=t[2],s=0,p=[];s<i.length;s++)a=i[s],Object.prototype.hasOwnProperty.call(o,a)&&o[a]&&p.push(o[a][0]),o[a]=0;for(n in c)Object.prototype.hasOwnProperty.call(c,n)&&(e[n]=c[n]);for(f&&f(t);p.length;)p.shift()();return u.push.apply(u,l||[]),r()}function r(){for(var e,t=0;t<u.length;t++){for(var r=u[t],n=!0,i=1;i<r.length;i++){var c=r[i];0!==o[c]&&(n=!1)}n&&(u.splice(t--,1),e=a(a.s=r[0]))}return e}var n={},o={1:0},u=[];function a(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,a),r.l=!0,r.exports}a.e=function(e){var t=[],r=o[e];if(0!==r)if(r)t.push(r[2]);else{var n=new Promise((function(t,n){r=o[e]=[t,n]}));t.push(r[2]=n);var u,i=document.createElement("script");i.charset="utf-8",i.timeout=120,a.nc&&i.setAttribute("nonce",a.nc),i.src=function(e){return a.p+"static/js/"+({}[e]||e)+"."+{3:"3bfbe3a5"}[e]+".chunk.js"}(e);var c=new Error;u=function(t){i.onerror=i.onload=null,clearTimeout(l);var r=o[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),u=t&&t.target&&t.target.src;c.message="Loading chunk "+e+" failed.\n("+n+": "+u+")",c.name="ChunkLoadError",c.type=n,c.request=u,r[1](c)}o[e]=void 0}};var l=setTimeout((function(){u({type:"timeout",target:i})}),12e4);i.onerror=i.onload=u,document.head.appendChild(i)}return Promise.all(t)},a.m=e,a.c=n,a.d=function(e,t,r){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},a.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(a.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)a.d(r,n,function(t){return e[t]}.bind(null,n));return r},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="/",a.oe=function(e){throw console.error(e),e};var i=this["webpackJsonpreact-etalon"]=this["webpackJsonpreact-etalon"]||[],c=i.push.bind(i);i.push=t,i=i.slice();for(var l=0;l<i.length;l++)t(i[l]);var f=c;r()}([]); !function(e){function t(t){for(var n,a,i=t[0],c=t[1],l=t[2],s=0,p=[];s<i.length;s++)a=i[s],Object.prototype.hasOwnProperty.call(o,a)&&o[a]&&p.push(o[a][0]),o[a]=0;for(n in c)Object.prototype.hasOwnProperty.call(c,n)&&(e[n]=c[n]);for(f&&f(t);p.length;)p.shift()();return u.push.apply(u,l||[]),r()}function r(){for(var e,t=0;t<u.length;t++){for(var r=u[t],n=!0,i=1;i<r.length;i++){var c=r[i];0!==o[c]&&(n=!1)}n&&(u.splice(t--,1),e=a(a.s=r[0]))}return e}var n={},o={1:0},u=[];function a(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,a),r.l=!0,r.exports}a.e=function(e){var t=[],r=o[e];if(0!==r)if(r)t.push(r[2]);else{var n=new Promise((function(t,n){r=o[e]=[t,n]}));t.push(r[2]=n);var u,i=document.createElement("script");i.charset="utf-8",i.timeout=120,a.nc&&i.setAttribute("nonce",a.nc),i.src=function(e){return a.p+"static/js/"+({}[e]||e)+"."+{3:"6828d12d"}[e]+".chunk.js"}(e);var c=new Error;u=function(t){i.onerror=i.onload=null,clearTimeout(l);var r=o[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),u=t&&t.target&&t.target.src;c.message="Loading chunk "+e+" failed.\n("+n+": "+u+")",c.name="ChunkLoadError",c.type=n,c.request=u,r[1](c)}o[e]=void 0}};var l=setTimeout((function(){u({type:"timeout",target:i})}),12e4);i.onerror=i.onload=u,document.head.appendChild(i)}return Promise.all(t)},a.m=e,a.c=n,a.d=function(e,t,r){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},a.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(a.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)a.d(r,n,function(t){return e[t]}.bind(null,n));return r},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="/",a.oe=function(e){throw console.error(e),e};var i=this["webpackJsonpreact-etalon"]=this["webpackJsonpreact-etalon"]||[],c=i.push.bind(i);i.push=t,i=i.slice();for(var l=0;l<i.length;l++)t(i[l]);var f=c;r()}([]);
//# sourceMappingURL=runtime-main.3dce0fb3.js.map //# sourceMappingURL=runtime-main.80c04ae7.js.map

Binary file not shown.

Before

Width:  |  Height:  |  Size: 401 KiB

146
package-lock.json generated
View File

@ -12,6 +12,7 @@
"@testing-library/jest-dom": "^5.14.1", "@testing-library/jest-dom": "^5.14.1",
"@testing-library/react": "^11.2.7", "@testing-library/react": "^11.2.7",
"@testing-library/user-event": "^12.8.3", "@testing-library/user-event": "^12.8.3",
"html-react-parser": "^1.4.5",
"i18next": "^21.6.6", "i18next": "^21.6.6",
"node-sass": "^6.0.1", "node-sass": "^6.0.1",
"react": "^17.0.2", "react": "^17.0.2",
@ -25,8 +26,7 @@
"uuid": "^8.3.2", "uuid": "^8.3.2",
"uuidv4": "^6.2.12", "uuidv4": "^6.2.12",
"web-vitals": "^1.1.2" "web-vitals": "^1.1.2"
}, }
"devDependencies": {}
}, },
"node_modules/@babel/code-frame": { "node_modules/@babel/code-frame": {
"version": "7.16.7", "version": "7.16.7",
@ -9368,6 +9368,44 @@
"resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz", "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz",
"integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg=" "integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg="
}, },
"node_modules/html-dom-parser": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-1.0.4.tgz",
"integrity": "sha512-ThM/vK/18R5/cVB9UsqhNqbJU7LE2BmSA7C/FjYV88wIDW75GSUpvSE/JxE4mJ8bOuU6Kp15/I1giM2JbD+ieA==",
"dependencies": {
"domhandler": "4.3.0",
"htmlparser2": "7.2.0"
}
},
"node_modules/html-dom-parser/node_modules/entities": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz",
"integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==",
"engines": {
"node": ">=0.12"
},
"funding": {
"url": "https://github.com/fb55/entities?sponsor=1"
}
},
"node_modules/html-dom-parser/node_modules/htmlparser2": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz",
"integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==",
"funding": [
"https://github.com/fb55/htmlparser2?sponsor=1",
{
"type": "github",
"url": "https://github.com/sponsors/fb55"
}
],
"dependencies": {
"domelementtype": "^2.0.1",
"domhandler": "^4.2.2",
"domutils": "^2.8.0",
"entities": "^3.0.1"
}
},
"node_modules/html-encoding-sniffer": { "node_modules/html-encoding-sniffer": {
"version": "2.0.1", "version": "2.0.1",
"resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz",
@ -9417,6 +9455,20 @@
"void-elements": "3.1.0" "void-elements": "3.1.0"
} }
}, },
"node_modules/html-react-parser": {
"version": "1.4.5",
"resolved": "https://registry.npmjs.org/html-react-parser/-/html-react-parser-1.4.5.tgz",
"integrity": "sha512-dxo0z1G9b3mS1VGmcVw4cUGwVsEwkJZZ7r29pOSdE69JukJyFTCL1I6TXSEp2p1LAHvuO6ZBiEVp2M5lXqKLAg==",
"dependencies": {
"domhandler": "4.3.0",
"html-dom-parser": "1.0.4",
"react-property": "2.0.0",
"style-to-js": "1.1.0"
},
"peerDependencies": {
"react": "0.14 || 15 || 16 || 17"
}
},
"node_modules/html-webpack-plugin": { "node_modules/html-webpack-plugin": {
"version": "4.5.0", "version": "4.5.0",
"resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.0.tgz", "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.0.tgz",
@ -9915,6 +9967,11 @@
"resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
"integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="
}, },
"node_modules/inline-style-parser": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz",
"integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q=="
},
"node_modules/internal-ip": { "node_modules/internal-ip": {
"version": "4.3.0", "version": "4.3.0",
"resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz",
@ -15242,6 +15299,11 @@
"resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
"integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w=="
}, },
"node_modules/react-property": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/react-property/-/react-property-2.0.0.tgz",
"integrity": "sha512-kzmNjIgU32mO4mmH5+iUyrqlpFQhF8K2k7eZ4fdLSOPFrD1XgEuSBv9LDEgxRXTMBqMd8ppT0x6TIzqE5pdGdw=="
},
"node_modules/react-redux": { "node_modules/react-redux": {
"version": "7.2.6", "version": "7.2.6",
"resolved": "https://registry.npmjs.org/react-redux/-/react-redux-7.2.6.tgz", "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-7.2.6.tgz",
@ -18010,6 +18072,22 @@
"webpack": "^4.0.0 || ^5.0.0" "webpack": "^4.0.0 || ^5.0.0"
} }
}, },
"node_modules/style-to-js": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.0.tgz",
"integrity": "sha512-1OqefPDxGrlMwcbfpsTVRyzwdhr4W0uxYQzeA2F1CBc8WG04udg2+ybRnvh3XYL4TdHQrCahLtax2jc8xaE6rA==",
"dependencies": {
"style-to-object": "0.3.0"
}
},
"node_modules/style-to-object": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz",
"integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==",
"dependencies": {
"inline-style-parser": "0.1.1"
}
},
"node_modules/stylehacks": { "node_modules/stylehacks": {
"version": "4.0.3", "version": "4.0.3",
"resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz", "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz",
@ -28287,6 +28365,33 @@
"resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz", "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz",
"integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg=" "integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg="
}, },
"html-dom-parser": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-1.0.4.tgz",
"integrity": "sha512-ThM/vK/18R5/cVB9UsqhNqbJU7LE2BmSA7C/FjYV88wIDW75GSUpvSE/JxE4mJ8bOuU6Kp15/I1giM2JbD+ieA==",
"requires": {
"domhandler": "4.3.0",
"htmlparser2": "7.2.0"
},
"dependencies": {
"entities": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz",
"integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q=="
},
"htmlparser2": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz",
"integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==",
"requires": {
"domelementtype": "^2.0.1",
"domhandler": "^4.2.2",
"domutils": "^2.8.0",
"entities": "^3.0.1"
}
}
}
},
"html-encoding-sniffer": { "html-encoding-sniffer": {
"version": "2.0.1", "version": "2.0.1",
"resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz",
@ -28327,6 +28432,17 @@
"void-elements": "3.1.0" "void-elements": "3.1.0"
} }
}, },
"html-react-parser": {
"version": "1.4.5",
"resolved": "https://registry.npmjs.org/html-react-parser/-/html-react-parser-1.4.5.tgz",
"integrity": "sha512-dxo0z1G9b3mS1VGmcVw4cUGwVsEwkJZZ7r29pOSdE69JukJyFTCL1I6TXSEp2p1LAHvuO6ZBiEVp2M5lXqKLAg==",
"requires": {
"domhandler": "4.3.0",
"html-dom-parser": "1.0.4",
"react-property": "2.0.0",
"style-to-js": "1.1.0"
}
},
"html-webpack-plugin": { "html-webpack-plugin": {
"version": "4.5.0", "version": "4.5.0",
"resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.0.tgz", "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.0.tgz",
@ -28707,6 +28823,11 @@
"resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
"integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="
}, },
"inline-style-parser": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz",
"integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q=="
},
"internal-ip": { "internal-ip": {
"version": "4.3.0", "version": "4.3.0",
"resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz",
@ -32870,6 +32991,11 @@
"resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
"integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w=="
}, },
"react-property": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/react-property/-/react-property-2.0.0.tgz",
"integrity": "sha512-kzmNjIgU32mO4mmH5+iUyrqlpFQhF8K2k7eZ4fdLSOPFrD1XgEuSBv9LDEgxRXTMBqMd8ppT0x6TIzqE5pdGdw=="
},
"react-redux": { "react-redux": {
"version": "7.2.6", "version": "7.2.6",
"resolved": "https://registry.npmjs.org/react-redux/-/react-redux-7.2.6.tgz", "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-7.2.6.tgz",
@ -35064,6 +35190,22 @@
"schema-utils": "^2.7.0" "schema-utils": "^2.7.0"
} }
}, },
"style-to-js": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.0.tgz",
"integrity": "sha512-1OqefPDxGrlMwcbfpsTVRyzwdhr4W0uxYQzeA2F1CBc8WG04udg2+ybRnvh3XYL4TdHQrCahLtax2jc8xaE6rA==",
"requires": {
"style-to-object": "0.3.0"
}
},
"style-to-object": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz",
"integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==",
"requires": {
"inline-style-parser": "0.1.1"
}
},
"stylehacks": { "stylehacks": {
"version": "4.0.3", "version": "4.0.3",
"resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz", "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz",

View File

@ -6,6 +6,7 @@
"@testing-library/jest-dom": "^5.14.1", "@testing-library/jest-dom": "^5.14.1",
"@testing-library/react": "^11.2.7", "@testing-library/react": "^11.2.7",
"@testing-library/user-event": "^12.8.3", "@testing-library/user-event": "^12.8.3",
"html-react-parser": "^1.4.5",
"i18next": "^21.6.6", "i18next": "^21.6.6",
"node-sass": "^6.0.1", "node-sass": "^6.0.1",
"react": "^17.0.2", "react": "^17.0.2",

View File

@ -22,6 +22,7 @@ import CalibrateInstruments from "./pages/CalibrateInstruments";
import CalibrateThermo from "./pages/CalibrateThermo"; import CalibrateThermo from "./pages/CalibrateThermo";
import Regulations from "./pages/Regulations"; import Regulations from "./pages/Regulations";
import Service from "./pages/Service"; import Service from "./pages/Service";
import Post from "./pages/Post";
// IMPORT STYLES // IMPORT STYLES
import "./styles/app.scss"; import "./styles/app.scss";
@ -40,11 +41,14 @@ function App() {
<Route path="/news/:slug" component={Novelty} exact> <Route path="/news/:slug" component={Novelty} exact>
{/* <Novelty /> */} {/* <Novelty /> */}
</Route> </Route>
<Route path="/prices/meteorology/:slug" component={Post} exact>
{/* <Post /> */}
</Route>
<Route path="/etalons" exact> <Route path="/etalons" exact>
<Etalons /> <Etalons />
</Route> </Route>
<Route path="/etalons/1"> <Route path="/etalons/:slug" component={Etalon} exact>
<Etalon /> {/* <Etalon /> */}
</Route> </Route>
<Route path="/legislation"> <Route path="/legislation">
<Legislation /> <Legislation />

View File

@ -2,6 +2,8 @@
import React, { useRef } from "react"; import React, { useRef } from "react";
import { Link } from "react-router-dom"; import { Link } from "react-router-dom";
import i18n from '../../i18n'; import i18n from '../../i18n';
import { withTranslation } from 'react-i18next';
// IMPORT IMAGES // IMPORT IMAGES
import MainLogo from "../../svg/mainLogo.svg"; import MainLogo from "../../svg/mainLogo.svg";
@ -11,7 +13,8 @@ import flagOfRussia from "../../svg/flagOfRussia.svg";
import flagOfUK from "../../svg/flagOfUK.svg"; import flagOfUK from "../../svg/flagOfUK.svg";
import flagOfTkm from "../../svg/flagOfTkm.svg"; import flagOfTkm from "../../svg/flagOfTkm.svg";
function Nav ({ t }) { function Nav (props) {
const {t} = props;
const changeLanguage = (lng) => { const changeLanguage = (lng) => {
i18n.changeLanguage(lng); i18n.changeLanguage(lng);
console.log(lng); console.log(lng);
@ -36,24 +39,24 @@ function Nav ({ t }) {
</Link> </Link>
<div className="nav-right"> <div className="nav-right">
<ul className="nav-link"> <ul className="nav-link">
<li className="nav-link"> <li className="nav-link">
<Link to="/news">Новости</Link> <Link to="/news">{t('Новости')}</Link>
</li> </li>
<li className="nav-link"> <li className="nav-link">
<Link to="/etalons">Эталоны</Link> <Link to="/etalons">{t('Эталоны')}</Link>
</li> </li>
<li className="nav-link nav-select"> <li className="nav-link nav-select">
<div className="nav-dropdown"> <div className="nav-dropdown">
<ul className="nav-dropdown-content"> <ul className="nav-dropdown-content">
<li className="dropdown-content"> <li className="dropdown-content">
<Link to="/service">Информация об услугах</Link> <Link to="/service">{t('Информация об услугах')}</Link>
</li> </li>
<li className="dropdown-content"> <li className="dropdown-content">
<Link to="/prices">Стоимость</Link> <Link to="/prices">{t('Стоимость')}</Link>
</li> </li>
</ul> </ul>
</div> </div>
<h3>Услуги</h3> <h3>{t('Услуги')}</h3>
<img <img
className="nav-downarrow" className="nav-downarrow"
src={downArrow} src={downArrow}
@ -64,11 +67,11 @@ function Nav ({ t }) {
<div className="nav-dropdown"> <div className="nav-dropdown">
<ul className="nav-dropdown-content"> <ul className="nav-dropdown-content">
<li className="dropdown-content"> <li className="dropdown-content">
<Link to="/legislation">Законодательная база</Link> <Link to="/legislation">{t('Законодательная база')}</Link>
</li> </li>
</ul> </ul>
</div> </div>
<h3>Нормативная база</h3> <h3>{t('Нормативная база')}</h3>
<img <img
className="nav-downarrow" className="nav-downarrow"
src={downArrow} src={downArrow}
@ -80,17 +83,17 @@ function Nav ({ t }) {
<ul className="nav-dropdown-content"> <ul className="nav-dropdown-content">
<li className="dropdown-content"> <li className="dropdown-content">
<Link to="/measuring_register"> <Link to="/measuring_register">
Гос. реестр средств измерений {t('Гос. реестр средств измерений')}
</Link> </Link>
</li> </li>
<li className="dropdown-content"> <li className="dropdown-content">
<Link to="/measuring_regulations"> <Link to="/measuring_regulations">
Реестр нормативной документации {t('Реестр нормативной документации')}
</Link> </Link>
</li> </li>
</ul> </ul>
</div> </div>
<h3>Реестры</h3> <h3>{t('Реестры')}</h3>
<img <img
className="nav-downarrow" className="nav-downarrow"
src={downArrow} src={downArrow}
@ -101,14 +104,14 @@ function Nav ({ t }) {
<div className="nav-dropdown"> <div className="nav-dropdown">
<ul className="nav-dropdown-content"> <ul className="nav-dropdown-content">
<li className="dropdown-content"> <li className="dropdown-content">
<Link to="/history">История центра</Link> <Link to="/history">{t('История центра')}</Link>
</li> </li>
<li className="dropdown-content"> <li className="dropdown-content">
<Link to="/structure">Структура центра</Link> <Link to="/structure">{t('Структура центра')}</Link>
</li> </li>
</ul> </ul>
</div> </div>
<h3>О центре</h3> <h3>{t('О центре')}</h3>
<img <img
className="nav-downarrow" className="nav-downarrow"
src={downArrow} src={downArrow}
@ -351,4 +354,5 @@ function Nav ({ t }) {
); );
}; };
export default Nav; // export default Nav;
export default withTranslation()(Nav);

View File

@ -1,3 +1,17 @@
{ {
"test":"test_en" "test":"test_en",
"Новости":"All news",
"Эталоны":"Etalons",
"Услуги":"Services",
"Нормативная база":"Normative Base",
"Законодательная база":"Legislative Base",
"Информация об услугах":"Information on services",
"Стоимость":"Tariffs",
"Реестры":"Registers",
"Гос. реестр средств измерений":"State register of measuring tools",
"Реестр нормативной документации":"Register of normative documentation",
"О центре":"About Center",
"История центра":"History of Center",
"Структура центра":"Structure of Center"
} }

View File

@ -1,3 +1,16 @@
{ {
"test":"test_ru" "test":"test_ru",
"Новости":"Новости",
"Эталоны":"Эталоны",
"Услуги":"Услуги",
"Нормативная база":"Нормативная база",
"Законодательная база":"Законодательная база",
"Информация об услугах":"Информация об услугах",
"Стоимость":"Стоимость",
"Реестры":"Реестры",
"Гос. реестр средств измерений":"Гос. реестр средств измерений",
"Реестр нормативной документации":"Реестр нормативной документации",
"О центре":"О центре",
"История центра":"История центра",
"Структура центра":"Структура центра"
} }

View File

@ -1,62 +1,134 @@
// IMPORT MODULES // IMPORT MODULES
import React, { useEffect } from "react"; import React from "react";
import { Link } from "react-router-dom"; import { Link } from "react-router-dom";
import i18n from '../i18n';
import { withTranslation } from 'react-i18next';
// IMPORT COMPONENTS // IMPORT COMPONENTS
import Breadcrumb from "../components/Global/Breadcrumb"; import Breadcrumb from "../components/Global/Breadcrumb";
const CalibrateInstruments = () => { // const CalibrateInstruments = () => {
useEffect(() => { // useEffect(() => {
window.scrollTo(0, 0); // window.scrollTo(0, 0);
}, []); // }, []);
return (
<section className="calibrate-inst"> class CalibrateInstruments extends React.Component {
<Breadcrumb
path_1="Стоимость" constructor(props) {
path_2="Тарифы на проведение проверки или калибровки средств измерений" super(props);
link_1="/prices"
currentUrl="/prices/calibrate_instruments" this.state = {
/> items: [],
<div className="container"> DataisLoaded: false,
<div className="calibrate-inst-inner"> error: null
<div className="tab-header"> };
<h4 className="tab-header-text" id="tab-header-text"> }
Тарифы на проведение проверки или калибровки средств измерений
</h4> componentDidMount() {
<div className="tab-header-line"></div> this._mounted = true
</div> this.makeRemoteRequest();
<div className="plans-content"> }
<div className="plans-card-wrapper">
<Link to="/prices/calibrate_instruments/1" className="planscard">
<h4>Измерения геометрических величин</h4>
</Link> componentWillUnmount() {
<Link to="/prices/calibrate_instruments/2" className="planscard"> this._mounted = false
<h4>Измерения механических величин</h4> }
</Link>
<Link to="/prices/calibrate_instruments/3" className="planscard"> makeRemoteRequest = () => {
<h4>Измерения давления и вакуума</h4>
</Link> const url = `http://217.174.238.204:8888/api/v1/categories/8`
<Link to="/prices/calibrate_instruments/4" className="planscard">
<h4>Измерения уровня расхода, воды и...</h4> if (this._mounted) {
</Link> this.setState({ DataisLoaded: true });
<Link to="/prices/calibrate_instruments/5" className="planscard"> }
<h4>Измерения физико-химических и оп...</h4> setTimeout(() => {
</Link>
<Link to="/prices/calibrate_instruments/6" className="planscard"> fetch(url, {
<h4>Тепло-физичекие и температурные...</h4> method: 'GET',
</Link>
<Link to="/prices/calibrate_instruments/7" className="planscard"> })
<h4>Измерение времени и частоты</h4>
</Link> .then(res => res.json())
<Link to="/prices/calibrate_instruments/8" className="planscard"> .then(res => {
<h4>Измерения электрических и магнит...</h4> if (this._mounted) {
</Link> this.setState({
items: res.data[0]['posts'],
error: res.message || null,
DataisLoaded: true,
})
console.log(res.data)
}
})
.catch(error => {
if (this._mounted) {
this.setState({ error, DataisLoaded: false});
}
});
}, 1500);
};
render() {
// const [pageIndex, setPageIndex] = useState(1);
var {DataisLoaded, items} = this.state;
if(!DataisLoaded){
return <div>Loading ....</div>
}else{
return (
<section className="calibrate-inst">
<Breadcrumb
path_1="Стоимость"
path_2="Тарифы на проведение проверки или калибровки средств измерений"
link_1="/prices"
currentUrl="/prices/calibrate_instruments"
/>
<div className="container">
<div className="calibrate-inst-inner">
<div className="tab-header">
<h4 className="tab-header-text" id="tab-header-text">
Тарифы на проведение проверки или калибровки средств измерений
</h4>
<div className="tab-header-line"></div>
</div>
<div className="plans-content">
<div className="plans-card-wrapper">
{items.map(item=>(
<Link to={`/prices/meteorology/${item.slug}`} className="planscard" key={item.id}>
<h4>{(() => {
if(i18n.language === 'en') {
return (
JSON.parse(item['translations'][0]['attribute_data']).title
)
} else if (i18n.language === 'ru') {
return (
item.title
)
} else {
return (
JSON.parse(item['translations'][1]['attribute_data']).title
)
}
})()
}</h4>
</Link>
))}
</div>
</div>
</div> </div>
</div> </div>
</div> </section>
</div> );
</section> }
); }
}; };
export default CalibrateInstruments; // export default CalibrateInstruments;
export default withTranslation()(CalibrateInstruments);

View File

@ -1,103 +1,139 @@
// IMPORT MODULES // IMPORT MODULES
import React, { useEffect } from "react"; import React from "react";
import i18n from '../i18n';
import { withTranslation } from 'react-i18next';
// IMPORT COMPONENTS // IMPORT COMPONENTS
import Breadcrumb from "../components/Global/Breadcrumb"; import Breadcrumb from "../components/Global/Breadcrumb";
// IMPORT IMAGES // IMPORT IMAGES
import EtalonImg from "../img/etalonImg.jpg"; // import EtalonImg from "../img/etalonImg.jpg";
const Etalon = () => { // const Etalon = () => {
useEffect(() => { // useEffect(() => {
window.scrollTo(0, 0); // window.scrollTo(0, 0);
}, []); // }, []);
return (
<section className="etalon"> class Etalon extends React.Component {
<Breadcrumb
path_1="Государственные эталоны" constructor(props) {
link_1="/etalons" super(props);
path_2="Государственный эталон единицы массы"
currentUrl="../etalons/1" this.state = {
/> items: [],
<div className="container"> DataisLoaded: false,
<div className="etalon-inner"> error: null
<div className="novelty-head"> };
<div className="novelty-img"> }
<img src={EtalonImg} alt="Etalon" />
componentDidMount() {
this._mounted = true
this.makeRemoteRequest();
}
componentWillUnmount() {
this._mounted = false
}
makeRemoteRequest = () => {
const url = `http://217.174.238.204:8888/api/v1/posts/`+this.props.match.params.slug;
if (this._mounted) {
this.setState({ DataisLoaded: true });
}
setTimeout(() => {
fetch(url, {
method: 'GET',
})
.then(res => res.json())
.then(res => {
if (this._mounted) {
this.setState({
items: res.data,
error: res.message || null,
DataisLoaded: true,
})
// console.log(this.state.items[0][0]['content'])
console.log(this.state.items[0][0]['translations'][0]['attribute_data']);
}
})
.catch(error => {
if (this._mounted) {
this.setState({ error, DataisLoaded: false});
}
});
}, 1500);
};
render() {
// const [pageIndex, setPageIndex] = useState(1);
var {DataisLoaded, items} = this.state;
if(!DataisLoaded){
return <div>Loading ....</div>
}else{
return (
<section className="etalon">
<Breadcrumb
path_1="Государственные эталоны"
link_1="/etalons"
path_2={this.props.match.params.slug}
currentUrl="../etalons/1"
/>
<div className="container">
{items.map(item=>(
<div className="etalon-inner" key={item[0]['id']}>
<div className="novelty-head">
<div className="novelty-img">
<img src={item[0]['featured_images'][0]['path']} alt="Etalon" />
</div>
<h4 className="novelty-title">
{ i18n.language === 'en' &&
JSON.parse(item[0]['translations'][0]['attribute_data']).title
}
{ i18n.language === 'ru' &&
item[0]['title']
}
{ i18n.language === 'tm' &&
JSON.parse(item[0]['translations'][1]['attribute_data']).title
}
</h4>
</div>
<div className="novelty-text">
{/* {item[0]['content']} */}
{ i18n.language === 'en' &&
JSON.parse(item[0]['translations'][0]['attribute_data']).content
}
{ i18n.language === 'ru' &&
item[0]['content']
}
{ i18n.language === 'tm' &&
JSON.parse(item[0]['translations'][1]['attribute_data']).content
}
</div>
</div> </div>
<h4 className="novelty-title">
Государственный эталон единицы массы ))}
</h4>
</div> </div>
<div className="novelty-text"> </section>
<span> );
<span className="pgraph"> }
Государственный эталон массы служит для воспроизведения, }
хранения и передачи размера единицы массы в диапазоне от 1 мг до
1 кг. передача размера единицы массы гирям классом точности E2
осуществляется сличением при помощи компараторов. Работу с
гирями проводят в перчатках с микрофибры и пинцетом. Область
измерения массы является наиболее обширной. Метрологическое
обеспечение единства измерений массы используется во всех
областях науки и производственной деятельности.
</span>
<span className="pgraph">
<h6>Состав государственного эталона:</h6>
<ul>
<li>
Набор гирь с номинальным значением массы от 1 мг до 1 кг,
класса точности Е1 производства «Hafner Gewichte GmbH»
Германия;
</li>
<li>
Микровесы - масскомпаратор XP26С, НПВ 22г, d =1 мкг,
производства «MettlerToledo» Швейцария;
</li>
<li>
Масс-компаратор AX106, НПВ 111г, d =1 мкг, производства
«Mettler Тoledo» Швейцария;
</li>
<li>
Масс-компаратор AX1004 НПВ, 1109 г, d=0,1 мг, производства
«Mettler Тoledo» Швейцария;
</li>
<li>
Прибор для измерения магнитной восприимчивости Susceptometer
YSZ02C;
</li>
<li>Эталон восприимчивости YSZ01RSC-HE210-1;</li>
<li>
Прибор для контроля магнитной проницаемости материала гирь
µ=1,01-1,9; 5,0;
</li>
<li>
Система измерений и регистрации климатических условий
окружающей среды Micromec MultisensMLm 1624n.
</li>
</ul>
</span>
<span className="pgraph">
<h6>Метрологические характеристики:</h6>
<p>
В основу эталона положен метод воспроизведения единицы массы
государственным эталоном, размер которой в соответствии с
государственной поверочной схемой передается средствам
измерений массы. Передача размера единицы массы гирям 1
разряда (класса точности Е2) осуществляется сличением при
помощи компараторов. Эталон (Гири класса точности Е1)
обеспечивает воспроизведение, хранение и передачу единицы
массы в диапазоне от 1 мг до 1 кг с расширенной
неопределенностью значения которой не превышают от 0,003 мг
(для гирь номинальной массой 1 мг) до 0,5 мг (для гирь
номинальной массой 1 кг).
</p>
</span>
</span>
</div>
</div>
</div>
</section>
);
}; };
export default Etalon; // export default Etalon;
export default withTranslation()(Etalon);

View File

@ -1,6 +1,6 @@
// IMPORT MODULES // IMPORT MODULES
import React from "react"; import React from "react";
// import i18n from '../i18n'; import i18n from '../i18n';
import { withTranslation } from 'react-i18next'; import { withTranslation } from 'react-i18next';
// IMPORT COMPONENTS // IMPORT COMPONENTS
@ -116,12 +116,46 @@ class Etalons extends React.Component {
<EtalonsCard <EtalonsCard
key={item.id} key={item.id}
img={ item['featured_images'][0]['path'] } img={ item['featured_images'][0]['path'] }
title="Государственный эталон единицы массы" title={
link="../etalons/1" (() => {
if(i18n.language === 'en') {
return (
JSON.parse(item['translations'][0]['attribute_data']).title
)
} else if (i18n.language === 'ru') {
return (
item.title
)
} else {
return (
JSON.parse(item['translations'][1]['attribute_data']).title
)
}
})()
}
link={`/etalons/${item.slug}`}
/> />
))} ))}
{/* {
(() => {
if(i18n.language === 'en') {
return (
<p>Hi</p>
)
} else if (i18n.language === 'ru') {
return (
<p>Hello</p>
)
} else {
return (
<p>Bye</p>
)
}
})()
} */}
</div> </div>
</div> </div>
</div> </div>

View File

@ -88,7 +88,7 @@ class Legislation extends React.Component {
// console.log('salam-ruru'); // console.log('salam-ruru');
// } // }
const { t } = this.props; // const { t } = this.props;
var {DataisLoaded, items} = this.state; var {DataisLoaded, items} = this.state;
if(!DataisLoaded){ if(!DataisLoaded){

View File

@ -1,126 +1,153 @@
// // IMPORT MODULES // // IMPORT MODULES
import React, { useEffect } from "react"; import React from "react";
// IMPORT COMPONENTS // IMPORT COMPONENTS
import Breadcrumb from "../components/Global/Breadcrumb"; import Breadcrumb from "../components/Global/Breadcrumb";
const MeasuringRegister = () => { // const MeasuringRegister = () => {
useEffect(() => { // useEffect(() => {
window.scrollTo(0, 0); // window.scrollTo(0, 0);
}, []); // }, []);
return ( class MeasuringRegister extends React.Component {
<section className="measuring-register">
<Breadcrumb constructor(props) {
path_1="Государственный реестр средств измерений" super(props);
currentUrl="/measuring_register"
/> this.state = {
<div className="container"> items: [],
<div className="measuring-register-inner"> DataisLoaded: false,
<div className="tab-header"> error: null
<h4 className="tab-header-text" id="tab-header-text"> };
Утвержденные типы средств измерений, внесенные в Госреестр СИ }
Туркменистана на 07/11/2019
</h4> componentDidMount() {
<div className="tab-header-line"></div> this._mounted = true
this.makeRemoteRequest();
}
componentWillUnmount() {
this._mounted = false
}
makeRemoteRequest = () => {
const url = `http://217.174.238.204:8888/api/v1/reestr`
if (this._mounted) {
this.setState({ DataisLoaded: true });
}
setTimeout(() => {
fetch(url, {
method: 'GET',
})
.then(res => res.json())
.then(res => {
if (this._mounted) {
this.setState({
items: res.data,
error: res.message || null,
DataisLoaded: true,
})
console.log(res.data)
}
})
.catch(error => {
if (this._mounted) {
this.setState({ error, DataisLoaded: false});
}
});
}, 1500);
};
render() {
const { t } = this.props;
var {DataisLoaded, items} = this.state;
if(!DataisLoaded){
return <div>Loading ....</div>
}else{
return (
<section className="measuring-register">
<Breadcrumb
path_1="Государственный реестр средств измерений"
currentUrl="/measuring_register"
/>
<div className="container">
<div className="measuring-register-inner">
<div className="tab-header">
<h4 className="tab-header-text" id="tab-header-text">
Утвержденные типы средств измерений, внесенные в Госреестр СИ
Туркменистана на 07/11/2019
</h4>
<div className="tab-header-line"></div>
</div>
</div>
<div className="mr-content">
<div className="mr-table">
<table className="structure-table">
<tbody>
<tr className="table-head">
<th>
<span> серт.</span>
</th>
<th>
<span> Рос-реестра</span>
</th>
<th>
<span>Наименования и тип СИ</span>
</th>
<th>
<span>Изготовитель</span>
</th>
<th>
<span>Срок действия</span>
</th>
</tr>
{items.map(item=>(
<tr key={item.id}>
<td>
<span>{ item.id }</span>
</td>
<td>
<span>{ item.certificate_no }</span>
</td>
<td>
<span>{ item.reestr_no }</span>
</td>
<td>
<span>{ item.reestr_name }</span>
</td>
<td>
<span>{ item.manufacture }</span>
</td>
</tr>
))}
</tbody>
</table>
</div>
</div>
</div> </div>
</div> </section>
<div className="mr-content"> );
<div className="mr-table"> }
<table className="structure-table"> }
<tbody>
<tr className="table-head">
<th>
<span> серт.</span>
</th>
<th>
<span> Рос-реестра</span>
</th>
<th>
<span>Наименования и тип СИ</span>
</th>
<th>
<span>Изготовитель</span>
</th>
<th>
<span>Срок действия</span>
</th>
</tr>
<tr>
<td>
<span>0001</span>
</td>
<td>
<span>001-97</span>
</td>
<td>
<span>Многофункциональный счетчикэлектроэнергии АЛЬФА</span>
</td>
<td>
<span> «АВВ ВЭИ» Метроникаг. Москва</span>
</td>
<td>
<span>-</span>
</td>
</tr>
<tr>
<td>
<span>0002</span>
</td>
<td>
<span>002-97</span>
</td>
<td>
<span>Весы электронные D1-10 D1-20 Avengen</span>
</td>
<td>
<span>Teraoka Weight system PTE г . Сингапур</span>
</td>
<td>
<span>-</span>
</td>
</tr>
<tr>
<td>
<span>0003</span>
</td>
<td>
<span>003-98</span>
</td>
<td>
<span>Счетчики горячей и холодной PICOFLUX</span>
</td>
<td>
<span>Фирма ABB Kent Messteсhnik СmbhГермания</span>
</td>
<td>
<span>01.05.2002 г.</span>
</td>
</tr>
<tr>
<td>
<span>0004</span>
</td>
<td>
<span>004-98</span>
</td>
<td>
<span>Счетчики горячей и холодной MAM, MNR,MPR, MT-R</span>
</td>
<td>
<span>Фирма ABB Kent Messteсhnik СmbhГермания</span>
</td>
<td>
<span>-</span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</section>
);
}; };
export default MeasuringRegister; export default MeasuringRegister;

View File

@ -1,6 +1,8 @@
// // IMPORT MODULES // // IMPORT MODULES
import React from "react"; import React from "react";
import { Link } from "react-router-dom"; import { Link } from "react-router-dom";
import i18n from '../i18n';
import { withTranslation } from 'react-i18next';
// IMPORT COMPONENTS // IMPORT COMPONENTS
import Breadcrumb from "../components/Global/Breadcrumb"; import Breadcrumb from "../components/Global/Breadcrumb";
@ -98,8 +100,24 @@ class Meteorology extends React.Component {
{items.map(item=>( {items.map(item=>(
<Link to={`/prices/meteorology/${item.slug}`} className="planscard"> <Link to={`/prices/meteorology/${item.slug}`} className="planscard" key={item.id}>
<h4>{item.title}</h4> <h4>{
(() => {
if(i18n.language === 'en') {
return (
JSON.parse(item['translations'][0]['attribute_data']).title
)
} else if (i18n.language === 'ru') {
return (
item.title
)
} else {
return (
JSON.parse(item['translations'][1]['attribute_data']).title
)
}
})()
}</h4>
</Link> </Link>
))} ))}
@ -114,4 +132,5 @@ class Meteorology extends React.Component {
} }
}; };
export default Meteorology; // export default Meteorology;
export default withTranslation()(Meteorology);

View File

@ -1,8 +1,8 @@
// IMPORT MODULES // IMPORT MODULES
import React from "react"; import React from "react";
import { Link } from "react-router-dom"; import { Link } from "react-router-dom";
// import i18n from '../i18n'; import i18n from '../i18n';
// import { withTranslation } from 'react-i18next'; import { withTranslation } from 'react-i18next';
// IMPORT COMPONENTS // IMPORT COMPONENTS
import Breadcrumb from "../components/Global/Breadcrumb"; import Breadcrumb from "../components/Global/Breadcrumb";
@ -111,12 +111,19 @@ class News extends React.Component {
<div className="tab-bottom"> <div className="tab-bottom">
<span className="tab-date">30.05.2021</span> <span className="tab-date">30.05.2021</span>
<h2 className="tab-name"> <h2 className="tab-name">
Состоялись мероприятия, приуроченные к Празднику { i18n.language === 'en' &&
туркменского ковра JSON.parse(item['translations'][0]['attribute_data']).title
}
{ i18n.language === 'ru' &&
item.title
}
{ i18n.language === 'tm' &&
JSON.parse(item['translations'][1]['attribute_data']).title
}
</h2> </h2>
<div className="tab-header-link tab-link"> <div className="tab-header-link tab-link">
<Link to={`/news/${item.slug}`}> <Link to={`/news/${item.slug}`}>
<span>Подробнее</span> <span>Подробнее</span>
<div> <div>
<img src={RightArrowBlue} alt="RIGHTARROW" /> <img src={RightArrowBlue} alt="RIGHTARROW" />
@ -164,4 +171,5 @@ class News extends React.Component {
} }
}; };
export default News; // export default News;
export default withTranslation()(News);

View File

@ -1,6 +1,6 @@
// IMPORT MODULES // IMPORT MODULES
import React from "react"; import React from "react";
// import i18n from '../i18n'; import i18n from '../i18n';
import { withTranslation } from 'react-i18next'; import { withTranslation } from 'react-i18next';
// IMPORT COMPONENTS // IMPORT COMPONENTS
@ -102,12 +102,29 @@ class Novelty extends React.Component {
<img src={item[0]['featured_images'][0]['path']} alt="Novelty" /> <img src={item[0]['featured_images'][0]['path']} alt="Novelty" />
</div> </div>
<h4 className="novelty-title"> <h4 className="novelty-title">
Очередная видеовстреча с зарубежными партнёрами { i18n.language === 'en' &&
JSON.parse(item[0]['translations'][0]['attribute_data']).title
}
{ i18n.language === 'ru' &&
item[0]['title']
}
{ i18n.language === 'tm' &&
JSON.parse(item[0]['translations'][1]['attribute_data']).title
}
</h4> </h4>
</div> </div>
<div className="novelty-text"> <div className="novelty-text">
{item[0]['content']} {/* {item[0]['content']} */}
{ i18n.language === 'en' &&
JSON.parse(item[0]['translations'][0]['attribute_data']).content
}
{ i18n.language === 'ru' &&
item[0]['content']
}
{ i18n.language === 'tm' &&
JSON.parse(item[0]['translations'][1]['attribute_data']).content
}
</div> </div>
</div> </div>

196
src/pages/Post.js Normal file
View File

@ -0,0 +1,196 @@
// IMPORT MODULES
import React from "react";
import parse from 'html-react-parser';
import i18n from '../i18n';
import { withTranslation } from 'react-i18next';
// IMPORT COMPONENTS
import Breadcrumb from "../components/Global/Breadcrumb";
// IMPORT IMAGES
// import Img from "../img/pricesImg_3-large.jpg";
// const Post = () => {
// useEffect(() => {
// window.scrollTo(0, 0);
// }, []);
class Post extends React.Component {
constructor(props) {
super(props);
this.state = {
items: [],
DataisLoaded: false,
error: null
};
}
componentDidMount() {
this._mounted = true
this.makeRemoteRequest();
// this.translate();
// console.log(this.state.items);
}
componentWillUnmount() {
this._mounted = false
}
makeRemoteRequest = () => {
const url = `http://217.174.238.204:8888/api/v1/posts/`+this.props.match.params.slug;
if (this._mounted) {
this.setState({ DataisLoaded: true });
}
setTimeout(() => {
fetch(url, {
method: 'GET',
})
.then(res => res.json())
.then(res => {
if (this._mounted) {
this.setState({
items: res.data,
error: res.message || null,
DataisLoaded: true,
})
// console.log(this.state.items[0][0]['content_html'])
//
// let elem = document.querySelector('.calibrate-thermo-table structure-employees');
// elem.innerHTML= this.state.items[0][0]['content_html'];
// elem.innerHTML = 'salam';
// console.log(elem);
// if(i18n.language == 'ru')
// {
// elem.innerHTML= this.state.items['data'][0][0]['content'];
// this._isMounted = false;
// }
// else if(i18n.language == 'en')
// {
// elem.innerHTML= JSON.parse(this.state.items['data'][0][0]['translations'][0]['attribute_data']).content;
// this._isMounted = false;
// }
// else
// {
// elem.innerHTML= JSON.parse(this.state.items['data'][0][0]['translations'][1]['attribute_data']).content;
// this._isMounted = false;
// }
//
}
})
.catch(error => {
if (this._mounted) {
this.setState({ error, DataisLoaded: false});
console.log(error);
}
});
}, 1500);
// console.log(this.state.items);
};
// translate = () => {
// // console.log('salam');
// // let elem = document.querySelector('.calibrate-thermo-table structure-employees');
// // elem.innerHTML= this.state.items[0][0]['content'];
// console.log(this.state.items[0][0]['content'])
// }
render() {
// console.log(this.state.items);
// let elem = document.querySelector('.calibrate-thermo-table structure-employees');
// console.log(elem);
// const [pageIndex, setPageIndex] = useState(1);
// let elem = document.querySelector('.calibrate-thermo-table structure-employees');
// elem.innerHTML= this.state.items[0][0]['content'];
var {DataisLoaded, items} = this.state;
if(!DataisLoaded){
return <div>Loading ....</div>
}else{
return (
<section className="calibrate-thermo">
<Breadcrumb
path_1="Стоимость"
path_2="Стоимость калибровки термометров сопротивления в калибровки в аккредитованной области"
link_1="/prices"
currentUrl="/prices/calibrate_thermo"
/>
<div className="container">
{items.map(item=>(
<div className="calibrate-thermo-inner" key={item[0]['id']}>
<div className="tab-header">
<h4 className="tab-header-text" id="tab-header-text">
Тарифы
</h4>
<div className="tab-header-line"></div>
</div>
<div className="calibrate-thermo-content">
<div className="novelty-head">
<div className="novelty-img">
<img src={item[0]['featured_images'][0]['path']} alt="Calibration" />
</div>
<h4 className="novelty-title">
{ i18n.language === 'en' &&
JSON.parse(item[0]['translations'][0]['attribute_data']).title
}
{ i18n.language === 'ru' &&
item[0]['title']
}
{ i18n.language === 'tm' &&
JSON.parse(item[0]['translations'][1]['attribute_data']).title
}
</h4>
</div>
<div className="calibrate-thermo-table structure-employees">
{ i18n.language === 'en' &&
parse(JSON.parse(item[0]['translations'][0]['attribute_data']).content )
}
{ i18n.language === 'ru' &&
parse(item[0]['content'])
}
{ i18n.language === 'tm' &&
parse(JSON.parse(item[0]['translations'][1]['attribute_data']).content )
}
{/* {
let elem = document.querySelector('.calibrate-thermo-table structure-employees');
console.log(elem);
} */}
</div>
</div>
</div>
))}
</div>
</section>
);
}
}
};
// export default Post;
export default withTranslation()(Post);

View File

@ -1,5 +1,5 @@
// IMPORT MODULES // IMPORT MODULES
import React, { useEffect } from "react"; import React from "react";
// IMPORT COMPONENTS // IMPORT COMPONENTS
import Breadcrumb from "../components/Global/Breadcrumb"; import Breadcrumb from "../components/Global/Breadcrumb";
@ -110,7 +110,7 @@ class Structure extends React.Component {
</tr> </tr>
{items.map(item=>( {items.map(item=>(
<tr> <tr key={item.id}>
<td> <td>
<span className="name"> <span className="name">
{item.name} {item.name}

View File

@ -23,7 +23,7 @@
p { p {
font-size: 1.8rem; font-size: 1.8rem;
word-spacing: 0.1rem; word-spacing: 0.1rem;
line-height: 3rem; line-height: 3.5rem;
} }
} }

View File

@ -145,12 +145,12 @@
.tab-top { .tab-top {
div { div {
max-width: 40rem; max-width: 40rem;
max-height: 26rem; height: 26rem;
img { img {
width: 100%; width: 100%;
height: 100%; height: 100%;
object-fit: contain; object-fit: cover;
} }
} }
} }
@ -312,12 +312,13 @@
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
// max-width: 37.6rem;
// img { img {
// width: 100%; width: 100%;
// height: 100%; height: 100%;
// object-fit: contain; object-fit: contain;
// } }
} }
// THIRD TAB SECTION // THIRD TAB SECTION
@ -359,6 +360,7 @@
} }
@media screen and (max-width: 1360px) { @media screen and (max-width: 1360px) {
.slider { .slider {
padding-bottom: 6rem; padding-bottom: 6rem;
} }
@ -371,6 +373,8 @@
.dept { .dept {
max-width: unset; max-width: unset;
max-height: unset;
height: 100%;
} }
.sites-wrapper .site { .sites-wrapper .site {

View File

@ -20,7 +20,8 @@
.novelty-img { .novelty-img {
max-width: 100rem; max-width: 100rem;
max-height: 56.6rem; // max-height: 56.6rem;
height: 70.6rem;
img { img {
width: 100%; width: 100%;
@ -38,6 +39,7 @@
.novelty-text { .novelty-text {
font-size: 1.8rem; font-size: 1.8rem;
text-align: left; text-align: left;
line-height: 3.5rem;
} }
.pgraph { .pgraph {