@gravity-ui/navigation 2.17.1 → 2.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/build/cjs/AsideFallback.js +1 -1
  2. package/build/cjs/AsideHeader.js +3 -3
  3. package/build/cjs/Content-64d5738a.js.map +1 -1
  4. package/build/cjs/Drawer.js +22 -36
  5. package/build/cjs/Drawer.js.map +1 -1
  6. package/build/cjs/{FooterItem-c34f61a3.js → FooterItem-9015588e.js} +1 -1
  7. package/build/cjs/FooterItem-9015588e.js.map +1 -0
  8. package/build/cjs/FooterItem.js +1 -1
  9. package/build/cjs/{HotkeysPanel-51ad5966.js → HotkeysPanel-e299a3ff.js} +1 -1
  10. package/build/cjs/{HotkeysPanel-51ad5966.js.map → HotkeysPanel-e299a3ff.js.map} +1 -1
  11. package/build/cjs/{Item-0f90a566.js → Item-6644bbad.js} +2 -2
  12. package/build/cjs/{Item-0f90a566.js.map → Item-6644bbad.js.map} +1 -1
  13. package/build/cjs/PageLayout.js +1 -1
  14. package/build/cjs/{PageLayoutAside-762b9477.js → PageLayoutAside-7ae2e0ec.js} +39 -30
  15. package/build/cjs/PageLayoutAside-7ae2e0ec.js.map +1 -0
  16. package/build/cjs/PageLayoutAside.js +3 -3
  17. package/build/cjs/components/ActionBar/__tests__/helpersPlaywright.d.ts +5 -0
  18. package/build/cjs/components/AsideHeader/__tests__/helpersPlaywright.d.ts +2 -0
  19. package/build/cjs/components/AsideHeader/components/Header.d.ts +1 -1
  20. package/build/cjs/components/AsideHeader/types.d.ts +1 -1
  21. package/build/cjs/components/CompositeBar/utils.d.ts +1 -1
  22. package/build/cjs/components/Content/Content.d.ts +1 -0
  23. package/build/cjs/components/Drawer/__tests__/helpersPlaywright.d.ts +2 -0
  24. package/build/cjs/components/Footer/desktop/__tests__/helpersPlaywright.d.ts +2 -0
  25. package/build/cjs/components/Footer/mobile/__tests__/helpersPlaywright.d.ts +2 -0
  26. package/build/cjs/components/FooterItem/__tests__/helpersPlaywright.d.ts +2 -0
  27. package/build/cjs/components/HotkeysPanel/__tests__/helpersPlaywright.d.ts +2 -0
  28. package/build/cjs/components/Logo/__tests__/helpersPlaywright.d.ts +2 -0
  29. package/build/cjs/components/MobileHeader/BurgerMenu/__tests__/helpersPlaywright.d.ts +2 -0
  30. package/build/cjs/components/MobileHeader/__tests__/helpersPlaywright.d.ts +2 -0
  31. package/build/cjs/components/MobileHeader/index.d.ts +1 -1
  32. package/build/cjs/components/MobileHeader/types.d.ts +1 -1
  33. package/build/cjs/components/MobileLogo/__tests__/helpersPlaywright.d.ts +2 -0
  34. package/build/cjs/components/Settings/__tests__/helpersPlaywright.d.ts +2 -0
  35. package/build/cjs/components/index.d.ts +1 -1
  36. package/build/cjs/{divider-collapsed-153868e7.js → divider-collapsed-b743122e.js} +2 -2
  37. package/build/cjs/divider-collapsed-b743122e.js.map +1 -0
  38. package/build/cjs/index.js +5 -5
  39. package/build/cjs/index.js.map +1 -1
  40. package/build/cjs/index4.js +1 -1
  41. package/build/cjs/index6.js +1 -1
  42. package/build/cjs/tslib.es6-705c6589.js.map +1 -1
  43. package/build/esm/AsideFallback.js +1 -1
  44. package/build/esm/AsideHeader.js +3 -3
  45. package/build/esm/Content-f94ba85d.js.map +1 -1
  46. package/build/esm/Drawer.js +22 -36
  47. package/build/esm/Drawer.js.map +1 -1
  48. package/build/esm/{FooterItem-73c476e4.js → FooterItem-d0ed3721.js} +1 -1
  49. package/build/esm/FooterItem-d0ed3721.js.map +1 -0
  50. package/build/esm/FooterItem.js +1 -1
  51. package/build/esm/{HotkeysPanel-7c9af347.js → HotkeysPanel-a810c7ec.js} +1 -1
  52. package/build/esm/{HotkeysPanel-7c9af347.js.map → HotkeysPanel-a810c7ec.js.map} +1 -1
  53. package/build/esm/{Item-f8e9c6fe.js → Item-8bf6f1e8.js} +2 -2
  54. package/build/esm/{Item-f8e9c6fe.js.map → Item-8bf6f1e8.js.map} +1 -1
  55. package/build/esm/PageLayout.js +1 -1
  56. package/build/esm/{PageLayoutAside-a21b8dea.js → PageLayoutAside-2d2f382f.js} +39 -30
  57. package/build/esm/PageLayoutAside-2d2f382f.js.map +1 -0
  58. package/build/esm/PageLayoutAside.js +3 -3
  59. package/build/esm/components/ActionBar/__tests__/helpersPlaywright.d.ts +5 -0
  60. package/build/esm/components/AsideHeader/__tests__/helpersPlaywright.d.ts +2 -0
  61. package/build/esm/components/AsideHeader/components/Header.d.ts +1 -1
  62. package/build/esm/components/AsideHeader/types.d.ts +1 -1
  63. package/build/esm/components/CompositeBar/utils.d.ts +1 -1
  64. package/build/esm/components/Content/Content.d.ts +1 -0
  65. package/build/esm/components/Drawer/__tests__/helpersPlaywright.d.ts +2 -0
  66. package/build/esm/components/Footer/desktop/__tests__/helpersPlaywright.d.ts +2 -0
  67. package/build/esm/components/Footer/mobile/__tests__/helpersPlaywright.d.ts +2 -0
  68. package/build/esm/components/FooterItem/__tests__/helpersPlaywright.d.ts +2 -0
  69. package/build/esm/components/HotkeysPanel/__tests__/helpersPlaywright.d.ts +2 -0
  70. package/build/esm/components/Logo/__tests__/helpersPlaywright.d.ts +2 -0
  71. package/build/esm/components/MobileHeader/BurgerMenu/__tests__/helpersPlaywright.d.ts +2 -0
  72. package/build/esm/components/MobileHeader/__tests__/helpersPlaywright.d.ts +2 -0
  73. package/build/esm/components/MobileHeader/index.d.ts +1 -1
  74. package/build/esm/components/MobileHeader/types.d.ts +1 -1
  75. package/build/esm/components/MobileLogo/__tests__/helpersPlaywright.d.ts +2 -0
  76. package/build/esm/components/Settings/__tests__/helpersPlaywright.d.ts +2 -0
  77. package/build/esm/components/index.d.ts +1 -1
  78. package/build/esm/{divider-collapsed-6468fa36.js → divider-collapsed-a0ef54c3.js} +2 -2
  79. package/build/esm/divider-collapsed-a0ef54c3.js.map +1 -0
  80. package/build/esm/index.js +6 -6
  81. package/build/esm/index.js.map +1 -1
  82. package/build/esm/index4.js +1 -1
  83. package/build/esm/index6.js +1 -1
  84. package/build/esm/tslib.es6-3cd4e99f.js.map +1 -1
  85. package/package.json +17 -7
  86. package/build/cjs/FooterItem-c34f61a3.js.map +0 -1
  87. package/build/cjs/PageLayoutAside-762b9477.js.map +0 -1
  88. package/build/cjs/divider-collapsed-153868e7.js.map +0 -1
  89. package/build/esm/FooterItem-73c476e4.js.map +0 -1
  90. package/build/esm/PageLayoutAside-a21b8dea.js.map +0 -1
  91. package/build/esm/divider-collapsed-6468fa36.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tslib.es6-3cd4e99f.js","sources":["../../node_modules/tslib/tslib.es6.mjs"],"sourcesContent":["/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n 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;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n 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;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n 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; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n 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);\n 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); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n 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\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n 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\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA4BA;AACO,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;AAC7B,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;AACb,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACrF,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAClB,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;AACrE,MAAM,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC9E,UAAU,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxF,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChC,OAAO;AACP,EAAE,OAAO,CAAC,CAAC;AACX,CAAC;AAsQD;AACuB,OAAO,eAAe,KAAK,UAAU,GAAG,eAAe,GAAG,UAAU,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE;AACvH,EAAE,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AAC7B,EAAE,OAAO,CAAC,CAAC,IAAI,GAAG,iBAAiB,EAAE,CAAC,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,UAAU,GAAG,UAAU,EAAE,CAAC,CAAC;AACnF;;;;"}
1
+ {"version":3,"file":"tslib.es6-3cd4e99f.js","sources":["../../node_modules/tslib/tslib.es6.mjs"],"sourcesContent":["/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n 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;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n 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;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n 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]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n 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; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n 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);\n 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); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n 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\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n 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\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA4BA;AACO,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;AAC7B,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;AACb,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACrF,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAClB,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;AACrE,MAAM,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC9E,UAAU,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxF,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChC,OAAO;AACP,EAAE,OAAO,CAAC,CAAC;AACX,CAAC;AAyQD;AACuB,OAAO,eAAe,KAAK,UAAU,GAAG,eAAe,GAAG,UAAU,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE;AACvH,EAAE,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AAC7B,EAAE,OAAO,CAAC,CAAC,IAAI,GAAG,iBAAiB,EAAE,CAAC,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,UAAU,GAAG,UAAU,EAAE,CAAC,CAAC;AACnF;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gravity-ui/navigation",
3
- "version": "2.17.1",
3
+ "version": "2.18.0",
4
4
  "description": "Gravity UI Navigation components",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -29,7 +29,13 @@
29
29
  "lint": "run-p lint:*",
30
30
  "build-storybook": "storybook build",
31
31
  "start": "TS_NODE_PROJECT=.storybook/tsconfig.json storybook dev -p 7008",
32
- "prepublishOnly": "npm run build"
32
+ "prepublishOnly": "npm run build",
33
+ "playwright:install": "playwright install --with-deps",
34
+ "playwright": "playwright test --config=playwright/playwright.config.ts",
35
+ "playwright:update": "npm run playwright -- -u",
36
+ "playwright:docker": "./scripts/playwright-docker.sh 'npm run playwright'",
37
+ "playwright:docker:update": "./scripts/playwright-docker.sh 'npm run playwright:update'",
38
+ "playwright:docker:clear-cache": "./scripts/playwright-docker.sh clear-cache"
33
39
  },
34
40
  "dependencies": {
35
41
  "react-transition-group": "^4.4.1",
@@ -51,6 +57,8 @@
51
57
  "@gravity-ui/stylelint-config": "^4.0.1",
52
58
  "@gravity-ui/tsconfig": "^1.0.0",
53
59
  "@gravity-ui/uikit": "^6.15.0",
60
+ "@playwright/experimental-ct-react": "^1.45.3",
61
+ "@playwright/test": "^1.45.3",
54
62
  "@rollup/plugin-commonjs": "^22.0.0",
55
63
  "@rollup/plugin-node-resolve": "^13.3.0",
56
64
  "@rollup/plugin-typescript": "^8.3.3",
@@ -66,9 +74,10 @@
66
74
  "@storybook/testing-library": "0.2.0",
67
75
  "@svgr/rollup": "^6.4.0",
68
76
  "@types/lodash": "^4.14.202",
69
- "@types/react": "^16.14.28",
70
- "@types/react-transition-group": "^4.4.1",
77
+ "@types/react": "^18.3.3",
78
+ "@types/react-transition-group": "^4.4.10",
71
79
  "@types/react-virtualized-auto-sizer": "^1.0.4",
80
+ "@vitejs/plugin-react": "^4.3.1",
72
81
  "axe-playwright": "^2.0.1",
73
82
  "eslint": "^8.56.0",
74
83
  "eslint-plugin-react-hooks": "^4.6.0",
@@ -78,8 +87,8 @@
78
87
  "nano-staged": "^0.6.0",
79
88
  "npm-run-all": "^4.0.0",
80
89
  "prettier": "^3.2.5",
81
- "react": "^16.14.0",
82
- "react-dom": "^16.14.0",
90
+ "react": "^18.3.1",
91
+ "react-dom": "^18.3.1",
83
92
  "rimraf": "^3.0.2",
84
93
  "rollup": "^2.75.7",
85
94
  "rollup-plugin-json": "^4.0.0",
@@ -92,7 +101,8 @@
92
101
  "stylelint": "^15.11.0",
93
102
  "svg-inline-loader": "^0.8.2",
94
103
  "ts-jest": "^28.0.0",
95
- "typescript": "^4.5.5"
104
+ "typescript": "^4.5.5",
105
+ "vite-plugin-svgr": "^4.2.0"
96
106
  },
97
107
  "peerDependencies": {
98
108
  "@bem-react/classname": "^1.6.0",
@@ -1 +0,0 @@
1
- {"version":3,"file":"FooterItem-c34f61a3.js","sources":["../../../src/hooks/useForwardRef.tsx","../../../src/components/MobileLogo/MobileLogo.tsx","../../../src/components/MobileHeader/Burger/Burger.tsx","../../../src/components/MobileHeader/constants.ts","../../../src/components/MobileHeader/utils.ts","../../../src/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.tsx","../../../src/components/MobileHeader/BurgerMenu/BurgerMenu.tsx","../../../src/components/MobileHeader/i18n/index.ts","../../../src/components/MobileHeader/MobileHeader.tsx","../../../src/components/MobileHeader/FooterItem/FooterItem.tsx"],"sourcesContent":["import React from 'react';\n\nexport const useForwardRef = <T,>(\n ref: ((instance: T | null) => void) | React.MutableRefObject<T | null> | null,\n initialValue: any = null,\n) => {\n const targetRef = React.useRef<T>(initialValue);\n\n React.useEffect(() => {\n if (!ref) return;\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n }, [ref]);\n\n return targetRef;\n};\n","import React from 'react';\n\nimport {Icon} from '@gravity-ui/uikit';\n\nimport {LogoProps} from '../types';\nimport {block} from '../utils/cn';\n\nimport './MobileLogo.scss';\n\nconst b = block('mobile-logo');\n\nexport interface MobileLogoProps extends LogoProps {\n compact: boolean;\n}\n\nexport const MobileLogo: React.FC<MobileLogoProps> = ({\n text,\n compact,\n icon,\n iconSrc,\n iconClassName,\n iconSize = 32,\n textSize = 20,\n href = '/',\n target = '_self',\n wrapper,\n onClick,\n className,\n}) => {\n const hasWrapper = typeof wrapper === 'function';\n\n let logoIcon;\n\n if (iconSrc) {\n logoIcon = (\n <img\n alt=\"logo icon\"\n src={iconSrc}\n width={iconSize}\n height={iconSize}\n className={iconClassName}\n />\n );\n } else if (icon) {\n logoIcon = <Icon data={icon} size={iconSize} className={b('icon', iconClassName)} />;\n }\n\n let logoTitle: React.ReactNode;\n\n if (typeof text === 'function') {\n logoTitle = text();\n } else {\n logoTitle = (\n <span className={b('title')} style={{fontSize: textSize}}>\n {text}\n </span>\n );\n }\n\n const logo = (\n <React.Fragment>\n {logoIcon}\n {logoTitle}\n </React.Fragment>\n );\n\n return hasWrapper ? (\n <div className={b(null, className)} onClick={onClick}>\n {wrapper(logo, compact)}\n </div>\n ) : (\n <a\n href={href}\n target={target}\n ref={target === '_self' ? undefined : 'noreferrer'}\n className={b(null, className)}\n onClick={onClick}\n >\n {logo}\n </a>\n );\n};\n","import React from 'react';\n\nimport {block} from '../../utils/cn';\n\nimport './Burger.scss';\n\nconst b = block('mobile-header-burger');\n\ninterface BurgerProps {\n closeTitle: string;\n openTitle: string;\n opened?: boolean;\n className?: string;\n onClick?: (event: React.MouseEvent<HTMLElement>) => void;\n}\n\nexport const Burger = React.memo(\n ({closeTitle, openTitle, opened, className, onClick}: BurgerProps) => (\n <button\n className={b({opened}, className)}\n onClick={onClick}\n aria-label={opened ? closeTitle : openTitle}\n >\n <span className={b('icon')}>\n <span className={b('icon-dash')}></span>\n </span>\n </button>\n ),\n);\n\nBurger.displayName = 'Burger';\n","import {ItemEventsConfig} from './types';\n\nexport const MOBILE_ITEM_HEIGHT = 48;\nexport const MOBILE_HEADER_COMPACT_HEIGHT = 50;\nexport const MOBILE_HEADER_EXPANDED_HEIGHT = 120;\nexport const MOBILE_HEADER_ICON_SIZE = 20;\n\nexport const MOBILE_HEADER_EVENT_NAMES: ItemEventsConfig = {\n toggleEvent: 'MOBILE_PANEL_TOGGLE',\n closeEvent: 'MOBILE_PANEL_CLOSE',\n openEvent: 'MOBILE_PANEL_OPEN',\n};\n\nexport const BURGER_PANEL_ITEM_ID = 'burger';\n","import {MOBILE_ITEM_HEIGHT} from './constants';\nimport {MobileHeaderEventOptions, MobileMenuItem} from './types';\n\nexport const getItemHeight = (item: MobileMenuItem) => {\n switch (item.type) {\n case 'divider':\n return 1;\n default:\n return MOBILE_ITEM_HEIGHT;\n }\n};\n\nexport const getSelectedItemIndex = (items: MobileMenuItem[]) => {\n const index = items.findIndex(({current}) => Boolean(current));\n\n return index === -1 ? undefined : index;\n};\n\nexport const getMobileHeaderCustomEvent = (\n eventName: string,\n detail?: MobileHeaderEventOptions,\n) => {\n return new CustomEvent<MobileHeaderEventOptions>(eventName, {detail});\n};\n","import React from 'react';\n\nimport {Icon, List} from '@gravity-ui/uikit';\n\nimport {block} from '../../../utils/cn';\nimport {MOBILE_HEADER_ICON_SIZE} from '../../constants';\nimport {MobileMenuItem} from '../../types';\nimport {getItemHeight, getSelectedItemIndex} from '../../utils';\n\nimport './BurgerCompositeBar.scss';\n\nconst b = block('burger-composite-bar');\n\ninterface ItemProps {\n item: MobileMenuItem;\n onItemClick?: (item: MobileMenuItem) => void;\n}\n\nconst Item = ({item, onItemClick}: ItemProps) => {\n const {icon, type = 'regular', iconSize = MOBILE_HEADER_ICON_SIZE} = item;\n\n if (type === 'divider') {\n return <div className={b('menu-divider')} />;\n }\n\n const node = (\n <div\n className={b('item', {type})}\n onClick={() => {\n if (typeof item.onItemClick === 'function') {\n item.onItemClick(item);\n }\n\n if (type === 'regular') {\n onItemClick?.(item);\n }\n }}\n >\n <div className={b('item-icon-place')}>\n {icon && <Icon data={icon} size={iconSize} className={b('item-icon')} />}\n </div>\n <div className={b('item-title')}>{item.title}</div>\n </div>\n );\n\n if (typeof item.itemWrapper === 'function') {\n return item.itemWrapper(node, item) as React.ReactElement;\n }\n\n return item.link ? (\n <a href={item.link} className={b('link')}>\n {node}\n </a>\n ) : (\n node\n );\n};\nItem.displayName = 'Item';\n\ninterface BurgerCompositeBarProps {\n items: MobileMenuItem[];\n onItemClick?: (item: MobileMenuItem) => void;\n}\n\nexport const BurgerCompositeBar = React.memo(({items, onItemClick}: BurgerCompositeBarProps) => {\n return (\n <nav className={b()}>\n <List<MobileMenuItem>\n items={items}\n selectedItemIndex={getSelectedItemIndex(items)}\n itemHeight={getItemHeight}\n itemClassName={b('root-menu-item')}\n virtualized={false}\n filterable={false}\n sortable={false}\n renderItem={(item) => <Item item={item} onItemClick={onItemClick} />}\n />\n </nav>\n );\n});\n\nBurgerCompositeBar.displayName = 'BurgerCompositeBar';\n","import React from 'react';\n\nimport {Sheet} from '@gravity-ui/uikit';\n\nimport {block} from '../../utils/cn';\nimport {MobileMenuItem, ModalItem} from '../types';\n\nimport {BurgerCompositeBar} from './BurgerCompositeBar/BurgerCompositeBar';\n\nimport './BurgerMenu.scss';\n\nconst b = block('mobile-header-burger-menu');\n\nexport interface BurgerMenuInnerProps {\n items?: MobileMenuItem[];\n modalItem?: ModalItem;\n renderFooter?: () => React.ReactNode;\n onItemClick?: (item: MobileMenuItem) => void;\n className?: string;\n}\n\nexport const BurgerMenu = React.memo(\n ({items = [], renderFooter, modalItem, className, onItemClick}: BurgerMenuInnerProps) => {\n return (\n <div className={b(null, className)}>\n {modalItem && (\n <Sheet\n visible={modalItem.visible}\n id={modalItem.id}\n title={modalItem.title}\n onClose={modalItem.onClose}\n contentClassName={modalItem.contentClassName}\n className={modalItem.className}\n >\n {modalItem.renderContent?.()}\n </Sheet>\n )}\n\n <BurgerCompositeBar items={items} onItemClick={onItemClick} />\n\n {renderFooter && <div className={b('footer')}>{renderFooter?.()}</div>}\n </div>\n );\n },\n);\n\nBurgerMenu.displayName = 'BurgerMenu';\n","import {addComponentKeysets} from '@gravity-ui/uikit/i18n';\n\nimport {NAMESPACE} from '../../utils/cn';\n\nimport en from './en.json';\nimport ru from './ru.json';\n\nconst COMPONENT = 'MobileHeader';\nexport default addComponentKeysets({en, ru}, `${NAMESPACE}${COMPONENT}`);\n","import React, {useCallback, useEffect, useMemo, useState} from 'react';\n\nimport {useForwardRef} from '../../hooks/useForwardRef';\nimport {Content, RenderContentType} from '../Content';\nimport {Drawer, DrawerItem, DrawerItemProps} from '../Drawer/Drawer';\nimport {MobileLogo} from '../MobileLogo';\nimport {LogoProps} from '../types';\nimport {block} from '../utils/cn';\n\nimport {Burger} from './Burger/Burger';\nimport {BurgerMenu, BurgerMenuInnerProps} from './BurgerMenu/BurgerMenu';\nimport {\n BURGER_PANEL_ITEM_ID,\n MOBILE_HEADER_COMPACT_HEIGHT,\n MOBILE_HEADER_EVENT_NAMES,\n MOBILE_HEADER_EXPANDED_HEIGHT,\n} from './constants';\nimport i18n from './i18n';\nimport {MobileHeaderEvent, MobileMenuItem} from './types';\n\nimport './MobileHeader.scss';\n\nconst b = block('mobile-header');\n\ntype PanelName = DrawerItemProps['id'] | null;\n\ninterface BurgerMenuProps extends Omit<BurgerMenuInnerProps, 'renderFooter'> {\n renderFooter?: (data: {size: number; isCompact: boolean}) => React.ReactNode;\n}\n\ninterface PanelItem extends Omit<DrawerItemProps, 'visible'> {}\n\nexport interface MobileHeaderProps {\n logo: LogoProps;\n burgerMenu: BurgerMenuProps;\n burgerCloseTitle?: string;\n burgerOpenTitle?: string;\n panelItems?: PanelItem[];\n renderContent?: RenderContentType;\n sideItemRenderContent?: RenderContentType;\n onEvent?: (itemName: string, eventName: MobileHeaderEvent) => void;\n onClosePanel?: () => void;\n className?: string;\n contentClassName?: string;\n}\n\nexport const MobileHeader = React.forwardRef<HTMLDivElement, MobileHeaderProps>(\n (\n {\n logo,\n burgerMenu,\n burgerCloseTitle = i18n('burger_button_close'),\n burgerOpenTitle = i18n('burger_button_open'),\n panelItems = [],\n renderContent,\n sideItemRenderContent,\n onClosePanel,\n onEvent,\n className,\n contentClassName,\n },\n ref,\n ): React.ReactElement => {\n const targetRef = useForwardRef<HTMLDivElement>(ref);\n const [compact] = useState(true);\n const [visiblePanel, setVisiblePanel] = useState<PanelName>(null);\n\n // for expand top panel cases (i.e. switch service panel). Will be removed if not used in future design\n const size = compact ? MOBILE_HEADER_COMPACT_HEIGHT : MOBILE_HEADER_EXPANDED_HEIGHT;\n\n const onPanelToggle = useCallback(\n (name: PanelName) => {\n if (!name) return;\n\n setVisiblePanel((prev) => {\n const panelOpen = prev === name;\n\n onEvent?.(\n name,\n panelOpen\n ? MOBILE_HEADER_EVENT_NAMES.closeEvent\n : MOBILE_HEADER_EVENT_NAMES.openEvent,\n );\n\n return panelOpen ? null : name;\n });\n },\n [onEvent],\n );\n\n const onMobilePanelToggle = useCallback(\n ({detail}) => {\n if (typeof detail?.panelName === 'string') {\n onPanelToggle(detail?.panelName);\n }\n },\n [onPanelToggle],\n );\n\n const onMobilePanelOpen = useCallback(\n ({detail}) => {\n if (typeof detail?.panelName === 'string') {\n onEvent?.(detail?.panelName, MOBILE_HEADER_EVENT_NAMES.openEvent);\n setVisiblePanel(detail?.panelName);\n }\n },\n [onEvent],\n );\n\n const onMobilePanelClose = useCallback(\n ({detail}) => {\n if (typeof detail?.panelName === 'string') {\n onEvent?.(detail?.panelName, MOBILE_HEADER_EVENT_NAMES.closeEvent);\n setVisiblePanel(null);\n }\n },\n [onEvent],\n );\n\n const onBurgerOpen = useCallback(() => {\n onEvent?.(BURGER_PANEL_ITEM_ID, MOBILE_HEADER_EVENT_NAMES.openEvent);\n setVisiblePanel(BURGER_PANEL_ITEM_ID);\n }, [onEvent]);\n\n const onBurgerClose = useCallback(() => {\n onEvent?.(BURGER_PANEL_ITEM_ID, MOBILE_HEADER_EVENT_NAMES.closeEvent);\n setVisiblePanel(null);\n }, [onEvent]);\n\n const onCloseDrawer = useCallback(() => {\n if (visiblePanel) {\n onEvent?.(visiblePanel, MOBILE_HEADER_EVENT_NAMES.closeEvent);\n }\n setVisiblePanel(null);\n }, [visiblePanel, onEvent]);\n\n const onBurgerMenuItemClick = useCallback(\n (item: MobileMenuItem) => {\n const closeMenuOnClick = item.closeMenuOnClick ?? true;\n\n if (closeMenuOnClick) {\n onBurgerClose();\n }\n },\n [onBurgerClose],\n );\n\n const renderBurgerMenuFooter = useCallback(\n () =>\n burgerMenu.renderFooter?.({\n size,\n isCompact: compact,\n }),\n [burgerMenu, size, compact],\n );\n\n const onLogoClick = useCallback(\n (event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n onClosePanel?.();\n logo.onClick?.(event);\n },\n [logo, onClosePanel],\n );\n\n const burgerPanelItem: PanelItem = useMemo(\n () => ({\n id: BURGER_PANEL_ITEM_ID,\n content: (\n <BurgerMenu\n items={burgerMenu.items}\n modalItem={burgerMenu.modalItem}\n renderFooter={renderBurgerMenuFooter}\n onItemClick={onBurgerMenuItemClick}\n className={b('burger-menu')}\n />\n ),\n }),\n [burgerMenu.items, burgerMenu.modalItem, onBurgerMenuItemClick, renderBurgerMenuFooter],\n );\n\n useEffect(() => {\n const node = targetRef?.current;\n\n if (node) {\n node.addEventListener('MOBILE_BURGER_OPEN', onBurgerOpen);\n node.addEventListener('MOBILE_BURGER_CLOSE', onBurgerClose);\n\n node.addEventListener('MOBILE_PANEL_TOGGLE', onMobilePanelToggle);\n node.addEventListener('MOBILE_PANEL_OPEN', onMobilePanelOpen);\n node.addEventListener('MOBILE_PANEL_CLOSE', onMobilePanelClose);\n }\n\n return () => {\n if (node) {\n node.removeEventListener('MOBILE_BURGER_OPEN', onBurgerOpen);\n node.removeEventListener('MOBILE_BURGER_CLOSE', onBurgerClose);\n\n node.removeEventListener('MOBILE_PANEL_TOGGLE', onMobilePanelToggle);\n node.removeEventListener('MOBILE_PANEL_OPEN', onMobilePanelOpen);\n node.removeEventListener('MOBILE_PANEL_CLOSE', onMobilePanelClose);\n }\n };\n }, [\n targetRef,\n onBurgerClose,\n onBurgerOpen,\n onMobilePanelToggle,\n onMobilePanelOpen,\n onMobilePanelClose,\n ]);\n\n return (\n <div className={b({compact}, className)} ref={targetRef}>\n <header className={b('header')} style={{height: size}}>\n <Burger\n opened={visiblePanel === burgerPanelItem.id}\n onClick={() => onPanelToggle(BURGER_PANEL_ITEM_ID)}\n className={b('burger')}\n closeTitle={burgerCloseTitle}\n openTitle={burgerOpenTitle}\n />\n <MobileLogo {...logo} compact={compact} onClick={onLogoClick} />\n\n <div className={b('side-item')}>{sideItemRenderContent?.({size})}</div>\n </header>\n\n <Drawer\n className={b('panels')}\n onVeilClick={onCloseDrawer}\n onEscape={onCloseDrawer}\n style={{top: size}}\n >\n {[burgerPanelItem, ...panelItems].map((item) => (\n <DrawerItem\n {...item}\n key={item.id}\n visible={visiblePanel === item.id}\n className={b('panel-item', item.className)}\n />\n ))}\n </Drawer>\n\n <Content\n size={size}\n renderContent={renderContent}\n className={b('content', contentClassName)}\n cssSizeVariableName=\"--mobile-header-size\"\n />\n </div>\n );\n },\n);\n\nMobileHeader.displayName = 'MobileHeader';\n","import React from 'react';\n\nimport {Icon, IconProps, Sheet, eventBroker} from '@gravity-ui/uikit';\n\nimport {block} from '../../utils/cn';\nimport {MOBILE_HEADER_ICON_SIZE} from '../constants';\nimport {ModalItem} from '../types';\n\nimport './FooterItem.scss';\n\nconst b = block('mobile-header-footer-item');\n\nexport interface FooterItemProps {\n icon?: IconProps['data'];\n iconSize?: string | number;\n className?: string;\n modalItem?: ModalItem;\n onClick?: (event: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n eventBrokerMeta?: Record<string, string | undefined>;\n}\n\nexport const FooterItem = ({\n icon,\n iconSize = MOBILE_HEADER_ICON_SIZE,\n className,\n modalItem = {visible: false},\n onClick,\n eventBrokerMeta,\n}: FooterItemProps) => {\n const handleClick = React.useCallback(\n (event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n eventBroker.publish({\n componentId: 'MobileHeaderFooterItem',\n eventId: 'click',\n domEvent: event,\n meta: eventBrokerMeta,\n });\n\n onClick?.(event);\n },\n [onClick, eventBrokerMeta],\n );\n\n return (\n <div className={b()}>\n <button className={b('button', className)} onClick={handleClick}>\n {icon ? <Icon data={icon} size={iconSize} className={b('icon')} /> : null}\n </button>\n\n <Sheet\n id={modalItem.id}\n title={modalItem.title}\n visible={modalItem.visible}\n className={b('modal', modalItem.className)}\n contentClassName={b('modal-content', modalItem.contentClassName)}\n allowHideOnContentScroll={modalItem.modalAllowHideOnContentScroll}\n onClose={modalItem.onClose}\n >\n {modalItem.renderContent?.()}\n </Sheet>\n </div>\n );\n};\n"],"names":["React","b","block","Icon","List","Sheet","addComponentKeysets","NAMESPACE","useState","useCallback","useMemo","useEffect","Drawer","DrawerItem","Content","eventBroker"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PageLayoutAside-762b9477.js","sources":["../../../src/components/AllPagesPanel/AllPagesListItem/AllPagesListItem.tsx","../../../src/components/AllPagesPanel/i18n/index.ts","../../../src/components/AllPagesPanel/constants.ts","../../../src/components/AllPagesPanel/useGroupedMenuItems.ts","../../../src/components/AllPagesPanel/AllPagesPanel.tsx","../../../src/components/AllPagesPanel/useVisibleMenuItems.ts","../../node_modules/react-virtualized-auto-sizer/dist/react-virtualized-auto-sizer.esm.js","../../../src/components/CompositeBar/MultipleTooltip/MultipleTooltipContext.tsx","../../../src/components/CompositeBar/MultipleTooltip/MultipleTooltip.tsx","../../../src/components/CompositeBar/CompositeBar.tsx","../../../src/components/AsideHeader/i18n/index.ts","../../assets/icons/control-menu-button.svg","../../../src/components/AsideHeader/components/CollapseButton/CollapseButton.tsx","../../../src/components/Logo/Logo.tsx","../../../src/components/AsideHeader/components/Header.tsx","../../../src/components/AsideHeader/components/Panels.tsx","../../../src/components/AsideHeader/components/FirstPanel.tsx","../../../src/components/AsideHeader/types.tsx","../../../src/components/AsideHeader/useAsideHeaderInnerContextValue.tsx","../../../src/components/AsideHeader/components/PageLayout/PageLayoutAside.tsx"],"sourcesContent":["import React, {MouseEvent, useCallback} from 'react';\n\nimport {Pin, PinFill} from '@gravity-ui/icons';\nimport {Button, Icon} from '@gravity-ui/uikit';\n\nimport {MenuItem} from '../../types';\nimport {block} from '../../utils/cn';\n\nimport './AllPagesListItem.scss';\n\nconst b = block('all-pages-list-item');\n\ninterface AllPagesListItemProps {\n item: MenuItem;\n editMode?: boolean;\n onToggle: () => void;\n}\n\nexport const AllPagesListItem: React.FC<AllPagesListItemProps> = (props) => {\n const {item, editMode, onToggle} = props;\n const onPinButtonClick = useCallback(\n (e: MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => {\n e.stopPropagation();\n e.preventDefault();\n onToggle();\n },\n [onToggle],\n );\n\n const onItemClick = (e: MouseEvent<HTMLDivElement>) => {\n if (editMode) {\n e.stopPropagation();\n e.preventDefault();\n }\n };\n return (\n <div className={b()} onClick={onItemClick}>\n {item.icon ? (\n <Icon className={b('icon')} data={item.icon} size={item.iconSize} />\n ) : null}\n <span className={b('text')}>{item.title}</span>\n {editMode && (\n <Button\n onClick={onPinButtonClick}\n view={item.hidden ? 'flat-secondary' : 'flat-action'}\n >\n <Button.Icon>{item.hidden ? <Pin /> : <PinFill />}</Button.Icon>\n </Button>\n )}\n </div>\n );\n};\n","import {addComponentKeysets} from '@gravity-ui/uikit/i18n';\n\nimport {NAMESPACE} from '../../utils/cn';\n\nimport en from './en.json';\nimport ru from './ru.json';\n\nconst COMPONENT = 'AllPagesPanel';\nexport default addComponentKeysets({en, ru}, `${NAMESPACE}${COMPONENT}`);\n","import {Ellipsis} from '@gravity-ui/icons';\n\nimport {MenuItem} from '../types';\n\nimport i18n from './i18n';\n\nexport const ALL_PAGES_ID = 'all-pages' as const;\n\nexport function getAllPagesMenuItem(): MenuItem {\n return {\n id: ALL_PAGES_ID,\n title: i18n('menu-item.all-pages.title'),\n tooltipText: i18n('menu-item.all-pages.title'),\n icon: Ellipsis,\n };\n}\n","import {useMemo} from 'react';\n\nimport {MenuItem} from '../types';\n\nimport {ALL_PAGES_ID} from './constants';\nimport i18n from './i18n';\n\nexport const useGroupedMenuItems = (items: MenuItem[]) => {\n const allPagesMenuItems = useMemo(() => {\n const filteredItems = items.filter(\n (item) => item.type !== 'divider' && item.id !== ALL_PAGES_ID,\n );\n filteredItems.sort((a, b) => {\n if (a.type === 'action') {\n return 1;\n }\n if (b.type === 'action') {\n return -1;\n }\n return 0;\n });\n const groupedItems = filteredItems.reduce(\n (acc, item) => {\n const category = item.category || i18n('all-panel.menu.category.allOther');\n if (!acc[category]) {\n acc[category] = [];\n }\n acc[category].push(item);\n return acc;\n },\n {} as {[key: string]: MenuItem[]},\n );\n return groupedItems;\n }, [items]);\n\n return allPagesMenuItems;\n};\n","import React, {useCallback, useEffect, useRef, useState} from 'react';\n\nimport {Gear} from '@gravity-ui/icons';\nimport {Button, Flex, Icon, List, ListItemData, Text} from '@gravity-ui/uikit';\n\nimport {useAsideHeaderInnerContext} from '../AsideHeader/AsideHeaderContext';\nimport {MenuItem} from '../types';\nimport {block} from '../utils/cn';\n\nimport {AllPagesListItem} from './AllPagesListItem';\nimport {ALL_PAGES_ID} from './constants';\nimport i18n from './i18n';\nimport {useGroupedMenuItems} from './useGroupedMenuItems';\n\nimport './AllPagesPanel.scss';\n\nconst b = block('all-pages-panel');\n\ninterface AllPagesPanelProps {\n className?: string;\n startEditIcon?: React.ReactNode;\n onEditModeChanged?: (isEditMode: boolean) => void;\n}\n\nexport const AllPagesPanel: React.FC<AllPagesPanelProps> = (props) => {\n const {startEditIcon, onEditModeChanged, className} = props;\n const {menuItems, onMenuItemsChanged} = useAsideHeaderInnerContext();\n const menuItemsRef = useRef(menuItems);\n menuItemsRef.current = menuItems;\n\n const [isEditMode, setIsEditMode] = useState(false);\n const toggleEditMode = useCallback(() => {\n setIsEditMode((prev) => !prev);\n }, []);\n\n const groupedItems = useGroupedMenuItems(menuItems);\n\n useEffect(() => {\n onEditModeChanged?.(isEditMode);\n }, [isEditMode, onEditModeChanged]);\n\n const onItemClick = useCallback((item: ListItemData<MenuItem>) => {\n //@ts-ignore TODO fix when @gravity-ui/uikit/List will provide event arg on item click\n item.onItemClick?.(item, false);\n }, []);\n\n const togglePageVisibility = useCallback(\n (item: MenuItem) => {\n if (!onMenuItemsChanged) {\n return;\n }\n const changedItem: MenuItem = {...item, hidden: !item.hidden};\n\n const originItems = menuItemsRef.current.filter(\n (menuItem) => menuItem.id !== ALL_PAGES_ID,\n );\n onMenuItemsChanged(\n originItems.map((menuItem) => {\n if (menuItem.id !== changedItem.id) {\n return menuItem;\n }\n return changedItem;\n }),\n );\n },\n [onMenuItemsChanged],\n );\n\n const itemRender = useCallback(\n (item: ListItemData<MenuItem>, _isActive: boolean, _itemIndex: number) => (\n <AllPagesListItem\n item={item}\n editMode={isEditMode}\n onToggle={() => togglePageVisibility(item)}\n />\n ),\n [isEditMode, togglePageVisibility],\n );\n\n const onResetToDefaultClick = useCallback(() => {\n if (!onMenuItemsChanged) {\n return;\n }\n const originItems = menuItemsRef.current.filter((item) => item.id !== ALL_PAGES_ID);\n onMenuItemsChanged(\n originItems.map((item) => ({\n ...item,\n hidden: false,\n })),\n );\n }, [onMenuItemsChanged]);\n return (\n <Flex className={b(null, className)} gap=\"5\" direction=\"column\">\n <Flex gap=\"4\" alignItems=\"center\" justifyContent=\"space-between\">\n <Text variant=\"subheader-2\">\n {isEditMode ? i18n('all-panel.title.editing') : i18n('all-panel.title.main')}\n </Text>\n <Button selected={isEditMode} view=\"normal\" onClick={toggleEditMode}>\n {startEditIcon ? startEditIcon : <Icon data={Gear} />}\n </Button>\n </Flex>\n <Flex className={b('content')} gap=\"5\" direction=\"column\">\n {Object.keys(groupedItems).map((category) => {\n return (\n <Flex key={category} direction=\"column\" gap=\"3\">\n <Text className={b('category')} variant=\"body-1\" color=\"secondary\">\n {category}\n </Text>\n <List\n virtualized={false}\n filterable={false}\n items={groupedItems[category]}\n onItemClick={onItemClick}\n renderItem={itemRender}\n />\n </Flex>\n );\n })}\n </Flex>\n {isEditMode && (\n <Button onClick={onResetToDefaultClick}>{i18n('all-panel.resetToDefault')}</Button>\n )}\n </Flex>\n );\n};\n","import {useMemo} from 'react';\n\nimport {useAsideHeaderInnerContext} from '../AsideHeader/AsideHeaderContext';\nimport {MenuItem} from '../types';\n\nexport const useVisibleMenuItems = (): MenuItem[] => {\n const {menuItems, allPagesIsAvailable} = useAsideHeaderInnerContext();\n return useMemo(() => {\n if (!allPagesIsAvailable) {\n return menuItems;\n }\n let lastVisibleIndex = 0;\n return menuItems.filter((item: MenuItem, index: number, items: MenuItem[]): boolean => {\n if (item.hidden) {\n return false;\n }\n\n if (\n index > 0 &&\n item.type === 'divider' &&\n (items[lastVisibleIndex].type === 'divider' || items[lastVisibleIndex].hidden)\n ) {\n return false;\n }\n lastVisibleIndex = index;\n return true;\n });\n }, [allPagesIsAvailable, menuItems]);\n};\n","import { Component, createElement } from 'react';\n\n/**\n * Detect Element Resize.\n * https://github.com/sdecima/javascript-detect-element-resize\n * Sebastian Decima\n *\n * Forked from version 0.5.3; includes the following modifications:\n * 1) Guard against unsafe 'window' and 'document' references (to support SSR).\n * 2) Defer initialization code via a top-level function wrapper (to support SSR).\n * 3) Avoid unnecessary reflows by not measuring size for scroll events bubbling from children.\n * 4) Add nonce for style element.\n * 5) Use 'export' statement over 'module.exports' assignment\n **/\n\n// Check `document` and `window` in case of server-side rendering\nlet windowObject;\nif (typeof window !== \"undefined\") {\n windowObject = window;\n\n // eslint-disable-next-line no-restricted-globals\n} else if (typeof self !== \"undefined\") {\n // eslint-disable-next-line no-restricted-globals\n windowObject = self;\n} else {\n windowObject = global;\n}\nlet cancelFrame = null;\nlet requestFrame = null;\nconst TIMEOUT_DURATION = 20;\nconst clearTimeoutFn = windowObject.clearTimeout;\nconst setTimeoutFn = windowObject.setTimeout;\nconst cancelAnimationFrameFn = windowObject.cancelAnimationFrame || windowObject.mozCancelAnimationFrame || windowObject.webkitCancelAnimationFrame;\nconst requestAnimationFrameFn = windowObject.requestAnimationFrame || windowObject.mozRequestAnimationFrame || windowObject.webkitRequestAnimationFrame;\nif (cancelAnimationFrameFn == null || requestAnimationFrameFn == null) {\n // For environments that don't support animation frame,\n // fallback to a setTimeout based approach.\n cancelFrame = clearTimeoutFn;\n requestFrame = function requestAnimationFrameViaSetTimeout(callback) {\n return setTimeoutFn(callback, TIMEOUT_DURATION);\n };\n} else {\n // Counter intuitively, environments that support animation frames can be trickier.\n // Chrome's \"Throttle non-visible cross-origin iframes\" flag can prevent rAFs from being called.\n // In this case, we should fallback to a setTimeout() implementation.\n cancelFrame = function cancelFrame([animationFrameID, timeoutID]) {\n cancelAnimationFrameFn(animationFrameID);\n clearTimeoutFn(timeoutID);\n };\n requestFrame = function requestAnimationFrameWithSetTimeoutFallback(callback) {\n const animationFrameID = requestAnimationFrameFn(function animationFrameCallback() {\n clearTimeoutFn(timeoutID);\n callback();\n });\n const timeoutID = setTimeoutFn(function timeoutCallback() {\n cancelAnimationFrameFn(animationFrameID);\n callback();\n }, TIMEOUT_DURATION);\n return [animationFrameID, timeoutID];\n };\n}\nfunction createDetectElementResize(nonce) {\n let animationKeyframes;\n let animationName;\n let animationStartEvent;\n let animationStyle;\n let checkTriggers;\n let resetTriggers;\n let scrollListener;\n const attachEvent = typeof document !== \"undefined\" && document.attachEvent;\n if (!attachEvent) {\n resetTriggers = function (element) {\n const triggers = element.__resizeTriggers__,\n expand = triggers.firstElementChild,\n contract = triggers.lastElementChild,\n expandChild = expand.firstElementChild;\n contract.scrollLeft = contract.scrollWidth;\n contract.scrollTop = contract.scrollHeight;\n expandChild.style.width = expand.offsetWidth + 1 + \"px\";\n expandChild.style.height = expand.offsetHeight + 1 + \"px\";\n expand.scrollLeft = expand.scrollWidth;\n expand.scrollTop = expand.scrollHeight;\n };\n checkTriggers = function (element) {\n return element.offsetWidth !== element.__resizeLast__.width || element.offsetHeight !== element.__resizeLast__.height;\n };\n scrollListener = function (e) {\n // Don't measure (which forces) reflow for scrolls that happen inside of children!\n if (e.target.className && typeof e.target.className.indexOf === \"function\" && e.target.className.indexOf(\"contract-trigger\") < 0 && e.target.className.indexOf(\"expand-trigger\") < 0) {\n return;\n }\n const element = this;\n resetTriggers(this);\n if (this.__resizeRAF__) {\n cancelFrame(this.__resizeRAF__);\n }\n this.__resizeRAF__ = requestFrame(function animationFrame() {\n if (checkTriggers(element)) {\n element.__resizeLast__.width = element.offsetWidth;\n element.__resizeLast__.height = element.offsetHeight;\n element.__resizeListeners__.forEach(function forEachResizeListener(fn) {\n fn.call(element, e);\n });\n }\n });\n };\n\n /* Detect CSS Animations support to detect element display/re-attach */\n let animation = false;\n let keyframeprefix = \"\";\n animationStartEvent = \"animationstart\";\n const domPrefixes = \"Webkit Moz O ms\".split(\" \");\n let startEvents = \"webkitAnimationStart animationstart oAnimationStart MSAnimationStart\".split(\" \");\n let pfx = \"\";\n {\n const elm = document.createElement(\"fakeelement\");\n if (elm.style.animationName !== undefined) {\n animation = true;\n }\n if (animation === false) {\n for (let i = 0; i < domPrefixes.length; i++) {\n if (elm.style[domPrefixes[i] + \"AnimationName\"] !== undefined) {\n pfx = domPrefixes[i];\n keyframeprefix = \"-\" + pfx.toLowerCase() + \"-\";\n animationStartEvent = startEvents[i];\n animation = true;\n break;\n }\n }\n }\n }\n animationName = \"resizeanim\";\n animationKeyframes = \"@\" + keyframeprefix + \"keyframes \" + animationName + \" { from { opacity: 0; } to { opacity: 0; } } \";\n animationStyle = keyframeprefix + \"animation: 1ms \" + animationName + \"; \";\n }\n const createStyles = function (doc) {\n if (!doc.getElementById(\"detectElementResize\")) {\n //opacity:0 works around a chrome bug https://code.google.com/p/chromium/issues/detail?id=286360\n const css = (animationKeyframes ? animationKeyframes : \"\") + \".resize-triggers { \" + (animationStyle ? animationStyle : \"\") + \"visibility: hidden; opacity: 0; } \" + '.resize-triggers, .resize-triggers > div, .contract-trigger:before { content: \" \"; display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; z-index: -1; } .resize-triggers > div { background: #eee; overflow: auto; } .contract-trigger:before { width: 200%; height: 200%; }',\n head = doc.head || doc.getElementsByTagName(\"head\")[0],\n style = doc.createElement(\"style\");\n style.id = \"detectElementResize\";\n style.type = \"text/css\";\n if (nonce != null) {\n style.setAttribute(\"nonce\", nonce);\n }\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(doc.createTextNode(css));\n }\n head.appendChild(style);\n }\n };\n const addResizeListener = function (element, fn) {\n if (attachEvent) {\n element.attachEvent(\"onresize\", fn);\n } else {\n if (!element.__resizeTriggers__) {\n const doc = element.ownerDocument;\n const elementStyle = windowObject.getComputedStyle(element);\n if (elementStyle && elementStyle.position === \"static\") {\n element.style.position = \"relative\";\n }\n createStyles(doc);\n element.__resizeLast__ = {};\n element.__resizeListeners__ = [];\n (element.__resizeTriggers__ = doc.createElement(\"div\")).className = \"resize-triggers\";\n const expandTrigger = doc.createElement(\"div\");\n expandTrigger.className = \"expand-trigger\";\n expandTrigger.appendChild(doc.createElement(\"div\"));\n const contractTrigger = doc.createElement(\"div\");\n contractTrigger.className = \"contract-trigger\";\n element.__resizeTriggers__.appendChild(expandTrigger);\n element.__resizeTriggers__.appendChild(contractTrigger);\n element.appendChild(element.__resizeTriggers__);\n resetTriggers(element);\n element.addEventListener(\"scroll\", scrollListener, true);\n\n /* Listen for a css animation to detect element display/re-attach */\n if (animationStartEvent) {\n element.__resizeTriggers__.__animationListener__ = function animationListener(e) {\n if (e.animationName === animationName) {\n resetTriggers(element);\n }\n };\n element.__resizeTriggers__.addEventListener(animationStartEvent, element.__resizeTriggers__.__animationListener__);\n }\n }\n element.__resizeListeners__.push(fn);\n }\n };\n const removeResizeListener = function (element, fn) {\n if (attachEvent) {\n element.detachEvent(\"onresize\", fn);\n } else {\n element.__resizeListeners__.splice(element.__resizeListeners__.indexOf(fn), 1);\n if (!element.__resizeListeners__.length) {\n element.removeEventListener(\"scroll\", scrollListener, true);\n if (element.__resizeTriggers__.__animationListener__) {\n element.__resizeTriggers__.removeEventListener(animationStartEvent, element.__resizeTriggers__.__animationListener__);\n element.__resizeTriggers__.__animationListener__ = null;\n }\n try {\n element.__resizeTriggers__ = !element.removeChild(element.__resizeTriggers__);\n } catch (e) {\n // Preact compat; see developit/preact-compat/issues/228\n }\n }\n }\n };\n return {\n addResizeListener,\n removeResizeListener\n };\n}\n\nclass AutoSizer extends Component {\n constructor(...args) {\n super(...args);\n this.state = {\n height: this.props.defaultHeight || 0,\n scaledHeight: this.props.defaultHeight || 0,\n scaledWidth: this.props.defaultWidth || 0,\n width: this.props.defaultWidth || 0\n };\n this._autoSizer = null;\n this._detectElementResize = null;\n this._parentNode = null;\n this._resizeObserver = null;\n this._timeoutId = null;\n this._onResize = () => {\n this._timeoutId = null;\n const {\n disableHeight,\n disableWidth,\n onResize\n } = this.props;\n if (this._parentNode) {\n // Guard against AutoSizer component being removed from the DOM immediately after being added.\n // This can result in invalid style values which can result in NaN values if we don't handle them.\n // See issue #150 for more context.\n\n const style = window.getComputedStyle(this._parentNode) || {};\n const paddingLeft = parseFloat(style.paddingLeft || \"0\");\n const paddingRight = parseFloat(style.paddingRight || \"0\");\n const paddingTop = parseFloat(style.paddingTop || \"0\");\n const paddingBottom = parseFloat(style.paddingBottom || \"0\");\n const rect = this._parentNode.getBoundingClientRect();\n const scaledHeight = rect.height - paddingTop - paddingBottom;\n const scaledWidth = rect.width - paddingLeft - paddingRight;\n const height = this._parentNode.offsetHeight - paddingTop - paddingBottom;\n const width = this._parentNode.offsetWidth - paddingLeft - paddingRight;\n if (!disableHeight && (this.state.height !== height || this.state.scaledHeight !== scaledHeight) || !disableWidth && (this.state.width !== width || this.state.scaledWidth !== scaledWidth)) {\n this.setState({\n height,\n width,\n scaledHeight,\n scaledWidth\n });\n if (typeof onResize === \"function\") {\n onResize({\n height,\n scaledHeight,\n scaledWidth,\n width\n });\n }\n }\n }\n };\n this._setRef = autoSizer => {\n this._autoSizer = autoSizer;\n };\n }\n componentDidMount() {\n const {\n nonce\n } = this.props;\n if (this._autoSizer && this._autoSizer.parentNode && this._autoSizer.parentNode.ownerDocument && this._autoSizer.parentNode.ownerDocument.defaultView && this._autoSizer.parentNode instanceof this._autoSizer.parentNode.ownerDocument.defaultView.HTMLElement) {\n // Delay access of parentNode until mount.\n // This handles edge-cases where the component has already been unmounted before its ref has been set,\n // As well as libraries like react-lite which have a slightly different lifecycle.\n this._parentNode = this._autoSizer.parentNode;\n\n // Defer requiring resize handler in order to support server-side rendering.\n // See issue #41\n if (this._parentNode != null) {\n if (typeof ResizeObserver !== \"undefined\") {\n this._resizeObserver = new ResizeObserver(() => {\n // Guard against \"ResizeObserver loop limit exceeded\" error;\n // could be triggered if the state update causes the ResizeObserver handler to run long.\n // See https://github.com/bvaughn/react-virtualized-auto-sizer/issues/55\n this._timeoutId = setTimeout(this._onResize, 0);\n });\n this._resizeObserver.observe(this._parentNode);\n } else {\n this._detectElementResize = createDetectElementResize(nonce);\n this._detectElementResize.addResizeListener(this._parentNode, this._onResize);\n }\n this._onResize();\n }\n }\n }\n componentWillUnmount() {\n if (this._parentNode) {\n if (this._detectElementResize) {\n this._detectElementResize.removeResizeListener(this._parentNode, this._onResize);\n }\n if (this._timeoutId !== null) {\n clearTimeout(this._timeoutId);\n }\n if (this._resizeObserver) {\n this._resizeObserver.observe(this._parentNode);\n this._resizeObserver.disconnect();\n }\n }\n }\n render() {\n const {\n children,\n defaultHeight,\n defaultWidth,\n disableHeight = false,\n disableWidth = false,\n nonce,\n onResize,\n style = {},\n tagName = \"div\",\n ...rest\n } = this.props;\n const {\n height,\n scaledHeight,\n scaledWidth,\n width\n } = this.state;\n\n // Outer div should not force width/height since that may prevent containers from shrinking.\n // Inner component should overflow and use calculated width/height.\n // See issue #68 for more information.\n const outerStyle = {\n overflow: \"visible\"\n };\n const childParams = {};\n\n // Avoid rendering children before the initial measurements have been collected.\n // At best this would just be wasting cycles.\n let bailoutOnChildren = false;\n if (!disableHeight) {\n if (height === 0) {\n bailoutOnChildren = true;\n }\n outerStyle.height = 0;\n childParams.height = height;\n childParams.scaledHeight = scaledHeight;\n }\n if (!disableWidth) {\n if (width === 0) {\n bailoutOnChildren = true;\n }\n outerStyle.width = 0;\n childParams.width = width;\n childParams.scaledWidth = scaledWidth;\n }\n return createElement(tagName, {\n ref: this._setRef,\n style: {\n ...outerStyle,\n ...style\n },\n ...rest\n }, !bailoutOnChildren && children(childParams));\n }\n}\n\nfunction isHeightAndWidthProps(props) {\n return props && props.disableHeight !== true && props.disableWidth !== true;\n}\nfunction isHeightOnlyProps(props) {\n return props && props.disableHeight !== true && props.disableWidth === true;\n}\nfunction isWidthOnlyProps(props) {\n return props && props.disableHeight === true && props.disableWidth !== true;\n}\n\nexport { AutoSizer as default, isHeightAndWidthProps, isHeightOnlyProps, isWidthOnlyProps };\n","import React from 'react';\n\ninterface MultipleTooltipContextProps {\n active: boolean;\n activeIndex: number | undefined;\n hideCollapseItemTooltip: boolean;\n lastClickedItemIndex: number | undefined;\n setValue<K extends keyof Omit<MultipleTooltipContextProps, 'setValue'>>(\n value:\n | Pick<Omit<MultipleTooltipContextProps, 'setValue'>, K>\n | Omit<MultipleTooltipContextProps, 'setValue'>,\n ): void;\n}\n\nconst multipleTooltipContextDefaults = {\n active: false,\n activeIndex: undefined,\n hideCollapseItemTooltip: false,\n lastClickedItemIndex: undefined,\n setValue: () => {},\n};\n\nexport const MultipleTooltipContext = React.createContext<MultipleTooltipContextProps>(\n multipleTooltipContextDefaults,\n);\n\ntype MultipleTooltipProviderState = Omit<MultipleTooltipContextProps, 'setValue'>;\n\nexport class MultipleTooltipProvider extends React.PureComponent<\n {children: React.ReactNode},\n MultipleTooltipProviderState\n> {\n state = {\n ...multipleTooltipContextDefaults,\n };\n\n setValue: MultipleTooltipContextProps['setValue'] = (value) => {\n this.setState({...value});\n };\n\n render() {\n const {children} = this.props;\n\n return (\n <MultipleTooltipContext.Provider value={{...this.state, setValue: this.setValue}}>\n {children}\n </MultipleTooltipContext.Provider>\n );\n }\n}\n","import React from 'react';\n\nimport {Popup, PopupProps} from '@gravity-ui/uikit';\n\nimport {MenuItem} from '../../types';\nimport {block} from '../../utils/cn';\nimport {COLLAPSE_ITEM_ID} from '../constants';\n\nimport {MultipleTooltipContext} from './MultipleTooltipContext';\n\nimport './MultipleTooltip.scss';\n\nconst b = block('multiple-tooltip');\n\nconst POPUP_OFFSET: PopupProps['offset'] = [-32, 4];\nconst POPUP_MODIFIERS: PopupProps['modifiers'] = [\n {\n name: 'preventOverflow',\n enabled: false,\n },\n];\n\nexport type MultipleTooltipProps = Pick<PopupProps, 'open' | 'anchorRef' | 'placement'> & {\n items: MenuItem[];\n};\n\nexport const MultipleTooltip: React.FC<MultipleTooltipProps> = ({\n items,\n open,\n anchorRef,\n placement,\n}) => {\n const {activeIndex, hideCollapseItemTooltip} = React.useContext(MultipleTooltipContext);\n const activeItem = activeIndex === undefined ? null : items[activeIndex];\n\n return (\n <Popup\n open={open}\n anchorRef={anchorRef}\n placement={placement}\n offset={POPUP_OFFSET}\n contentClassName={b(null)}\n modifiers={POPUP_MODIFIERS}\n disableLayer\n >\n <div className={b('items-container')}>\n {items\n .filter(\n ({type = 'regular', id}) =>\n !hideCollapseItemTooltip ||\n (id !== COLLAPSE_ITEM_ID && type !== 'action'),\n )\n .map((item, idx) => {\n switch (item.type) {\n case 'divider':\n return (\n <div className={b('item', {divider: true})} key={idx}>\n {item.title}\n </div>\n );\n default:\n return (\n <div\n className={b('item', {\n active: item === activeItem,\n })}\n key={idx}\n >\n {item.title}\n </div>\n );\n }\n })}\n </div>\n </Popup>\n );\n};\n","import React, {FC, ReactNode, useCallback, useContext, useRef} from 'react';\n\nimport {List} from '@gravity-ui/uikit';\nimport AutoSizer, {Size} from 'react-virtualized-auto-sizer';\n\nimport {useAsideHeaderContext} from '../AsideHeader/AsideHeaderContext';\nimport {ASIDE_HEADER_COMPACT_WIDTH} from '../constants';\nimport {MenuItem, SubheaderMenuItem} from '../types';\nimport {block} from '../utils/cn';\n\nimport {Item, ItemProps} from './Item/Item';\nimport {MultipleTooltip, MultipleTooltipContext, MultipleTooltipProvider} from './MultipleTooltip';\nimport {COLLAPSE_ITEM_ID} from './constants';\nimport {\n getAutosizeListItems,\n getItemHeight,\n getItemsHeight,\n getItemsMinHeight,\n getMoreButtonItem,\n getSelectedItemIndex,\n isMenuItem,\n} from './utils';\n\nimport './CompositeBar.scss';\n\nconst b = block('composite-bar');\n\nexport type CompositeBarItem = MenuItem | SubheaderMenuItem;\n\ntype CompositeBarItems =\n | {type: 'menu'; items: MenuItem[]}\n | {type: 'subheader'; items: SubheaderMenuItem[]};\n\nexport type CompositeBarProps = CompositeBarItems & {\n onItemClick?: (\n item: MenuItem,\n collapsed: boolean,\n event: React.MouseEvent<HTMLDivElement, MouseEvent>,\n ) => void;\n multipleTooltip?: boolean;\n menuMoreTitle?: string;\n};\n\ntype CompositeBarViewProps = CompositeBarProps & {\n collapseItems?: MenuItem[];\n};\n\nconst CompositeBarView: FC<CompositeBarViewProps> = ({\n type,\n items,\n onItemClick,\n collapseItems,\n multipleTooltip = false,\n}) => {\n const ref = useRef<List<CompositeBarItem>>(null);\n const tooltipRef = useRef<HTMLDivElement>(null);\n\n const {\n setValue: setMultipleTooltipContextValue,\n active: multipleTooltipActive,\n activeIndex,\n lastClickedItemIndex,\n } = useContext(MultipleTooltipContext);\n const {compact} = useAsideHeaderContext();\n\n React.useEffect(() => {\n function handleBlurWindow() {\n if (multipleTooltip && multipleTooltipActive) {\n setMultipleTooltipContextValue({active: false});\n }\n }\n\n window.addEventListener('blur', handleBlurWindow);\n\n return () => {\n window.removeEventListener('blur', handleBlurWindow);\n };\n }, [multipleTooltip, multipleTooltipActive, setMultipleTooltipContextValue]);\n\n const onTooltipMouseEnter = useCallback(\n (e) => {\n if (\n multipleTooltip &&\n compact &&\n !multipleTooltipActive &&\n document.hasFocus() &&\n activeIndex !== lastClickedItemIndex &&\n e.clientX <= ASIDE_HEADER_COMPACT_WIDTH\n ) {\n setMultipleTooltipContextValue?.({\n active: true,\n });\n }\n },\n [\n multipleTooltip,\n compact,\n multipleTooltipActive,\n activeIndex,\n lastClickedItemIndex,\n setMultipleTooltipContextValue,\n ],\n );\n\n const onTooltipMouseLeave = useCallback(() => {\n if (multipleTooltip && multipleTooltipActive && document.hasFocus()) {\n setMultipleTooltipContextValue?.({\n active: false,\n lastClickedItemIndex: undefined,\n });\n }\n }, [multipleTooltip, multipleTooltipActive, setMultipleTooltipContextValue]);\n\n const onMouseEnterByIndex = useCallback(\n (itemIndex) => () => {\n if (multipleTooltip && document.hasFocus()) {\n let multipleTooltipActiveValue = multipleTooltipActive;\n if (!multipleTooltipActive && itemIndex !== lastClickedItemIndex) {\n multipleTooltipActiveValue = true;\n }\n if (\n activeIndex === itemIndex &&\n multipleTooltipActive === multipleTooltipActiveValue\n ) {\n return;\n }\n setMultipleTooltipContextValue({\n activeIndex: itemIndex,\n active: multipleTooltipActiveValue,\n });\n }\n },\n [\n multipleTooltip,\n multipleTooltipActive,\n lastClickedItemIndex,\n activeIndex,\n setMultipleTooltipContextValue,\n ],\n );\n\n const onMouseLeave = useCallback(() => {\n if (compact && document.hasFocus()) {\n ref.current?.activateItem(undefined as unknown as number);\n if (\n multipleTooltip &&\n (activeIndex !== undefined || lastClickedItemIndex !== undefined)\n ) {\n setMultipleTooltipContextValue({\n activeIndex: undefined,\n lastClickedItemIndex: undefined,\n });\n }\n }\n }, [\n activeIndex,\n compact,\n lastClickedItemIndex,\n multipleTooltip,\n setMultipleTooltipContextValue,\n ]);\n\n const onItemClickByIndex = useCallback(\n (itemIndex): ItemProps['onItemClick'] =>\n (item, collapsed, event) => {\n if (\n compact &&\n multipleTooltip &&\n itemIndex !== lastClickedItemIndex &&\n item.id !== COLLAPSE_ITEM_ID\n ) {\n setMultipleTooltipContextValue({\n lastClickedItemIndex: itemIndex,\n active: false,\n });\n }\n onItemClick?.(item, collapsed, event);\n },\n [\n compact,\n lastClickedItemIndex,\n multipleTooltip,\n onItemClick,\n setMultipleTooltipContextValue,\n ],\n );\n\n return (\n <React.Fragment>\n <div\n ref={tooltipRef}\n onMouseEnter={onTooltipMouseEnter}\n onMouseLeave={onTooltipMouseLeave}\n >\n <List<CompositeBarItem>\n ref={ref}\n items={items}\n selectedItemIndex={type === 'menu' ? getSelectedItemIndex(items) : undefined}\n itemHeight={getItemHeight}\n itemsHeight={getItemsHeight}\n itemClassName={b('root-menu-item')}\n virtualized={false}\n filterable={false}\n sortable={false}\n renderItem={(item, _isItemActive, itemIndex) => {\n const itemExtraProps = isMenuItem(item) ? {item} : item;\n const enableTooltip = isMenuItem(item)\n ? !multipleTooltip\n : item.enableTooltip;\n\n return (\n <Item\n {...itemExtraProps}\n enableTooltip={enableTooltip}\n onMouseEnter={onMouseEnterByIndex(itemIndex)}\n onMouseLeave={onMouseLeave}\n onItemClick={onItemClickByIndex(itemIndex)}\n collapseItems={collapseItems}\n />\n );\n }}\n />\n </div>\n {type === 'menu' && multipleTooltip && (\n <MultipleTooltip\n open={compact && multipleTooltipActive}\n anchorRef={tooltipRef}\n placement={['right-start']}\n items={items}\n />\n )}\n </React.Fragment>\n );\n};\n\nexport const CompositeBar: FC<CompositeBarProps> = ({\n type,\n items,\n menuMoreTitle,\n onItemClick,\n multipleTooltip = false,\n}) => {\n if (items.length === 0) {\n return null;\n }\n let node: ReactNode;\n\n if (type === 'menu') {\n const minHeight = getItemsMinHeight(items);\n const collapseItem = getMoreButtonItem(menuMoreTitle);\n node = (\n <div className={b({autosizer: true})} style={{minHeight}}>\n {items.length !== 0 && (\n <AutoSizer>\n {(size: Size) => {\n const width = Number.isNaN(size.width) ? 0 : size.width;\n const height = Number.isNaN(size.height) ? 0 : size.height;\n\n const {listItems, collapseItems} = getAutosizeListItems(\n items,\n height,\n collapseItem,\n );\n return (\n <div style={{width, height}}>\n <CompositeBarView\n type=\"menu\"\n items={listItems}\n onItemClick={onItemClick}\n collapseItems={collapseItems}\n multipleTooltip={multipleTooltip}\n />\n </div>\n );\n }}\n </AutoSizer>\n )}\n </div>\n );\n } else {\n node = (\n <div className={b({subheader: true})}>\n <CompositeBarView type=\"subheader\" items={items} onItemClick={onItemClick} />\n </div>\n );\n }\n return <MultipleTooltipProvider>{node}</MultipleTooltipProvider>;\n};\n","import {addComponentKeysets} from '@gravity-ui/uikit/i18n';\n\nimport {NAMESPACE} from '../../utils/cn';\n\nimport en from './en.json';\nimport ru from './ru.json';\n\nconst COMPONENT = 'AsideHeader';\nexport default addComponentKeysets({en, ru}, `${NAMESPACE}${COMPONENT}`);\n","<svg width=\"8\" height=\"8\" viewBox=\"0 0 8 8\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"m.72 7.64 6.39-3.2a.5.5 0 0 0 0-.89L.72.36A.5.5 0 0 0 0 .81v6.38c0 .37.4.61.72.45Z\"/></svg>\n","import React, {useCallback} from 'react';\n\nimport {Icon} from '@gravity-ui/uikit';\n\nimport {block} from '../../../utils/cn';\nimport {useAsideHeaderInnerContext} from '../../AsideHeaderContext';\nimport i18n from '../../i18n';\n\nimport controlMenuButtonIcon from '../../../../../assets/icons/control-menu-button.svg';\n\nimport './CollapseButton.scss';\n\nconst b = block('collapse-button');\n\nexport interface CollapseButtonProps {\n className?: string;\n}\n\nexport const CollapseButton = ({className}: CollapseButtonProps) => {\n const {onChangeCompact, compact, expandTitle, collapseTitle} = useAsideHeaderInnerContext();\n\n const onCollapseButtonClick = useCallback(() => {\n onChangeCompact?.(!compact);\n }, [compact, onChangeCompact]);\n\n const buttonTitle = compact\n ? expandTitle || i18n('button_expand')\n : collapseTitle || i18n('button_collapse');\n return (\n <button\n className={b({compact}, className)}\n onClick={onCollapseButtonClick}\n title={buttonTitle}\n >\n <Icon data={controlMenuButtonIcon} className={b('icon')} width=\"16\" height=\"10\" />\n </button>\n );\n};\n","import React from 'react';\n\nimport {Button, Icon} from '@gravity-ui/uikit';\n\nimport {LogoProps} from '../types';\nimport {block} from '../utils/cn';\n\nimport './Logo.scss';\n\nconst b = block('logo');\n\nexport const Logo: React.FC<\n LogoProps & {compact?: boolean; buttonClassName?: string; buttonWrapperClassName?: string}\n> = ({\n text,\n icon,\n iconSrc,\n iconClassName,\n iconSize = 24,\n textSize = 15,\n href,\n target = '_self',\n wrapper,\n onClick,\n compact,\n className,\n buttonWrapperClassName,\n buttonClassName,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n}) => {\n const hasWrapper = typeof wrapper === 'function';\n\n let buttonIcon;\n\n if (iconSrc) {\n buttonIcon = (\n <Button.Icon className={iconClassName}>\n <img alt=\"logo icon\" src={iconSrc} width={iconSize} height={iconSize} />\n </Button.Icon>\n );\n } else if (icon) {\n buttonIcon = <Icon data={icon} size={iconSize} className={iconClassName} />;\n }\n\n const button = (\n <Button\n view=\"flat\"\n size=\"l\"\n className={b('btn-logo', buttonClassName)}\n component={hasWrapper ? 'span' : undefined}\n onClick={onClick}\n target={target}\n rel={target === '_self' ? undefined : 'noreferrer'}\n href={href}\n extraProps={{\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n }}\n >\n {buttonIcon}\n </Button>\n );\n\n let logo: React.ReactNode;\n\n if (typeof text === 'function') {\n logo = text();\n } else {\n logo = (\n <div className={b('logo')} style={{fontSize: textSize}}>\n {text}\n </div>\n );\n }\n\n return (\n <div className={b(null, className)}>\n <div className={b('logo-btn-place', buttonWrapperClassName)}>\n {hasWrapper ? wrapper(button, Boolean(compact)) : button}\n </div>\n {!compact &&\n (hasWrapper ? (\n <div onClick={onClick}>{wrapper(logo, Boolean(compact))}</div>\n ) : (\n <a\n href={href ?? '/'}\n target={target}\n rel={target === '_self' ? undefined : 'noreferrer'}\n className={b('logo-link')}\n onClick={onClick}\n >\n {logo}\n </a>\n ))}\n </div>\n );\n};\n","import React, {useCallback} from 'react';\n\nimport {Icon} from '@gravity-ui/uikit';\n\nimport {CompositeBar} from '../../CompositeBar/CompositeBar';\nimport {Logo} from '../../Logo';\nimport {ASIDE_HEADER_COMPACT_WIDTH, HEADER_DIVIDER_HEIGHT} from '../../constants';\nimport {SubheaderMenuItem} from '../../types';\nimport {useAsideHeaderContext, useAsideHeaderInnerContext} from '../AsideHeaderContext';\nimport {b} from '../utils';\n\nimport headerDividerCollapsedIcon from '../../../../assets/icons/divider-collapsed.svg';\n\nconst DEFAULT_SUBHEADER_ITEMS: SubheaderMenuItem[] = [];\n\nexport const Header = () => {\n const {logo, onItemClick, onClosePanel, headerDecoration, subheaderItems} =\n useAsideHeaderInnerContext();\n const {compact} = useAsideHeaderContext();\n const {onClick: onLogoClickProp} = logo;\n const onLogoClick = useCallback(\n (event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n onClosePanel?.();\n onLogoClickProp?.(event);\n },\n [onClosePanel, onLogoClickProp],\n );\n\n return (\n <div className={b('header', {['with-decoration']: headerDecoration})}>\n <Logo\n {...logo}\n onClick={onLogoClick}\n compact={compact}\n buttonWrapperClassName={b('logo-button-wrapper')}\n buttonClassName={b('logo-button')}\n />\n\n <CompositeBar\n type=\"subheader\"\n items={subheaderItems || DEFAULT_SUBHEADER_ITEMS}\n onItemClick={onItemClick}\n />\n\n <Icon\n data={headerDividerCollapsedIcon}\n className={b('header-divider')}\n width={ASIDE_HEADER_COMPACT_WIDTH}\n height={HEADER_DIVIDER_HEIGHT}\n />\n </div>\n );\n};\n","import React from 'react';\n\nimport {Drawer, DrawerItem} from '../../Drawer/Drawer';\nimport {useAsideHeaderInnerContext} from '../AsideHeaderContext';\nimport {b} from '../utils';\n\nexport const Panels = () => {\n const {panelItems, onClosePanel, size} = useAsideHeaderInnerContext();\n\n return panelItems ? (\n <Drawer\n className={b('panels')}\n onVeilClick={onClosePanel}\n onEscape={onClosePanel}\n style={{left: size}}\n >\n {panelItems.map((item) => (\n <DrawerItem key={item.id} {...item} />\n ))}\n </Drawer>\n ) : null;\n};\n","import React, {useRef} from 'react';\n\nimport {setRef} from '@gravity-ui/uikit';\n\nimport {useVisibleMenuItems} from '../../AllPagesPanel';\nimport {CompositeBar} from '../../CompositeBar/CompositeBar';\nimport {useAsideHeaderInnerContext} from '../AsideHeaderContext';\nimport i18n from '../i18n';\nimport {b} from '../utils';\n\nimport {CollapseButton} from './CollapseButton/CollapseButton';\nimport {Header} from './Header';\nimport {Panels} from './Panels';\n\nexport const FirstPanel = React.forwardRef<HTMLDivElement>((_props, ref) => {\n const {\n size,\n onItemClick,\n headerDecoration,\n multipleTooltip,\n menuMoreTitle,\n renderFooter,\n compact,\n customBackground,\n customBackgroundClassName,\n className,\n hideCollapseButton,\n qa,\n } = useAsideHeaderInnerContext();\n const visibleMenuItems = useVisibleMenuItems();\n\n const asideRef = useRef<HTMLDivElement>(null);\n\n React.useEffect(() => {\n setRef<HTMLDivElement>(ref, asideRef.current);\n }, [ref]);\n\n return (\n <React.Fragment>\n <div className={b('aside', className)} style={{width: size}} data-qa={qa}>\n <div className={b('aside-popup-anchor')} ref={asideRef} />\n\n <div className={b('aside-content', {['with-decoration']: headerDecoration})}>\n {customBackground && (\n <div className={b('aside-custom-background', customBackgroundClassName)}>\n {customBackground}\n </div>\n )}\n <Header />\n {visibleMenuItems?.length ? (\n <CompositeBar\n type=\"menu\"\n items={visibleMenuItems}\n menuMoreTitle={menuMoreTitle ?? i18n('label_more')}\n onItemClick={onItemClick}\n multipleTooltip={multipleTooltip}\n />\n ) : (\n <div className={b('menu-items')} />\n )}\n <div className={b('footer')}>\n {renderFooter?.({\n size,\n compact: Boolean(compact),\n asideRef,\n })}\n </div>\n {!hideCollapseButton && <CollapseButton />}\n </div>\n </div>\n <Panels />\n </React.Fragment>\n );\n});\n\nFirstPanel.displayName = 'FirstPanel';\n","import {QAProps} from '@gravity-ui/uikit';\n\nimport {RenderContentType} from '../Content';\nimport {DrawerItemProps} from '../Drawer/Drawer';\nimport {\n AsideHeaderTopAlertProps,\n LogoProps,\n MenuItem,\n OpenModalSubscriber,\n SubheaderMenuItem,\n} from '../types';\n\nimport {AsideHeaderContextType} from './AsideHeaderContext';\n\nexport interface LayoutProps {\n compact: boolean;\n className?: string;\n topAlert?: AsideHeaderTopAlertProps;\n}\n\nexport interface AsideHeaderGeneralProps extends QAProps {\n logo: LogoProps;\n multipleTooltip?: boolean;\n className?: string;\n collapseTitle?: string;\n expandTitle?: string;\n menuMoreTitle?: string;\n topAlert?: AsideHeaderTopAlertProps;\n customBackground?: React.ReactNode;\n customBackgroundClassName?: string;\n hideCollapseButton?: boolean;\n renderContent?: RenderContentType;\n renderFooter?: (data: {\n size: number;\n compact: boolean;\n asideRef: React.RefObject<HTMLDivElement>;\n }) => React.ReactNode;\n onClosePanel?: () => void;\n onChangeCompact?: (compact: boolean) => void;\n openModalSubscriber?: (subscriber: OpenModalSubscriber) => void;\n}\n\nexport interface AsideHeaderDefaultProps {\n panelItems?: DrawerItemProps[];\n subheaderItems?: SubheaderMenuItem[];\n menuItems?: MenuItem[];\n onMenuItemsChanged?: (items: MenuItem[]) => void;\n headerDecoration?: boolean;\n}\n\nexport type AsideHeaderInnerProps = AsideHeaderGeneralProps &\n AsideHeaderDefaultProps &\n AsideHeaderContextType;\n\nexport interface AsideHeaderProps\n extends AsideHeaderGeneralProps,\n LayoutProps,\n Partial<AsideHeaderDefaultProps> {}\n\nexport enum InnerPanels {\n AllPages = 'all-pages',\n}\n","import React, {useCallback, useEffect, useMemo, useState} from 'react';\n\nimport {AllPagesPanel, getAllPagesMenuItem} from '../AllPagesPanel';\nimport {MenuItem} from '../types';\n\nimport {AsideHeaderInnerContextType} from './AsideHeaderContext';\nimport {AsideHeaderProps, InnerPanels} from './types';\n\nconst EMPTY_MENU_ITEMS: MenuItem[] = [];\n\nexport const useAsideHeaderInnerContextValue = (\n props: AsideHeaderProps & {size: number},\n): AsideHeaderInnerContextType => {\n const {size, onClosePanel, menuItems, panelItems, onMenuItemsChanged} = props;\n const [innerVisiblePanel, setInnerVisiblePanel] = useState<InnerPanels | undefined>();\n const ALL_PAGES_MENU_ITEM = React.useMemo(() => {\n return getAllPagesMenuItem();\n }, []);\n\n const allPagesIsAvailable =\n Boolean(onMenuItemsChanged) && (!menuItems || menuItems?.length > 0);\n\n useEffect(() => {\n // If any user panel became visible we need to switch off all inner panels\n if (panelItems?.some((x) => x.visible)) {\n setInnerVisiblePanel(undefined);\n }\n }, [panelItems]);\n\n const innerOnClosePanel = useCallback(() => {\n setInnerVisiblePanel(undefined);\n onClosePanel?.();\n }, [onClosePanel]);\n\n const onItemClick = useCallback(\n (\n item: MenuItem,\n collapsed: boolean,\n event: React.MouseEvent<HTMLDivElement, MouseEvent>,\n ) => {\n if (item.id === ALL_PAGES_MENU_ITEM.id) {\n setInnerVisiblePanel((prev) =>\n prev === InnerPanels.AllPages ? undefined : InnerPanels.AllPages,\n );\n } else {\n innerOnClosePanel();\n }\n item.onItemClick?.(item, collapsed, event);\n },\n [innerOnClosePanel, ALL_PAGES_MENU_ITEM],\n );\n\n const innerMenuItems = useMemo(\n () =>\n allPagesIsAvailable\n ? [\n ...(menuItems || EMPTY_MENU_ITEMS),\n {\n ...ALL_PAGES_MENU_ITEM,\n current: innerVisiblePanel === InnerPanels.AllPages,\n },\n ]\n : menuItems || EMPTY_MENU_ITEMS,\n [allPagesIsAvailable, menuItems, innerVisiblePanel, ALL_PAGES_MENU_ITEM],\n );\n\n const innerPanelItems = useMemo(() => {\n if (!allPagesIsAvailable) {\n return panelItems;\n }\n return [\n ...(panelItems || []),\n {\n id: InnerPanels.AllPages,\n content: <AllPagesPanel />,\n visible: innerVisiblePanel === InnerPanels.AllPages,\n },\n ];\n }, [allPagesIsAvailable, panelItems, innerVisiblePanel]);\n\n return {\n ...props,\n onClosePanel: innerOnClosePanel,\n allPagesIsAvailable,\n menuItems: innerMenuItems,\n panelItems: innerPanelItems,\n size,\n onItemClick,\n };\n};\n","import React from 'react';\n\nimport {FirstPanel} from '..';\nimport {AsideHeaderInnerContextProvider, useAsideHeaderContext} from '../../AsideHeaderContext';\nimport {AsideHeaderProps} from '../../types';\nimport {useAsideHeaderInnerContextValue} from '../../useAsideHeaderInnerContextValue';\n\ntype Props = Omit<AsideHeaderProps, 'compact' | 'size'>;\n\nexport const PageLayoutAside = React.forwardRef<HTMLDivElement, Props>((props, ref) => {\n const {size, compact} = useAsideHeaderContext();\n\n const asideHeaderInnerContextValue = useAsideHeaderInnerContextValue({size, compact, ...props});\n\n return (\n <AsideHeaderInnerContextProvider value={asideHeaderInnerContextValue}>\n <FirstPanel ref={ref} />\n </AsideHeaderInnerContextProvider>\n );\n});\n\nPageLayoutAside.displayName = 'PageLayoutAside';\n"],"names":["b","block","useCallback","React","Icon","Button","Pin","PinFill","COMPONENT","addComponentKeysets","en","ru","NAMESPACE","i18n","Ellipsis","useMemo","useAsideHeaderInnerContext","useRef","useState","useEffect","Flex","Text","Gear","List","Component","createElement","Popup","COLLAPSE_ITEM_ID","useContext","useAsideHeaderContext","ASIDE_HEADER_COMPACT_WIDTH","getSelectedItemIndex","getItemHeight","getItemsHeight","isMenuItem","Item","getItemsMinHeight","getMoreButtonItem","getAutosizeListItems","headerDividerCollapsedIcon","HEADER_DIVIDER_HEIGHT","Drawer","DrawerItem","setRef","AsideHeaderInnerContextProvider"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"divider-collapsed-153868e7.js","sources":["../../assets/icons/divider-collapsed.svg"],"sourcesContent":["<svg width=\"56\" height=\"29\" viewBox=\"0 0 56 29\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M56 0v29c-.8-1-7-6.1-17.7-8.4L13 15.7A16 16 0 0 1 0 0Z\"/></svg>\n"],"names":["React"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAI,KAAK,CAAC;AACV,SAAS,QAAQ,GAAG,EAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,UAAU,MAAM,EAAE,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI,MAAM,EAAE,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE;AAEnV,IAAI,mBAAmB,GAAG,SAAS,mBAAmB,CAAC,KAAK,EAAE;AAC9D,EAAE,oBAAoBA,gBAAK,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC;AAC1D,IAAI,KAAK,EAAE,EAAE;AACb,IAAI,MAAM,EAAE,EAAE;AACd,IAAI,OAAO,EAAE,WAAW;AACxB,IAAI,IAAI,EAAE,cAAc;AACxB,IAAI,KAAK,EAAE,4BAA4B;AACvC,GAAG,EAAE,KAAK,CAAC,EAAE,KAAK,KAAK,KAAK,gBAAgBA,gBAAK,CAAC,aAAa,CAAC,MAAM,EAAE;AACxE,IAAI,CAAC,EAAE,wDAAwD;AAC/D,GAAG,CAAC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AACF,iCAAe,mBAAmB;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"FooterItem-73c476e4.js","sources":["../../../src/hooks/useForwardRef.tsx","../../../src/components/MobileLogo/MobileLogo.tsx","../../../src/components/MobileHeader/Burger/Burger.tsx","../../../src/components/MobileHeader/constants.ts","../../../src/components/MobileHeader/utils.ts","../../../src/components/MobileHeader/BurgerMenu/BurgerCompositeBar/BurgerCompositeBar.tsx","../../../src/components/MobileHeader/BurgerMenu/BurgerMenu.tsx","../../../src/components/MobileHeader/i18n/index.ts","../../../src/components/MobileHeader/MobileHeader.tsx","../../../src/components/MobileHeader/FooterItem/FooterItem.tsx"],"sourcesContent":["import React from 'react';\n\nexport const useForwardRef = <T,>(\n ref: ((instance: T | null) => void) | React.MutableRefObject<T | null> | null,\n initialValue: any = null,\n) => {\n const targetRef = React.useRef<T>(initialValue);\n\n React.useEffect(() => {\n if (!ref) return;\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n }, [ref]);\n\n return targetRef;\n};\n","import React from 'react';\n\nimport {Icon} from '@gravity-ui/uikit';\n\nimport {LogoProps} from '../types';\nimport {block} from '../utils/cn';\n\nimport './MobileLogo.scss';\n\nconst b = block('mobile-logo');\n\nexport interface MobileLogoProps extends LogoProps {\n compact: boolean;\n}\n\nexport const MobileLogo: React.FC<MobileLogoProps> = ({\n text,\n compact,\n icon,\n iconSrc,\n iconClassName,\n iconSize = 32,\n textSize = 20,\n href = '/',\n target = '_self',\n wrapper,\n onClick,\n className,\n}) => {\n const hasWrapper = typeof wrapper === 'function';\n\n let logoIcon;\n\n if (iconSrc) {\n logoIcon = (\n <img\n alt=\"logo icon\"\n src={iconSrc}\n width={iconSize}\n height={iconSize}\n className={iconClassName}\n />\n );\n } else if (icon) {\n logoIcon = <Icon data={icon} size={iconSize} className={b('icon', iconClassName)} />;\n }\n\n let logoTitle: React.ReactNode;\n\n if (typeof text === 'function') {\n logoTitle = text();\n } else {\n logoTitle = (\n <span className={b('title')} style={{fontSize: textSize}}>\n {text}\n </span>\n );\n }\n\n const logo = (\n <React.Fragment>\n {logoIcon}\n {logoTitle}\n </React.Fragment>\n );\n\n return hasWrapper ? (\n <div className={b(null, className)} onClick={onClick}>\n {wrapper(logo, compact)}\n </div>\n ) : (\n <a\n href={href}\n target={target}\n ref={target === '_self' ? undefined : 'noreferrer'}\n className={b(null, className)}\n onClick={onClick}\n >\n {logo}\n </a>\n );\n};\n","import React from 'react';\n\nimport {block} from '../../utils/cn';\n\nimport './Burger.scss';\n\nconst b = block('mobile-header-burger');\n\ninterface BurgerProps {\n closeTitle: string;\n openTitle: string;\n opened?: boolean;\n className?: string;\n onClick?: (event: React.MouseEvent<HTMLElement>) => void;\n}\n\nexport const Burger = React.memo(\n ({closeTitle, openTitle, opened, className, onClick}: BurgerProps) => (\n <button\n className={b({opened}, className)}\n onClick={onClick}\n aria-label={opened ? closeTitle : openTitle}\n >\n <span className={b('icon')}>\n <span className={b('icon-dash')}></span>\n </span>\n </button>\n ),\n);\n\nBurger.displayName = 'Burger';\n","import {ItemEventsConfig} from './types';\n\nexport const MOBILE_ITEM_HEIGHT = 48;\nexport const MOBILE_HEADER_COMPACT_HEIGHT = 50;\nexport const MOBILE_HEADER_EXPANDED_HEIGHT = 120;\nexport const MOBILE_HEADER_ICON_SIZE = 20;\n\nexport const MOBILE_HEADER_EVENT_NAMES: ItemEventsConfig = {\n toggleEvent: 'MOBILE_PANEL_TOGGLE',\n closeEvent: 'MOBILE_PANEL_CLOSE',\n openEvent: 'MOBILE_PANEL_OPEN',\n};\n\nexport const BURGER_PANEL_ITEM_ID = 'burger';\n","import {MOBILE_ITEM_HEIGHT} from './constants';\nimport {MobileHeaderEventOptions, MobileMenuItem} from './types';\n\nexport const getItemHeight = (item: MobileMenuItem) => {\n switch (item.type) {\n case 'divider':\n return 1;\n default:\n return MOBILE_ITEM_HEIGHT;\n }\n};\n\nexport const getSelectedItemIndex = (items: MobileMenuItem[]) => {\n const index = items.findIndex(({current}) => Boolean(current));\n\n return index === -1 ? undefined : index;\n};\n\nexport const getMobileHeaderCustomEvent = (\n eventName: string,\n detail?: MobileHeaderEventOptions,\n) => {\n return new CustomEvent<MobileHeaderEventOptions>(eventName, {detail});\n};\n","import React from 'react';\n\nimport {Icon, List} from '@gravity-ui/uikit';\n\nimport {block} from '../../../utils/cn';\nimport {MOBILE_HEADER_ICON_SIZE} from '../../constants';\nimport {MobileMenuItem} from '../../types';\nimport {getItemHeight, getSelectedItemIndex} from '../../utils';\n\nimport './BurgerCompositeBar.scss';\n\nconst b = block('burger-composite-bar');\n\ninterface ItemProps {\n item: MobileMenuItem;\n onItemClick?: (item: MobileMenuItem) => void;\n}\n\nconst Item = ({item, onItemClick}: ItemProps) => {\n const {icon, type = 'regular', iconSize = MOBILE_HEADER_ICON_SIZE} = item;\n\n if (type === 'divider') {\n return <div className={b('menu-divider')} />;\n }\n\n const node = (\n <div\n className={b('item', {type})}\n onClick={() => {\n if (typeof item.onItemClick === 'function') {\n item.onItemClick(item);\n }\n\n if (type === 'regular') {\n onItemClick?.(item);\n }\n }}\n >\n <div className={b('item-icon-place')}>\n {icon && <Icon data={icon} size={iconSize} className={b('item-icon')} />}\n </div>\n <div className={b('item-title')}>{item.title}</div>\n </div>\n );\n\n if (typeof item.itemWrapper === 'function') {\n return item.itemWrapper(node, item) as React.ReactElement;\n }\n\n return item.link ? (\n <a href={item.link} className={b('link')}>\n {node}\n </a>\n ) : (\n node\n );\n};\nItem.displayName = 'Item';\n\ninterface BurgerCompositeBarProps {\n items: MobileMenuItem[];\n onItemClick?: (item: MobileMenuItem) => void;\n}\n\nexport const BurgerCompositeBar = React.memo(({items, onItemClick}: BurgerCompositeBarProps) => {\n return (\n <nav className={b()}>\n <List<MobileMenuItem>\n items={items}\n selectedItemIndex={getSelectedItemIndex(items)}\n itemHeight={getItemHeight}\n itemClassName={b('root-menu-item')}\n virtualized={false}\n filterable={false}\n sortable={false}\n renderItem={(item) => <Item item={item} onItemClick={onItemClick} />}\n />\n </nav>\n );\n});\n\nBurgerCompositeBar.displayName = 'BurgerCompositeBar';\n","import React from 'react';\n\nimport {Sheet} from '@gravity-ui/uikit';\n\nimport {block} from '../../utils/cn';\nimport {MobileMenuItem, ModalItem} from '../types';\n\nimport {BurgerCompositeBar} from './BurgerCompositeBar/BurgerCompositeBar';\n\nimport './BurgerMenu.scss';\n\nconst b = block('mobile-header-burger-menu');\n\nexport interface BurgerMenuInnerProps {\n items?: MobileMenuItem[];\n modalItem?: ModalItem;\n renderFooter?: () => React.ReactNode;\n onItemClick?: (item: MobileMenuItem) => void;\n className?: string;\n}\n\nexport const BurgerMenu = React.memo(\n ({items = [], renderFooter, modalItem, className, onItemClick}: BurgerMenuInnerProps) => {\n return (\n <div className={b(null, className)}>\n {modalItem && (\n <Sheet\n visible={modalItem.visible}\n id={modalItem.id}\n title={modalItem.title}\n onClose={modalItem.onClose}\n contentClassName={modalItem.contentClassName}\n className={modalItem.className}\n >\n {modalItem.renderContent?.()}\n </Sheet>\n )}\n\n <BurgerCompositeBar items={items} onItemClick={onItemClick} />\n\n {renderFooter && <div className={b('footer')}>{renderFooter?.()}</div>}\n </div>\n );\n },\n);\n\nBurgerMenu.displayName = 'BurgerMenu';\n","import {addComponentKeysets} from '@gravity-ui/uikit/i18n';\n\nimport {NAMESPACE} from '../../utils/cn';\n\nimport en from './en.json';\nimport ru from './ru.json';\n\nconst COMPONENT = 'MobileHeader';\nexport default addComponentKeysets({en, ru}, `${NAMESPACE}${COMPONENT}`);\n","import React, {useCallback, useEffect, useMemo, useState} from 'react';\n\nimport {useForwardRef} from '../../hooks/useForwardRef';\nimport {Content, RenderContentType} from '../Content';\nimport {Drawer, DrawerItem, DrawerItemProps} from '../Drawer/Drawer';\nimport {MobileLogo} from '../MobileLogo';\nimport {LogoProps} from '../types';\nimport {block} from '../utils/cn';\n\nimport {Burger} from './Burger/Burger';\nimport {BurgerMenu, BurgerMenuInnerProps} from './BurgerMenu/BurgerMenu';\nimport {\n BURGER_PANEL_ITEM_ID,\n MOBILE_HEADER_COMPACT_HEIGHT,\n MOBILE_HEADER_EVENT_NAMES,\n MOBILE_HEADER_EXPANDED_HEIGHT,\n} from './constants';\nimport i18n from './i18n';\nimport {MobileHeaderEvent, MobileMenuItem} from './types';\n\nimport './MobileHeader.scss';\n\nconst b = block('mobile-header');\n\ntype PanelName = DrawerItemProps['id'] | null;\n\ninterface BurgerMenuProps extends Omit<BurgerMenuInnerProps, 'renderFooter'> {\n renderFooter?: (data: {size: number; isCompact: boolean}) => React.ReactNode;\n}\n\ninterface PanelItem extends Omit<DrawerItemProps, 'visible'> {}\n\nexport interface MobileHeaderProps {\n logo: LogoProps;\n burgerMenu: BurgerMenuProps;\n burgerCloseTitle?: string;\n burgerOpenTitle?: string;\n panelItems?: PanelItem[];\n renderContent?: RenderContentType;\n sideItemRenderContent?: RenderContentType;\n onEvent?: (itemName: string, eventName: MobileHeaderEvent) => void;\n onClosePanel?: () => void;\n className?: string;\n contentClassName?: string;\n}\n\nexport const MobileHeader = React.forwardRef<HTMLDivElement, MobileHeaderProps>(\n (\n {\n logo,\n burgerMenu,\n burgerCloseTitle = i18n('burger_button_close'),\n burgerOpenTitle = i18n('burger_button_open'),\n panelItems = [],\n renderContent,\n sideItemRenderContent,\n onClosePanel,\n onEvent,\n className,\n contentClassName,\n },\n ref,\n ): React.ReactElement => {\n const targetRef = useForwardRef<HTMLDivElement>(ref);\n const [compact] = useState(true);\n const [visiblePanel, setVisiblePanel] = useState<PanelName>(null);\n\n // for expand top panel cases (i.e. switch service panel). Will be removed if not used in future design\n const size = compact ? MOBILE_HEADER_COMPACT_HEIGHT : MOBILE_HEADER_EXPANDED_HEIGHT;\n\n const onPanelToggle = useCallback(\n (name: PanelName) => {\n if (!name) return;\n\n setVisiblePanel((prev) => {\n const panelOpen = prev === name;\n\n onEvent?.(\n name,\n panelOpen\n ? MOBILE_HEADER_EVENT_NAMES.closeEvent\n : MOBILE_HEADER_EVENT_NAMES.openEvent,\n );\n\n return panelOpen ? null : name;\n });\n },\n [onEvent],\n );\n\n const onMobilePanelToggle = useCallback(\n ({detail}) => {\n if (typeof detail?.panelName === 'string') {\n onPanelToggle(detail?.panelName);\n }\n },\n [onPanelToggle],\n );\n\n const onMobilePanelOpen = useCallback(\n ({detail}) => {\n if (typeof detail?.panelName === 'string') {\n onEvent?.(detail?.panelName, MOBILE_HEADER_EVENT_NAMES.openEvent);\n setVisiblePanel(detail?.panelName);\n }\n },\n [onEvent],\n );\n\n const onMobilePanelClose = useCallback(\n ({detail}) => {\n if (typeof detail?.panelName === 'string') {\n onEvent?.(detail?.panelName, MOBILE_HEADER_EVENT_NAMES.closeEvent);\n setVisiblePanel(null);\n }\n },\n [onEvent],\n );\n\n const onBurgerOpen = useCallback(() => {\n onEvent?.(BURGER_PANEL_ITEM_ID, MOBILE_HEADER_EVENT_NAMES.openEvent);\n setVisiblePanel(BURGER_PANEL_ITEM_ID);\n }, [onEvent]);\n\n const onBurgerClose = useCallback(() => {\n onEvent?.(BURGER_PANEL_ITEM_ID, MOBILE_HEADER_EVENT_NAMES.closeEvent);\n setVisiblePanel(null);\n }, [onEvent]);\n\n const onCloseDrawer = useCallback(() => {\n if (visiblePanel) {\n onEvent?.(visiblePanel, MOBILE_HEADER_EVENT_NAMES.closeEvent);\n }\n setVisiblePanel(null);\n }, [visiblePanel, onEvent]);\n\n const onBurgerMenuItemClick = useCallback(\n (item: MobileMenuItem) => {\n const closeMenuOnClick = item.closeMenuOnClick ?? true;\n\n if (closeMenuOnClick) {\n onBurgerClose();\n }\n },\n [onBurgerClose],\n );\n\n const renderBurgerMenuFooter = useCallback(\n () =>\n burgerMenu.renderFooter?.({\n size,\n isCompact: compact,\n }),\n [burgerMenu, size, compact],\n );\n\n const onLogoClick = useCallback(\n (event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n onClosePanel?.();\n logo.onClick?.(event);\n },\n [logo, onClosePanel],\n );\n\n const burgerPanelItem: PanelItem = useMemo(\n () => ({\n id: BURGER_PANEL_ITEM_ID,\n content: (\n <BurgerMenu\n items={burgerMenu.items}\n modalItem={burgerMenu.modalItem}\n renderFooter={renderBurgerMenuFooter}\n onItemClick={onBurgerMenuItemClick}\n className={b('burger-menu')}\n />\n ),\n }),\n [burgerMenu.items, burgerMenu.modalItem, onBurgerMenuItemClick, renderBurgerMenuFooter],\n );\n\n useEffect(() => {\n const node = targetRef?.current;\n\n if (node) {\n node.addEventListener('MOBILE_BURGER_OPEN', onBurgerOpen);\n node.addEventListener('MOBILE_BURGER_CLOSE', onBurgerClose);\n\n node.addEventListener('MOBILE_PANEL_TOGGLE', onMobilePanelToggle);\n node.addEventListener('MOBILE_PANEL_OPEN', onMobilePanelOpen);\n node.addEventListener('MOBILE_PANEL_CLOSE', onMobilePanelClose);\n }\n\n return () => {\n if (node) {\n node.removeEventListener('MOBILE_BURGER_OPEN', onBurgerOpen);\n node.removeEventListener('MOBILE_BURGER_CLOSE', onBurgerClose);\n\n node.removeEventListener('MOBILE_PANEL_TOGGLE', onMobilePanelToggle);\n node.removeEventListener('MOBILE_PANEL_OPEN', onMobilePanelOpen);\n node.removeEventListener('MOBILE_PANEL_CLOSE', onMobilePanelClose);\n }\n };\n }, [\n targetRef,\n onBurgerClose,\n onBurgerOpen,\n onMobilePanelToggle,\n onMobilePanelOpen,\n onMobilePanelClose,\n ]);\n\n return (\n <div className={b({compact}, className)} ref={targetRef}>\n <header className={b('header')} style={{height: size}}>\n <Burger\n opened={visiblePanel === burgerPanelItem.id}\n onClick={() => onPanelToggle(BURGER_PANEL_ITEM_ID)}\n className={b('burger')}\n closeTitle={burgerCloseTitle}\n openTitle={burgerOpenTitle}\n />\n <MobileLogo {...logo} compact={compact} onClick={onLogoClick} />\n\n <div className={b('side-item')}>{sideItemRenderContent?.({size})}</div>\n </header>\n\n <Drawer\n className={b('panels')}\n onVeilClick={onCloseDrawer}\n onEscape={onCloseDrawer}\n style={{top: size}}\n >\n {[burgerPanelItem, ...panelItems].map((item) => (\n <DrawerItem\n {...item}\n key={item.id}\n visible={visiblePanel === item.id}\n className={b('panel-item', item.className)}\n />\n ))}\n </Drawer>\n\n <Content\n size={size}\n renderContent={renderContent}\n className={b('content', contentClassName)}\n cssSizeVariableName=\"--mobile-header-size\"\n />\n </div>\n );\n },\n);\n\nMobileHeader.displayName = 'MobileHeader';\n","import React from 'react';\n\nimport {Icon, IconProps, Sheet, eventBroker} from '@gravity-ui/uikit';\n\nimport {block} from '../../utils/cn';\nimport {MOBILE_HEADER_ICON_SIZE} from '../constants';\nimport {ModalItem} from '../types';\n\nimport './FooterItem.scss';\n\nconst b = block('mobile-header-footer-item');\n\nexport interface FooterItemProps {\n icon?: IconProps['data'];\n iconSize?: string | number;\n className?: string;\n modalItem?: ModalItem;\n onClick?: (event: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n eventBrokerMeta?: Record<string, string | undefined>;\n}\n\nexport const FooterItem = ({\n icon,\n iconSize = MOBILE_HEADER_ICON_SIZE,\n className,\n modalItem = {visible: false},\n onClick,\n eventBrokerMeta,\n}: FooterItemProps) => {\n const handleClick = React.useCallback(\n (event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n eventBroker.publish({\n componentId: 'MobileHeaderFooterItem',\n eventId: 'click',\n domEvent: event,\n meta: eventBrokerMeta,\n });\n\n onClick?.(event);\n },\n [onClick, eventBrokerMeta],\n );\n\n return (\n <div className={b()}>\n <button className={b('button', className)} onClick={handleClick}>\n {icon ? <Icon data={icon} size={iconSize} className={b('icon')} /> : null}\n </button>\n\n <Sheet\n id={modalItem.id}\n title={modalItem.title}\n visible={modalItem.visible}\n className={b('modal', modalItem.className)}\n contentClassName={b('modal-content', modalItem.contentClassName)}\n allowHideOnContentScroll={modalItem.modalAllowHideOnContentScroll}\n onClose={modalItem.onClose}\n >\n {modalItem.renderContent?.()}\n </Sheet>\n </div>\n );\n};\n"],"names":["React","b"],"mappings":"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"}