menu.js 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668
  1. "use strict";
  2. var __extends = (this && this.__extends) || (function () {
  3. var extendStatics = Object.setPrototypeOf ||
  4. ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
  5. function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
  6. return function (d, b) {
  7. extendStatics(d, b);
  8. function __() { this.constructor = d; }
  9. d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
  10. };
  11. })();
  12. /*!
  13. * devextreme-angular
  14. * Version: 19.1.16
  15. * Build date: Tue Oct 18 2022
  16. *
  17. * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED
  18. *
  19. * This software may be modified and distributed under the terms
  20. * of the MIT license. See the LICENSE file in the root of the project for details.
  21. *
  22. * https://github.com/DevExpress/devextreme-angular
  23. */
  24. Object.defineProperty(exports, "__esModule", { value: true });
  25. var platform_browser_1 = require("@angular/platform-browser");
  26. var platform_browser_2 = require("@angular/platform-browser");
  27. var core_1 = require("@angular/core");
  28. var menu_1 = require("devextreme/ui/menu");
  29. var component_1 = require("../core/component");
  30. var template_host_1 = require("../core/template-host");
  31. var integration_1 = require("../core/integration");
  32. var template_1 = require("../core/template");
  33. var nested_option_1 = require("../core/nested-option");
  34. var watcher_helper_1 = require("../core/watcher-helper");
  35. var iterable_differ_helper_1 = require("../core/iterable-differ-helper");
  36. var animation_1 = require("./nested/animation");
  37. var hide_1 = require("./nested/hide");
  38. var show_1 = require("./nested/show");
  39. var item_dxi_1 = require("./nested/item-dxi");
  40. var show_first_submenu_mode_1 = require("./nested/show-first-submenu-mode");
  41. var delay_1 = require("./nested/delay");
  42. var show_submenu_mode_1 = require("./nested/show-submenu-mode");
  43. var item_dxi_2 = require("./nested/item-dxi");
  44. /**
  45. * The Menu widget is a panel with clickable items. A click on an item opens a drop-down menu, which can contain several submenus.
  46. */
  47. var DxMenuComponent = (function (_super) {
  48. __extends(DxMenuComponent, _super);
  49. function DxMenuComponent(elementRef, ngZone, templateHost, _watcherHelper, _idh, optionHost, transferState, platformId) {
  50. var _this = _super.call(this, elementRef, ngZone, templateHost, _watcherHelper, transferState, platformId) || this;
  51. _this._watcherHelper = _watcherHelper;
  52. _this._idh = _idh;
  53. _this._createEventEmitters([
  54. { subscribe: 'contentReady', emit: 'onContentReady' },
  55. { subscribe: 'disposing', emit: 'onDisposing' },
  56. { subscribe: 'initialized', emit: 'onInitialized' },
  57. { subscribe: 'itemClick', emit: 'onItemClick' },
  58. { subscribe: 'itemContextMenu', emit: 'onItemContextMenu' },
  59. { subscribe: 'itemRendered', emit: 'onItemRendered' },
  60. { subscribe: 'optionChanged', emit: 'onOptionChanged' },
  61. { subscribe: 'selectionChanged', emit: 'onSelectionChanged' },
  62. { subscribe: 'submenuHidden', emit: 'onSubmenuHidden' },
  63. { subscribe: 'submenuHiding', emit: 'onSubmenuHiding' },
  64. { subscribe: 'submenuShowing', emit: 'onSubmenuShowing' },
  65. { subscribe: 'submenuShown', emit: 'onSubmenuShown' },
  66. { emit: 'accessKeyChange' },
  67. { emit: 'activeStateEnabledChange' },
  68. { emit: 'adaptivityEnabledChange' },
  69. { emit: 'animationChange' },
  70. { emit: 'cssClassChange' },
  71. { emit: 'dataSourceChange' },
  72. { emit: 'disabledChange' },
  73. { emit: 'disabledExprChange' },
  74. { emit: 'displayExprChange' },
  75. { emit: 'elementAttrChange' },
  76. { emit: 'focusStateEnabledChange' },
  77. { emit: 'heightChange' },
  78. { emit: 'hideSubmenuOnMouseLeaveChange' },
  79. { emit: 'hintChange' },
  80. { emit: 'hoverStateEnabledChange' },
  81. { emit: 'itemsChange' },
  82. { emit: 'itemsExprChange' },
  83. { emit: 'itemTemplateChange' },
  84. { emit: 'orientationChange' },
  85. { emit: 'rtlEnabledChange' },
  86. { emit: 'selectByClickChange' },
  87. { emit: 'selectedExprChange' },
  88. { emit: 'selectedItemChange' },
  89. { emit: 'selectionModeChange' },
  90. { emit: 'showFirstSubmenuModeChange' },
  91. { emit: 'showSubmenuModeChange' },
  92. { emit: 'submenuDirectionChange' },
  93. { emit: 'tabIndexChange' },
  94. { emit: 'visibleChange' },
  95. { emit: 'widthChange' }
  96. ]);
  97. _this._idh.setHost(_this);
  98. optionHost.setHost(_this);
  99. return _this;
  100. }
  101. Object.defineProperty(DxMenuComponent.prototype, "accessKey", {
  102. get: /**
  103. * Specifies the shortcut key that sets focus on the widget.
  104. */
  105. function () {
  106. return this._getOption('accessKey');
  107. },
  108. set: function (value) {
  109. this._setOption('accessKey', value);
  110. },
  111. enumerable: true,
  112. configurable: true
  113. });
  114. Object.defineProperty(DxMenuComponent.prototype, "activeStateEnabled", {
  115. get: /**
  116. * A Boolean value specifying whether or not the widget changes its state when interacting with a user.
  117. */
  118. function () {
  119. return this._getOption('activeStateEnabled');
  120. },
  121. set: function (value) {
  122. this._setOption('activeStateEnabled', value);
  123. },
  124. enumerable: true,
  125. configurable: true
  126. });
  127. Object.defineProperty(DxMenuComponent.prototype, "adaptivityEnabled", {
  128. get: /**
  129. * Specifies whether adaptive widget rendering is enabled on small screens. Applies only if the orientation is "horizontal".
  130. */
  131. function () {
  132. return this._getOption('adaptivityEnabled');
  133. },
  134. set: function (value) {
  135. this._setOption('adaptivityEnabled', value);
  136. },
  137. enumerable: true,
  138. configurable: true
  139. });
  140. Object.defineProperty(DxMenuComponent.prototype, "animation", {
  141. get: /**
  142. * Configures widget visibility animations. This object contains two fields: show and hide.
  143. */
  144. function () {
  145. return this._getOption('animation');
  146. },
  147. set: function (value) {
  148. this._setOption('animation', value);
  149. },
  150. enumerable: true,
  151. configurable: true
  152. });
  153. Object.defineProperty(DxMenuComponent.prototype, "cssClass", {
  154. get: /**
  155. * Specifies the name of the CSS class to be applied to the root menu level and all submenus.
  156. */
  157. function () {
  158. return this._getOption('cssClass');
  159. },
  160. set: function (value) {
  161. this._setOption('cssClass', value);
  162. },
  163. enumerable: true,
  164. configurable: true
  165. });
  166. Object.defineProperty(DxMenuComponent.prototype, "dataSource", {
  167. get: /**
  168. * Binds the widget to data.
  169. */
  170. function () {
  171. return this._getOption('dataSource');
  172. },
  173. set: function (value) {
  174. this._setOption('dataSource', value);
  175. },
  176. enumerable: true,
  177. configurable: true
  178. });
  179. Object.defineProperty(DxMenuComponent.prototype, "disabled", {
  180. get: /**
  181. * Specifies whether the widget responds to user interaction.
  182. */
  183. function () {
  184. return this._getOption('disabled');
  185. },
  186. set: function (value) {
  187. this._setOption('disabled', value);
  188. },
  189. enumerable: true,
  190. configurable: true
  191. });
  192. Object.defineProperty(DxMenuComponent.prototype, "disabledExpr", {
  193. get: /**
  194. * Specifies the name of the data source item field whose value defines whether or not the corresponding widget item is disabled.
  195. */
  196. function () {
  197. return this._getOption('disabledExpr');
  198. },
  199. set: function (value) {
  200. this._setOption('disabledExpr', value);
  201. },
  202. enumerable: true,
  203. configurable: true
  204. });
  205. Object.defineProperty(DxMenuComponent.prototype, "displayExpr", {
  206. get: /**
  207. * Specifies the data field whose values should be displayed.
  208. */
  209. function () {
  210. return this._getOption('displayExpr');
  211. },
  212. set: function (value) {
  213. this._setOption('displayExpr', value);
  214. },
  215. enumerable: true,
  216. configurable: true
  217. });
  218. Object.defineProperty(DxMenuComponent.prototype, "elementAttr", {
  219. get: /**
  220. * Specifies the attributes to be attached to the widget's root element.
  221. */
  222. function () {
  223. return this._getOption('elementAttr');
  224. },
  225. set: function (value) {
  226. this._setOption('elementAttr', value);
  227. },
  228. enumerable: true,
  229. configurable: true
  230. });
  231. Object.defineProperty(DxMenuComponent.prototype, "focusStateEnabled", {
  232. get: /**
  233. * Specifies whether the widget can be focused using keyboard navigation.
  234. */
  235. function () {
  236. return this._getOption('focusStateEnabled');
  237. },
  238. set: function (value) {
  239. this._setOption('focusStateEnabled', value);
  240. },
  241. enumerable: true,
  242. configurable: true
  243. });
  244. Object.defineProperty(DxMenuComponent.prototype, "height", {
  245. get: /**
  246. * Specifies the widget's height.
  247. */
  248. function () {
  249. return this._getOption('height');
  250. },
  251. set: function (value) {
  252. this._setOption('height', value);
  253. },
  254. enumerable: true,
  255. configurable: true
  256. });
  257. Object.defineProperty(DxMenuComponent.prototype, "hideSubmenuOnMouseLeave", {
  258. get: /**
  259. * Specifies whether or not the submenu is hidden when the mouse pointer leaves it.
  260. */
  261. function () {
  262. return this._getOption('hideSubmenuOnMouseLeave');
  263. },
  264. set: function (value) {
  265. this._setOption('hideSubmenuOnMouseLeave', value);
  266. },
  267. enumerable: true,
  268. configurable: true
  269. });
  270. Object.defineProperty(DxMenuComponent.prototype, "hint", {
  271. get: /**
  272. * Specifies text for a hint that appears when a user pauses on the widget.
  273. */
  274. function () {
  275. return this._getOption('hint');
  276. },
  277. set: function (value) {
  278. this._setOption('hint', value);
  279. },
  280. enumerable: true,
  281. configurable: true
  282. });
  283. Object.defineProperty(DxMenuComponent.prototype, "hoverStateEnabled", {
  284. get: /**
  285. * Specifies whether the widget changes its state when a user pauses on it.
  286. */
  287. function () {
  288. return this._getOption('hoverStateEnabled');
  289. },
  290. set: function (value) {
  291. this._setOption('hoverStateEnabled', value);
  292. },
  293. enumerable: true,
  294. configurable: true
  295. });
  296. Object.defineProperty(DxMenuComponent.prototype, "items", {
  297. get: /**
  298. * Holds an array of menu items.
  299. */
  300. function () {
  301. return this._getOption('items');
  302. },
  303. set: function (value) {
  304. this._setOption('items', value);
  305. },
  306. enumerable: true,
  307. configurable: true
  308. });
  309. Object.defineProperty(DxMenuComponent.prototype, "itemsExpr", {
  310. get: /**
  311. * Specifies which data field contains nested items.
  312. */
  313. function () {
  314. return this._getOption('itemsExpr');
  315. },
  316. set: function (value) {
  317. this._setOption('itemsExpr', value);
  318. },
  319. enumerable: true,
  320. configurable: true
  321. });
  322. Object.defineProperty(DxMenuComponent.prototype, "itemTemplate", {
  323. get: /**
  324. * Specifies a custom template for items.
  325. */
  326. function () {
  327. return this._getOption('itemTemplate');
  328. },
  329. set: function (value) {
  330. this._setOption('itemTemplate', value);
  331. },
  332. enumerable: true,
  333. configurable: true
  334. });
  335. Object.defineProperty(DxMenuComponent.prototype, "orientation", {
  336. get: /**
  337. * Specifies whether the menu has horizontal or vertical orientation.
  338. */
  339. function () {
  340. return this._getOption('orientation');
  341. },
  342. set: function (value) {
  343. this._setOption('orientation', value);
  344. },
  345. enumerable: true,
  346. configurable: true
  347. });
  348. Object.defineProperty(DxMenuComponent.prototype, "rtlEnabled", {
  349. get: /**
  350. * Switches the widget to a right-to-left representation.
  351. */
  352. function () {
  353. return this._getOption('rtlEnabled');
  354. },
  355. set: function (value) {
  356. this._setOption('rtlEnabled', value);
  357. },
  358. enumerable: true,
  359. configurable: true
  360. });
  361. Object.defineProperty(DxMenuComponent.prototype, "selectByClick", {
  362. get: /**
  363. * Specifies whether or not an item becomes selected if a user clicks it.
  364. */
  365. function () {
  366. return this._getOption('selectByClick');
  367. },
  368. set: function (value) {
  369. this._setOption('selectByClick', value);
  370. },
  371. enumerable: true,
  372. configurable: true
  373. });
  374. Object.defineProperty(DxMenuComponent.prototype, "selectedExpr", {
  375. get: /**
  376. * Specifies the name of the data source item field whose value defines whether or not the corresponding widget items is selected.
  377. */
  378. function () {
  379. return this._getOption('selectedExpr');
  380. },
  381. set: function (value) {
  382. this._setOption('selectedExpr', value);
  383. },
  384. enumerable: true,
  385. configurable: true
  386. });
  387. Object.defineProperty(DxMenuComponent.prototype, "selectedItem", {
  388. get: /**
  389. * The selected item object.
  390. */
  391. function () {
  392. return this._getOption('selectedItem');
  393. },
  394. set: function (value) {
  395. this._setOption('selectedItem', value);
  396. },
  397. enumerable: true,
  398. configurable: true
  399. });
  400. Object.defineProperty(DxMenuComponent.prototype, "selectionMode", {
  401. get: /**
  402. * Specifies the selection mode supported by the menu.
  403. */
  404. function () {
  405. return this._getOption('selectionMode');
  406. },
  407. set: function (value) {
  408. this._setOption('selectionMode', value);
  409. },
  410. enumerable: true,
  411. configurable: true
  412. });
  413. Object.defineProperty(DxMenuComponent.prototype, "showFirstSubmenuMode", {
  414. get: /**
  415. * Specifies options for showing and hiding the first level submenu.
  416. */
  417. function () {
  418. return this._getOption('showFirstSubmenuMode');
  419. },
  420. set: function (value) {
  421. this._setOption('showFirstSubmenuMode', value);
  422. },
  423. enumerable: true,
  424. configurable: true
  425. });
  426. Object.defineProperty(DxMenuComponent.prototype, "showSubmenuMode", {
  427. get: /**
  428. * Specifies options of submenu showing and hiding.
  429. */
  430. function () {
  431. return this._getOption('showSubmenuMode');
  432. },
  433. set: function (value) {
  434. this._setOption('showSubmenuMode', value);
  435. },
  436. enumerable: true,
  437. configurable: true
  438. });
  439. Object.defineProperty(DxMenuComponent.prototype, "submenuDirection", {
  440. get: /**
  441. * Specifies the direction at which the submenus are displayed.
  442. */
  443. function () {
  444. return this._getOption('submenuDirection');
  445. },
  446. set: function (value) {
  447. this._setOption('submenuDirection', value);
  448. },
  449. enumerable: true,
  450. configurable: true
  451. });
  452. Object.defineProperty(DxMenuComponent.prototype, "tabIndex", {
  453. get: /**
  454. * Specifies the number of the element when the Tab key is used for navigating.
  455. */
  456. function () {
  457. return this._getOption('tabIndex');
  458. },
  459. set: function (value) {
  460. this._setOption('tabIndex', value);
  461. },
  462. enumerable: true,
  463. configurable: true
  464. });
  465. Object.defineProperty(DxMenuComponent.prototype, "visible", {
  466. get: /**
  467. * Specifies whether the widget is visible.
  468. */
  469. function () {
  470. return this._getOption('visible');
  471. },
  472. set: function (value) {
  473. this._setOption('visible', value);
  474. },
  475. enumerable: true,
  476. configurable: true
  477. });
  478. Object.defineProperty(DxMenuComponent.prototype, "width", {
  479. get: /**
  480. * Specifies the widget's width.
  481. */
  482. function () {
  483. return this._getOption('width');
  484. },
  485. set: function (value) {
  486. this._setOption('width', value);
  487. },
  488. enumerable: true,
  489. configurable: true
  490. });
  491. Object.defineProperty(DxMenuComponent.prototype, "itemsChildren", {
  492. get: function () {
  493. return this._getOption('items');
  494. },
  495. set: function (value) {
  496. this.setChildren('items', value);
  497. },
  498. enumerable: true,
  499. configurable: true
  500. });
  501. DxMenuComponent.prototype._createInstance = function (element, options) {
  502. return new menu_1.default(element, options);
  503. };
  504. DxMenuComponent.prototype.ngOnDestroy = function () {
  505. this._destroyWidget();
  506. };
  507. DxMenuComponent.prototype.ngOnChanges = function (changes) {
  508. _super.prototype.ngOnChanges.call(this, changes);
  509. this.setupChanges('dataSource', changes);
  510. this.setupChanges('items', changes);
  511. };
  512. DxMenuComponent.prototype.setupChanges = function (prop, changes) {
  513. if (!(prop in this._optionsToUpdate)) {
  514. this._idh.setup(prop, changes);
  515. }
  516. };
  517. DxMenuComponent.prototype.ngDoCheck = function () {
  518. this._idh.doCheck('dataSource');
  519. this._idh.doCheck('items');
  520. this._watcherHelper.checkWatchers();
  521. _super.prototype.ngDoCheck.call(this);
  522. _super.prototype.clearChangedOptions.call(this);
  523. };
  524. DxMenuComponent.prototype._setOption = function (name, value) {
  525. var isSetup = this._idh.setupSingle(name, value);
  526. var isChanged = this._idh.getChanges(name, value) !== null;
  527. if (isSetup || isChanged) {
  528. _super.prototype._setOption.call(this, name, value);
  529. }
  530. };
  531. DxMenuComponent.decorators = [
  532. { type: core_1.Component, args: [{
  533. selector: 'dx-menu',
  534. template: '',
  535. providers: [
  536. template_host_1.DxTemplateHost,
  537. watcher_helper_1.WatcherHelper,
  538. nested_option_1.NestedOptionHost,
  539. iterable_differ_helper_1.IterableDifferHelper
  540. ]
  541. },] },
  542. ];
  543. /** @nocollapse */
  544. DxMenuComponent.ctorParameters = function () { return [
  545. { type: core_1.ElementRef, },
  546. { type: core_1.NgZone, },
  547. { type: template_host_1.DxTemplateHost, },
  548. { type: watcher_helper_1.WatcherHelper, },
  549. { type: iterable_differ_helper_1.IterableDifferHelper, },
  550. { type: nested_option_1.NestedOptionHost, },
  551. { type: platform_browser_2.TransferState, },
  552. { type: undefined, decorators: [{ type: core_1.Inject, args: [core_1.PLATFORM_ID,] },] },
  553. ]; };
  554. DxMenuComponent.propDecorators = {
  555. "accessKey": [{ type: core_1.Input },],
  556. "activeStateEnabled": [{ type: core_1.Input },],
  557. "adaptivityEnabled": [{ type: core_1.Input },],
  558. "animation": [{ type: core_1.Input },],
  559. "cssClass": [{ type: core_1.Input },],
  560. "dataSource": [{ type: core_1.Input },],
  561. "disabled": [{ type: core_1.Input },],
  562. "disabledExpr": [{ type: core_1.Input },],
  563. "displayExpr": [{ type: core_1.Input },],
  564. "elementAttr": [{ type: core_1.Input },],
  565. "focusStateEnabled": [{ type: core_1.Input },],
  566. "height": [{ type: core_1.Input },],
  567. "hideSubmenuOnMouseLeave": [{ type: core_1.Input },],
  568. "hint": [{ type: core_1.Input },],
  569. "hoverStateEnabled": [{ type: core_1.Input },],
  570. "items": [{ type: core_1.Input },],
  571. "itemsExpr": [{ type: core_1.Input },],
  572. "itemTemplate": [{ type: core_1.Input },],
  573. "orientation": [{ type: core_1.Input },],
  574. "rtlEnabled": [{ type: core_1.Input },],
  575. "selectByClick": [{ type: core_1.Input },],
  576. "selectedExpr": [{ type: core_1.Input },],
  577. "selectedItem": [{ type: core_1.Input },],
  578. "selectionMode": [{ type: core_1.Input },],
  579. "showFirstSubmenuMode": [{ type: core_1.Input },],
  580. "showSubmenuMode": [{ type: core_1.Input },],
  581. "submenuDirection": [{ type: core_1.Input },],
  582. "tabIndex": [{ type: core_1.Input },],
  583. "visible": [{ type: core_1.Input },],
  584. "width": [{ type: core_1.Input },],
  585. "onContentReady": [{ type: core_1.Output },],
  586. "onDisposing": [{ type: core_1.Output },],
  587. "onInitialized": [{ type: core_1.Output },],
  588. "onItemClick": [{ type: core_1.Output },],
  589. "onItemContextMenu": [{ type: core_1.Output },],
  590. "onItemRendered": [{ type: core_1.Output },],
  591. "onOptionChanged": [{ type: core_1.Output },],
  592. "onSelectionChanged": [{ type: core_1.Output },],
  593. "onSubmenuHidden": [{ type: core_1.Output },],
  594. "onSubmenuHiding": [{ type: core_1.Output },],
  595. "onSubmenuShowing": [{ type: core_1.Output },],
  596. "onSubmenuShown": [{ type: core_1.Output },],
  597. "accessKeyChange": [{ type: core_1.Output },],
  598. "activeStateEnabledChange": [{ type: core_1.Output },],
  599. "adaptivityEnabledChange": [{ type: core_1.Output },],
  600. "animationChange": [{ type: core_1.Output },],
  601. "cssClassChange": [{ type: core_1.Output },],
  602. "dataSourceChange": [{ type: core_1.Output },],
  603. "disabledChange": [{ type: core_1.Output },],
  604. "disabledExprChange": [{ type: core_1.Output },],
  605. "displayExprChange": [{ type: core_1.Output },],
  606. "elementAttrChange": [{ type: core_1.Output },],
  607. "focusStateEnabledChange": [{ type: core_1.Output },],
  608. "heightChange": [{ type: core_1.Output },],
  609. "hideSubmenuOnMouseLeaveChange": [{ type: core_1.Output },],
  610. "hintChange": [{ type: core_1.Output },],
  611. "hoverStateEnabledChange": [{ type: core_1.Output },],
  612. "itemsChange": [{ type: core_1.Output },],
  613. "itemsExprChange": [{ type: core_1.Output },],
  614. "itemTemplateChange": [{ type: core_1.Output },],
  615. "orientationChange": [{ type: core_1.Output },],
  616. "rtlEnabledChange": [{ type: core_1.Output },],
  617. "selectByClickChange": [{ type: core_1.Output },],
  618. "selectedExprChange": [{ type: core_1.Output },],
  619. "selectedItemChange": [{ type: core_1.Output },],
  620. "selectionModeChange": [{ type: core_1.Output },],
  621. "showFirstSubmenuModeChange": [{ type: core_1.Output },],
  622. "showSubmenuModeChange": [{ type: core_1.Output },],
  623. "submenuDirectionChange": [{ type: core_1.Output },],
  624. "tabIndexChange": [{ type: core_1.Output },],
  625. "visibleChange": [{ type: core_1.Output },],
  626. "widthChange": [{ type: core_1.Output },],
  627. "itemsChildren": [{ type: core_1.ContentChildren, args: [item_dxi_2.DxiItemComponent,] },],
  628. };
  629. return DxMenuComponent;
  630. }(component_1.DxComponent));
  631. exports.DxMenuComponent = DxMenuComponent;
  632. var DxMenuModule = (function () {
  633. function DxMenuModule() {
  634. }
  635. DxMenuModule.decorators = [
  636. { type: core_1.NgModule, args: [{
  637. imports: [
  638. animation_1.DxoAnimationModule,
  639. hide_1.DxoHideModule,
  640. show_1.DxoShowModule,
  641. item_dxi_1.DxiItemModule,
  642. show_first_submenu_mode_1.DxoShowFirstSubmenuModeModule,
  643. delay_1.DxoDelayModule,
  644. show_submenu_mode_1.DxoShowSubmenuModeModule,
  645. integration_1.DxIntegrationModule,
  646. template_1.DxTemplateModule,
  647. platform_browser_1.BrowserTransferStateModule
  648. ],
  649. declarations: [
  650. DxMenuComponent
  651. ],
  652. exports: [
  653. DxMenuComponent,
  654. animation_1.DxoAnimationModule,
  655. hide_1.DxoHideModule,
  656. show_1.DxoShowModule,
  657. item_dxi_1.DxiItemModule,
  658. show_first_submenu_mode_1.DxoShowFirstSubmenuModeModule,
  659. delay_1.DxoDelayModule,
  660. show_submenu_mode_1.DxoShowSubmenuModeModule,
  661. template_1.DxTemplateModule
  662. ]
  663. },] },
  664. ];
  665. return DxMenuModule;
  666. }());
  667. exports.DxMenuModule = DxMenuModule;
  668. //# sourceMappingURL=menu.js.map