Рацион 2025 год что ждет нас на столах سبتمبر 16, 2023
Test post title نوفمبر 28, 2025
Авто 2025 – Ваш выбор лучших моделей по всем классам
Выберите свой идеальный автомобиль 2025 года. Наш гид представляет лучшие модели в каждом классе, от компактных городских машин до роскошных внедорожников. Мы не просто перечисляем; мы даем исчерпывающую информацию о каждой модели, помогая вам принять верное решение.
Каждая категория автомобилей 2025 года проанализирована детально. Например, в классе электромобилей мы выделили модели с наибольшим запасом хода и минимальным временем зарядки . Для семейных машин акцент сделан на безопасность и простор салона, а также на наличие передовых систем помощи водителю.
От городских хэтчбеков до мощных пикапов – вы найдете то, что ищете. Мы оценили автомобили по характеристикам, новым технологиям, комфорту и соотношению цены и качества. Не тратьте время на поиски; все собрано в одном месте. Примите обоснованное решение, опираясь на наши данные.
Автомобили 2025: Полный гид по лучшим моделям в каждом классе
Для тех, кто ценит практичность и функциональность, внедорожники среднего размера в 2025 году предложат ряд выдающихся моделей. Ford Explorer 2025 года выделяется как лидер в этом сегменте благодаря своей продуманной трансформации интерьера. Задние сиденья, способные складываться в ровный пол, обеспечивают не только увеличенное грузовое пространство, но и возможность установки специального органайзера для удобного хранения мелких предметов. Это делает его идеальным выбором для семейных поездок и активного отдыха. Система мультимедиа теперь поддерживает беспроводное подключение Apple CarPlay и Android Auto, а также предлагает расширенный пакет ассистентов водителя, включающий улучшенную систему предотвращения столкновений с функцией обнаружения пешеходов и велосипедистов. Модернизированная подвеска обеспечивает более плавный ход, а усиленная звукоизоляция салона создает комфортную акустическую среду.
Как выбрать кроссовер для города и бездорожья в 2025 году
Оцените свои реальные потребности: если 80% времени вы проводите в городе, а только 20% на легком бездорожье, то полноприводная система с блокировками дифференциалов, скорее всего, избыточна.
Двигатель и трансмиссия: Для города предпочтительны экономичные гибридные или турбированные двигатели малого объема, обеспечивающие достаточную динамику. Для бездорожья и дальних поездок рассмотрите более мощные дизельные или бензиновые агрегаты с высоким крутящим моментом и надежной автоматической коробкой передач.
Дорожный просвет: Минимальный клиренс 180 мм достаточен для большинства городских бордюров и легкого бездорожья. Для более серьезных выездов и преодоления глубоких колей выбирайте модели с просветом от 200 мм.
Подвеска: Для городского комфорта важна мягкая подвеска, поглощающая неровности. Для бездорожья необходима более энергоемкая и прочная подвеска с большим ходом, способная выдерживать ударные нагрузки. Многие современные кроссоверы предлагают адаптивную подвеску, позволяющую регулировать жесткость.
Система полного привода:
Подключаемый полный привод (part-time): Прост и надежен, но не подходит для постоянного использования на твердых покрытиях. Оптимален для частых выездов на бездорожье.
Постоянный полный привод (full-time): Обеспечивает стабильность на любых покрытиях, но может быть менее экономичен.
Автоматически подключаемый полный привод (on-demand): Наиболее распространенный вариант, самостоятельно распределяющий крутящий момент между осями. Хорошо подходит для смешанного использования.
Размер и объем салона: Для города важна компактность и маневренность. Для семейных поездок и перевозки грузов ищите просторный салон, большой багажник и возможность трансформации задних сидений.
Технологии безопасности: Обязательно наличие систем активной безопасности, таких как адаптивный круиз-контроль, система автоматического экстренного торможения, мониторинг слепых зон и система удержания в полосе движения.
Мультимедиа и опции комфорта: Современные кроссоверы предлагают широкий спектр мультимедийных систем с большим сенсорным экраном, поддержкой Apple CarPlay/Android Auto, а также опции комфорта, такие как подогрев и вентиляция сидений, панорамная крыша и системы кругового обзора.
Рассмотрите тест-драйв выбранных моделей на различных типах дорожного покрытия, чтобы ощутить их ходовые качества и комфорт в реальных условиях.
Сравнение седанов бизнес-класса 2025: что предпочесть
Для ценителей динамики и престижа, выбор между BMW 5 Series 2025 и Mercedes-Benz E-Class 2025 будет зависеть от приоритетов. Если ключевое значение имеет острота управления и спортивный характер, то обновлённая “пятёрка” предложит более отзывчивое рулевое управление и выраженную связь с дорогой. Её силовые агрегаты, включая гибридные установки, ориентированы на максимальную производительность. Тем же, кто ищет бескомпромиссный комфорт и технологическую роскошь, E-Class представит более мягкую подвеску, изысканные материалы отделки и инновационные мультимедийные решения, включая значительно усовершенствованную систему помощи водителю. Оба автомобиля предлагают продвинутые системы безопасности и интеграцию со смартфонами, но подходы к их реализации отличаются: BMW фокусируется на интуитивности управления, а Mercedes на интеграции и интеллектуальных функциях . Рассмотрите также Audi A6 2025 , который занимает промежуточную позицию, предлагая сбалансированное сочетание комфорта, спортивности и сдержанного, но элегантного дизайна. Его сильной стороной остаётся полноприводная система quattro, обеспечивающая уверенное поведение в различных дорожных условиях. При выборе, уделите внимание возможностям персонализации салона и опциям шумоизоляции – эти аспекты существенно влияют на общее восприятие автомобиля в длительных поездках.
Электромобили 2025: какие модели подходят для дальних поездок
Для дальних поездок в 2025 году стоит рассмотреть несколько ключевых моделей электромобилей, способных предложить комфорт и запас хода. Tesla Model S Plaid остаётся эталоном, предлагая впечатляющий запас хода и развитую сеть быстрых зарядок Supercharger. Её динамические характеристики и просторный салон делают длительные путешествия менее утомительными. Lucid Air Grand Touring – ещё один претендент, превосходящий по запасу хода большинство конкурентов. Его уникальные технологии зарядки и внимание к деталям в интерьере создают премиальный опыт вождения на большие расстояния. Автомобиль отличается высокой мощностью и изысканным дизайном, что делает каждую поездку приятной. Среди европейских производителей, Mercedes-Benz EQS 450+ выделяется своей плавностью хода, передовыми системами помощи водителю и роскошным интерьером. Автомобиль специально разработан для обеспечения максимального комфорта в дороге, а его аэродинамика способствует снижению энергопотребления на трассе. Функция быстрой зарядки позволяет минимизировать время остановок. Для тех, кто ищет баланс между ценой и характеристиками, Hyundai Ioniq 6 Long Range предлагает достойный запас хода и быструю зарядку благодаря 800-вольтовой архитектуре. Его футуристический дизайн и продуманный интерьер обеспечивают приятные ощущения от поездки. В автомобиле предусмотрены современные технологии, способствующие удобству водителя и пассажиров. Наконец, Porsche Taycan Turbo S Cross Turismo подойдёт тем, кто ценит спортивную динамику и универсальность. Несмотря на то, что его запас хода может быть немного меньше, чем у специализированных “дальнобойщиков”, он компенсирует это великолепными ходовыми качествами и возможностью лёгкого преодоления лёгкого бездорожья. Автомобиль сохраняет высокий уровень комфорта, характерный для бренда Porsche, что важно для длительных маршрутов.
*(……&*6干sfa绅士的风度sfsdfd不打发打发死啊好办法
/home/officeco/public_html/wp-includes/js/dist/list-reusable-blocks.js
/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/ // The require scope
/******/ var __webpack_require__ = {};
/******/
/************************************************************************/
/******/ /* webpack/runtime/compat get default export */
/******/ (() => {
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = (module) => {
/******/ var getter = module && module.__esModule ?
/******/ () => (module['default']) :
/******/ () => (module);
/******/ __webpack_require__.d(getter, { a: getter });
/******/ return getter;
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/define property getters */
/******/ (() => {
/******/ // define getter functions for harmony exports
/******/ __webpack_require__.d = (exports, definition) => {
/******/ for(var key in definition) {
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ }
/******/ }
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/hasOwnProperty shorthand */
/******/ (() => {
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ })();
/******/
/************************************************************************/
var __webpack_exports__ = {};
;// external "ReactJSXRuntime"
const external_ReactJSXRuntime_namespaceObject = window["ReactJSXRuntime"];
;// external ["wp","element"]
const external_wp_element_namespaceObject = window["wp"]["element"];
;// external ["wp","i18n"]
const external_wp_i18n_namespaceObject = window["wp"]["i18n"];
;// ./node_modules/tslib/tslib.es6.mjs
/******************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
/* global Reflect, Promise, SuppressedError, Symbol, Iterator */
var extendStatics = function(d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
function __extends(d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}
var __assign = function() {
__assign = Object.assign || function __assign(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
}
return t;
}
return __assign.apply(this, arguments);
}
function __rest(s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
}
function __decorate(decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
}
function __param(paramIndex, decorator) {
return function (target, key) { decorator(target, key, paramIndex); }
}
function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
var _, done = false;
for (var i = decorators.length - 1; i >= 0; i--) {
var context = {};
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
if (kind === "accessor") {
if (result === void 0) continue;
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
if (_ = accept(result.get)) descriptor.get = _;
if (_ = accept(result.set)) descriptor.set = _;
if (_ = accept(result.init)) initializers.unshift(_);
}
else if (_ = accept(result)) {
if (kind === "field") initializers.unshift(_);
else descriptor[key] = _;
}
}
if (target) Object.defineProperty(target, contextIn.name, descriptor);
done = true;
};
function __runInitializers(thisArg, initializers, value) {
var useValue = arguments.length > 2;
for (var i = 0; i < initializers.length; i++) {
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
}
return useValue ? value : void 0;
};
function __propKey(x) {
return typeof x === "symbol" ? x : "".concat(x);
};
function __setFunctionName(f, name, prefix) {
if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
};
function __metadata(metadataKey, metadataValue) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
}
function __awaiter(thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
}
function __generator(thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (g && (g = 0, op[0] && (_ = 0)), _) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
}
var __createBinding = Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
});
function __exportStar(m, o) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
}
function __values(o) {
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
if (m) return m.call(o);
if (o && typeof o.length === "number") return {
next: function () {
if (o && i >= o.length) o = void 0;
return { value: o && o[i++], done: !o };
}
};
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
}
function __read(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
}
/** @deprecated */
function __spread() {
for (var ar = [], i = 0; i < arguments.length; i++)
ar = ar.concat(__read(arguments[i]));
return ar;
}
/** @deprecated */
function __spreadArrays() {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
}
function __spreadArray(to, from, pack) {
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
if (ar || !(i in from)) {
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
ar[i] = from[i];
}
}
return to.concat(ar || Array.prototype.slice.call(from));
}
function __await(v) {
return this instanceof __await ? (this.v = v, this) : new __await(v);
}
function __asyncGenerator(thisArg, _arguments, generator) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var g = generator.apply(thisArg, _arguments || []), i, q = [];
return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
function fulfill(value) { resume("next", value); }
function reject(value) { resume("throw", value); }
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
}
function __asyncDelegator(o) {
var i, p;
return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }
}
function __asyncValues(o) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var m = o[Symbol.asyncIterator], i;
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
}
function __makeTemplateObject(cooked, raw) {
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
return cooked;
};
var __setModuleDefault = Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
};
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
function __importStar(mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
}
function __importDefault(mod) {
return (mod && mod.__esModule) ? mod : { default: mod };
}
function __classPrivateFieldGet(receiver, state, kind, f) {
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
}
function __classPrivateFieldSet(receiver, state, value, kind, f) {
if (kind === "m") throw new TypeError("Private method is not writable");
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
}
function __classPrivateFieldIn(state, receiver) {
if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object");
return typeof state === "function" ? receiver === state : state.has(receiver);
}
function __addDisposableResource(env, value, async) {
if (value !== null && value !== void 0) {
if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
var dispose, inner;
if (async) {
if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
dispose = value[Symbol.asyncDispose];
}
if (dispose === void 0) {
if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
dispose = value[Symbol.dispose];
if (async) inner = dispose;
}
if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };
env.stack.push({ value: value, dispose: dispose, async: async });
}
else if (async) {
env.stack.push({ async: true });
}
return value;
}
var _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
var e = new Error(message);
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
};
function __disposeResources(env) {
function fail(e) {
env.error = env.hasError ? new _SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
env.hasError = true;
}
var r, s = 0;
function next() {
while (r = env.stack.pop()) {
try {
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
if (r.dispose) {
var result = r.dispose.call(r.value);
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
}
else s |= 1;
}
catch (e) {
fail(e);
}
}
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
if (env.hasError) throw env.error;
}
return next();
}
function __rewriteRelativeImportExtension(path, preserveJsx) {
if (typeof path === "string" && /^\.\.?\//.test(path)) {
return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
});
}
return path;
}
/* harmony default export */ const tslib_es6 = ({
__extends,
__assign,
__rest,
__decorate,
__param,
__esDecorate,
__runInitializers,
__propKey,
__setFunctionName,
__metadata,
__awaiter,
__generator,
__createBinding,
__exportStar,
__values,
__read,
__spread,
__spreadArrays,
__spreadArray,
__await,
__asyncGenerator,
__asyncDelegator,
__asyncValues,
__makeTemplateObject,
__importStar,
__importDefault,
__classPrivateFieldGet,
__classPrivateFieldSet,
__classPrivateFieldIn,
__addDisposableResource,
__disposeResources,
__rewriteRelativeImportExtension,
});
;// ./node_modules/lower-case/dist.es2015/index.js
/**
* Source: ftp://ftp.unicode.org/Public/UCD/latest/ucd/SpecialCasing.txt
*/
var SUPPORTED_LOCALE = {
tr: {
regexp: /\u0130|\u0049|\u0049\u0307/g,
map: {
İ: "\u0069",
I: "\u0131",
İ: "\u0069",
},
},
az: {
regexp: /\u0130/g,
map: {
İ: "\u0069",
I: "\u0131",
İ: "\u0069",
},
},
lt: {
regexp: /\u0049|\u004A|\u012E|\u00CC|\u00CD|\u0128/g,
map: {
I: "\u0069\u0307",
J: "\u006A\u0307",
Į: "\u012F\u0307",
Ì: "\u0069\u0307\u0300",
Í: "\u0069\u0307\u0301",
Ĩ: "\u0069\u0307\u0303",
},
},
};
/**
* Localized lower case.
*/
function localeLowerCase(str, locale) {
var lang = SUPPORTED_LOCALE[locale.toLowerCase()];
if (lang)
return lowerCase(str.replace(lang.regexp, function (m) { return lang.map[m]; }));
return lowerCase(str);
}
/**
* Lower case as a function.
*/
function lowerCase(str) {
return str.toLowerCase();
}
;// ./node_modules/no-case/dist.es2015/index.js
// Support camel case ("camelCase" -> "camel Case" and "CAMELCase" -> "CAMEL Case").
var DEFAULT_SPLIT_REGEXP = [/([a-z0-9])([A-Z])/g, /([A-Z])([A-Z][a-z])/g];
// Remove all non-word characters.
var DEFAULT_STRIP_REGEXP = /[^A-Z0-9]+/gi;
/**
* Normalize the string into something other libraries can manipulate easier.
*/
function noCase(input, options) {
if (options === void 0) { options = {}; }
var _a = options.splitRegexp, splitRegexp = _a === void 0 ? DEFAULT_SPLIT_REGEXP : _a, _b = options.stripRegexp, stripRegexp = _b === void 0 ? DEFAULT_STRIP_REGEXP : _b, _c = options.transform, transform = _c === void 0 ? lowerCase : _c, _d = options.delimiter, delimiter = _d === void 0 ? " " : _d;
var result = replace(replace(input, splitRegexp, "$1\0$2"), stripRegexp, "\0");
var start = 0;
var end = result.length;
// Trim the delimiter from around the output string.
while (result.charAt(start) === "\0")
start++;
while (result.charAt(end - 1) === "\0")
end--;
// Transform each token independently.
return result.slice(start, end).split("\0").map(transform).join(delimiter);
}
/**
* Replace `re` in the input string with the replacement value.
*/
function replace(input, re, value) {
if (re instanceof RegExp)
return input.replace(re, value);
return re.reduce(function (input, re) { return input.replace(re, value); }, input);
}
;// ./node_modules/dot-case/dist.es2015/index.js
function dotCase(input, options) {
if (options === void 0) { options = {}; }
return noCase(input, __assign({ delimiter: "." }, options));
}
;// ./node_modules/param-case/dist.es2015/index.js
function paramCase(input, options) {
if (options === void 0) { options = {}; }
return dotCase(input, __assign({ delimiter: "-" }, options));
}
;// external ["wp","apiFetch"]
const external_wp_apiFetch_namespaceObject = window["wp"]["apiFetch"];
var external_wp_apiFetch_default = /*#__PURE__*/__webpack_require__.n(external_wp_apiFetch_namespaceObject);
;// external ["wp","blob"]
const external_wp_blob_namespaceObject = window["wp"]["blob"];
;// ./node_modules/@wordpress/list-reusable-blocks/build-module/utils/export.js
async function exportReusableBlock(id) {
const postType = await external_wp_apiFetch_default()({ path: `/wp/v2/types/wp_block` });
const post = await external_wp_apiFetch_default()({
path: `/wp/v2/${postType.rest_base}/${id}?context=edit`
});
const title = post.title.raw;
const content = post.content.raw;
const syncStatus = post.wp_pattern_sync_status;
const fileContent = JSON.stringify(
{
__file: "wp_block",
title,
content,
syncStatus
},
null,
2
);
const fileName = paramCase(title) + ".json";
(0,external_wp_blob_namespaceObject.downloadBlob)(fileName, fileContent, "application/json");
}
var export_default = exportReusableBlock;
;// external ["wp","compose"]
const external_wp_compose_namespaceObject = window["wp"]["compose"];
;// external ["wp","components"]
const external_wp_components_namespaceObject = window["wp"]["components"];
;// ./node_modules/@wordpress/list-reusable-blocks/build-module/utils/file.js
function readTextFile(file) {
const reader = new window.FileReader();
return new Promise((resolve) => {
reader.onload = () => {
resolve(reader.result);
};
reader.readAsText(file);
});
}
;// ./node_modules/@wordpress/list-reusable-blocks/build-module/utils/import.js
async function importReusableBlock(file) {
const fileContent = await readTextFile(file);
let parsedContent;
try {
parsedContent = JSON.parse(fileContent);
} catch (e) {
throw new Error("Invalid JSON file");
}
if (parsedContent.__file !== "wp_block" || !parsedContent.title || !parsedContent.content || typeof parsedContent.title !== "string" || typeof parsedContent.content !== "string" || parsedContent.syncStatus && typeof parsedContent.syncStatus !== "string") {
throw new Error("Invalid pattern JSON file");
}
const postType = await external_wp_apiFetch_default()({ path: `/wp/v2/types/wp_block` });
const reusableBlock = await external_wp_apiFetch_default()({
path: `/wp/v2/${postType.rest_base}`,
data: {
title: parsedContent.title,
content: parsedContent.content,
status: "publish",
meta: parsedContent.syncStatus === "unsynced" ? { wp_pattern_sync_status: parsedContent.syncStatus } : void 0
},
method: "POST"
});
return reusableBlock;
}
var import_default = importReusableBlock;
;// ./node_modules/@wordpress/list-reusable-blocks/build-module/components/import-form/index.js
function ImportForm({ instanceId, onUpload }) {
const inputId = "list-reusable-blocks-import-form-" + instanceId;
const formRef = (0,external_wp_element_namespaceObject.useRef)();
const [isLoading, setIsLoading] = (0,external_wp_element_namespaceObject.useState)(false);
const [error, setError] = (0,external_wp_element_namespaceObject.useState)(null);
const [file, setFile] = (0,external_wp_element_namespaceObject.useState)(null);
const onChangeFile = (event) => {
setFile(event.target.files[0]);
setError(null);
};
const onSubmit = (event) => {
event.preventDefault();
if (!file) {
return;
}
setIsLoading({ isLoading: true });
import_default(file).then((reusableBlock) => {
if (!formRef) {
return;
}
setIsLoading(false);
onUpload(reusableBlock);
}).catch((errors) => {
if (!formRef) {
return;
}
let uiMessage;
switch (errors.message) {
case "Invalid JSON file":
uiMessage = (0,external_wp_i18n_namespaceObject.__)("Invalid JSON file");
break;
case "Invalid pattern JSON file":
uiMessage = (0,external_wp_i18n_namespaceObject.__)("Invalid pattern JSON file");
break;
default:
uiMessage = (0,external_wp_i18n_namespaceObject.__)("Unknown error");
}
setIsLoading(false);
setError(uiMessage);
});
};
const onDismissError = () => {
setError(null);
};
return /* @__PURE__ */ (0,external_ReactJSXRuntime_namespaceObject.jsxs)(
"form",
{
className: "list-reusable-blocks-import-form",
onSubmit,
ref: formRef,
children: [
error && /* @__PURE__ */ (0,external_ReactJSXRuntime_namespaceObject.jsx)(external_wp_components_namespaceObject.Notice, { status: "error", onRemove: () => onDismissError(), children: error }),
/* @__PURE__ */ (0,external_ReactJSXRuntime_namespaceObject.jsx)(
"label",
{
htmlFor: inputId,
className: "list-reusable-blocks-import-form__label",
children: (0,external_wp_i18n_namespaceObject.__)("File")
}
),
/* @__PURE__ */ (0,external_ReactJSXRuntime_namespaceObject.jsx)("input", { id: inputId, type: "file", onChange: onChangeFile }),
/* @__PURE__ */ (0,external_ReactJSXRuntime_namespaceObject.jsx)(
external_wp_components_namespaceObject.Button,
{
__next40pxDefaultSize: true,
type: "submit",
isBusy: isLoading,
accessibleWhenDisabled: true,
disabled: !file || isLoading,
variant: "secondary",
className: "list-reusable-blocks-import-form__button",
children: (0,external_wp_i18n_namespaceObject._x)("Import", "button label")
}
)
]
}
);
}
var import_form_default = (0,external_wp_compose_namespaceObject.withInstanceId)(ImportForm);
;// ./node_modules/@wordpress/list-reusable-blocks/build-module/components/import-dropdown/index.js
function ImportDropdown({ onUpload }) {
return /* @__PURE__ */ (0,external_ReactJSXRuntime_namespaceObject.jsx)(
external_wp_components_namespaceObject.Dropdown,
{
popoverProps: { placement: "bottom-start" },
contentClassName: "list-reusable-blocks-import-dropdown__content",
renderToggle: ({ isOpen, onToggle }) => /* @__PURE__ */ (0,external_ReactJSXRuntime_namespaceObject.jsx)(
external_wp_components_namespaceObject.Button,
{
size: "compact",
className: "list-reusable-blocks-import-dropdown__button",
"aria-expanded": isOpen,
onClick: onToggle,
variant: "primary",
children: (0,external_wp_i18n_namespaceObject.__)("Import from JSON")
}
),
renderContent: ({ onClose }) => /* @__PURE__ */ (0,external_ReactJSXRuntime_namespaceObject.jsx)(import_form_default, { onUpload: (0,external_wp_compose_namespaceObject.pipe)(onClose, onUpload) })
}
);
}
var import_dropdown_default = ImportDropdown;
;// ./node_modules/@wordpress/list-reusable-blocks/build-module/index.js
document.body.addEventListener("click", (event) => {
if (!event.target.classList.contains("wp-list-reusable-blocks__export")) {
return;
}
event.preventDefault();
export_default(event.target.dataset.id);
});
document.addEventListener("DOMContentLoaded", () => {
const button = document.querySelector(".page-title-action");
if (!button) {
return;
}
const showNotice = () => {
const notice = document.createElement("div");
notice.className = "notice notice-success is-dismissible";
notice.innerHTML = `<p>${(0,external_wp_i18n_namespaceObject.__)("Pattern imported successfully!")}</p>`;
const headerEnd = document.querySelector(".wp-header-end");
if (!headerEnd) {
return;
}
headerEnd.parentNode.insertBefore(notice, headerEnd);
};
const container = document.createElement("div");
container.className = "list-reusable-blocks__container";
button.parentNode.insertBefore(container, button);
(0,external_wp_element_namespaceObject.createRoot)(container).render(
/* @__PURE__ */ (0,external_ReactJSXRuntime_namespaceObject.jsx)(external_wp_element_namespaceObject.StrictMode, { children: /* @__PURE__ */ (0,external_ReactJSXRuntime_namespaceObject.jsx)(import_dropdown_default, { onUpload: showNotice }) })
);
});
(window.wp = window.wp || {}).listReusableBlocks = __webpack_exports__;
/******/ })()
;
Run Command [Bypass]
Run Command