tab-panel.js 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618
  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 tab_panel_1 = require("devextreme/ui/tab_panel");
  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 item_dxi_1 = require("./nested/item-dxi");
  37. var item_dxi_2 = require("./nested/item-dxi");
  38. /**
  39. * The TabPanel is a widget consisting of the Tabs and MultiView widgets. It automatically synchronizes the selected tab with the currently displayed view and vice versa.
  40. */
  41. var DxTabPanelComponent = (function (_super) {
  42. __extends(DxTabPanelComponent, _super);
  43. function DxTabPanelComponent(elementRef, ngZone, templateHost, _watcherHelper, _idh, optionHost, transferState, platformId) {
  44. var _this = _super.call(this, elementRef, ngZone, templateHost, _watcherHelper, transferState, platformId) || this;
  45. _this._watcherHelper = _watcherHelper;
  46. _this._idh = _idh;
  47. _this._createEventEmitters([
  48. { subscribe: 'contentReady', emit: 'onContentReady' },
  49. { subscribe: 'disposing', emit: 'onDisposing' },
  50. { subscribe: 'initialized', emit: 'onInitialized' },
  51. { subscribe: 'itemClick', emit: 'onItemClick' },
  52. { subscribe: 'itemContextMenu', emit: 'onItemContextMenu' },
  53. { subscribe: 'itemHold', emit: 'onItemHold' },
  54. { subscribe: 'itemRendered', emit: 'onItemRendered' },
  55. { subscribe: 'optionChanged', emit: 'onOptionChanged' },
  56. { subscribe: 'selectionChanged', emit: 'onSelectionChanged' },
  57. { subscribe: 'titleClick', emit: 'onTitleClick' },
  58. { subscribe: 'titleHold', emit: 'onTitleHold' },
  59. { subscribe: 'titleRendered', emit: 'onTitleRendered' },
  60. { emit: 'accessKeyChange' },
  61. { emit: 'activeStateEnabledChange' },
  62. { emit: 'animationEnabledChange' },
  63. { emit: 'dataSourceChange' },
  64. { emit: 'deferRenderingChange' },
  65. { emit: 'disabledChange' },
  66. { emit: 'elementAttrChange' },
  67. { emit: 'focusStateEnabledChange' },
  68. { emit: 'heightChange' },
  69. { emit: 'hintChange' },
  70. { emit: 'hoverStateEnabledChange' },
  71. { emit: 'itemHoldTimeoutChange' },
  72. { emit: 'itemsChange' },
  73. { emit: 'itemTemplateChange' },
  74. { emit: 'itemTitleTemplateChange' },
  75. { emit: 'loopChange' },
  76. { emit: 'noDataTextChange' },
  77. { emit: 'repaintChangesOnlyChange' },
  78. { emit: 'rtlEnabledChange' },
  79. { emit: 'scrollByContentChange' },
  80. { emit: 'scrollingEnabledChange' },
  81. { emit: 'selectedIndexChange' },
  82. { emit: 'selectedItemChange' },
  83. { emit: 'showNavButtonsChange' },
  84. { emit: 'swipeEnabledChange' },
  85. { emit: 'tabIndexChange' },
  86. { emit: 'visibleChange' },
  87. { emit: 'widthChange' }
  88. ]);
  89. _this._idh.setHost(_this);
  90. optionHost.setHost(_this);
  91. return _this;
  92. }
  93. Object.defineProperty(DxTabPanelComponent.prototype, "accessKey", {
  94. get: /**
  95. * Specifies the shortcut key that sets focus on the widget.
  96. */
  97. function () {
  98. return this._getOption('accessKey');
  99. },
  100. set: function (value) {
  101. this._setOption('accessKey', value);
  102. },
  103. enumerable: true,
  104. configurable: true
  105. });
  106. Object.defineProperty(DxTabPanelComponent.prototype, "activeStateEnabled", {
  107. get: /**
  108. * Specifies whether or not the widget changes its state when interacting with a user.
  109. */
  110. function () {
  111. return this._getOption('activeStateEnabled');
  112. },
  113. set: function (value) {
  114. this._setOption('activeStateEnabled', value);
  115. },
  116. enumerable: true,
  117. configurable: true
  118. });
  119. Object.defineProperty(DxTabPanelComponent.prototype, "animationEnabled", {
  120. get: /**
  121. * Specifies whether or not to animate the displayed item change.
  122. */
  123. function () {
  124. return this._getOption('animationEnabled');
  125. },
  126. set: function (value) {
  127. this._setOption('animationEnabled', value);
  128. },
  129. enumerable: true,
  130. configurable: true
  131. });
  132. Object.defineProperty(DxTabPanelComponent.prototype, "dataSource", {
  133. get: /**
  134. * Binds the widget to data.
  135. */
  136. function () {
  137. return this._getOption('dataSource');
  138. },
  139. set: function (value) {
  140. this._setOption('dataSource', value);
  141. },
  142. enumerable: true,
  143. configurable: true
  144. });
  145. Object.defineProperty(DxTabPanelComponent.prototype, "deferRendering", {
  146. get: /**
  147. * Specifies whether to render the view's content when it is displayed. If false, the content is rendered immediately.
  148. */
  149. function () {
  150. return this._getOption('deferRendering');
  151. },
  152. set: function (value) {
  153. this._setOption('deferRendering', value);
  154. },
  155. enumerable: true,
  156. configurable: true
  157. });
  158. Object.defineProperty(DxTabPanelComponent.prototype, "disabled", {
  159. get: /**
  160. * Specifies whether the widget responds to user interaction.
  161. */
  162. function () {
  163. return this._getOption('disabled');
  164. },
  165. set: function (value) {
  166. this._setOption('disabled', value);
  167. },
  168. enumerable: true,
  169. configurable: true
  170. });
  171. Object.defineProperty(DxTabPanelComponent.prototype, "elementAttr", {
  172. get: /**
  173. * Specifies the attributes to be attached to the widget's root element.
  174. */
  175. function () {
  176. return this._getOption('elementAttr');
  177. },
  178. set: function (value) {
  179. this._setOption('elementAttr', value);
  180. },
  181. enumerable: true,
  182. configurable: true
  183. });
  184. Object.defineProperty(DxTabPanelComponent.prototype, "focusStateEnabled", {
  185. get: /**
  186. * Specifies whether the widget can be focused using keyboard navigation.
  187. */
  188. function () {
  189. return this._getOption('focusStateEnabled');
  190. },
  191. set: function (value) {
  192. this._setOption('focusStateEnabled', value);
  193. },
  194. enumerable: true,
  195. configurable: true
  196. });
  197. Object.defineProperty(DxTabPanelComponent.prototype, "height", {
  198. get: /**
  199. * Specifies the widget's height.
  200. */
  201. function () {
  202. return this._getOption('height');
  203. },
  204. set: function (value) {
  205. this._setOption('height', value);
  206. },
  207. enumerable: true,
  208. configurable: true
  209. });
  210. Object.defineProperty(DxTabPanelComponent.prototype, "hint", {
  211. get: /**
  212. * Specifies text for a hint that appears when a user pauses on the widget.
  213. */
  214. function () {
  215. return this._getOption('hint');
  216. },
  217. set: function (value) {
  218. this._setOption('hint', value);
  219. },
  220. enumerable: true,
  221. configurable: true
  222. });
  223. Object.defineProperty(DxTabPanelComponent.prototype, "hoverStateEnabled", {
  224. get: /**
  225. * Specifies whether the widget changes its state when a user pauses on it.
  226. */
  227. function () {
  228. return this._getOption('hoverStateEnabled');
  229. },
  230. set: function (value) {
  231. this._setOption('hoverStateEnabled', value);
  232. },
  233. enumerable: true,
  234. configurable: true
  235. });
  236. Object.defineProperty(DxTabPanelComponent.prototype, "itemHoldTimeout", {
  237. get: /**
  238. * The time period in milliseconds before the onItemHold event is raised.
  239. */
  240. function () {
  241. return this._getOption('itemHoldTimeout');
  242. },
  243. set: function (value) {
  244. this._setOption('itemHoldTimeout', value);
  245. },
  246. enumerable: true,
  247. configurable: true
  248. });
  249. Object.defineProperty(DxTabPanelComponent.prototype, "items", {
  250. get: /**
  251. * An array of items displayed by the widget.
  252. */
  253. function () {
  254. return this._getOption('items');
  255. },
  256. set: function (value) {
  257. this._setOption('items', value);
  258. },
  259. enumerable: true,
  260. configurable: true
  261. });
  262. Object.defineProperty(DxTabPanelComponent.prototype, "itemTemplate", {
  263. get: /**
  264. * Specifies a custom template for items.
  265. */
  266. function () {
  267. return this._getOption('itemTemplate');
  268. },
  269. set: function (value) {
  270. this._setOption('itemTemplate', value);
  271. },
  272. enumerable: true,
  273. configurable: true
  274. });
  275. Object.defineProperty(DxTabPanelComponent.prototype, "itemTitleTemplate", {
  276. get: /**
  277. * Specifies a custom template for item titles.
  278. */
  279. function () {
  280. return this._getOption('itemTitleTemplate');
  281. },
  282. set: function (value) {
  283. this._setOption('itemTitleTemplate', value);
  284. },
  285. enumerable: true,
  286. configurable: true
  287. });
  288. Object.defineProperty(DxTabPanelComponent.prototype, "loop", {
  289. get: /**
  290. * A Boolean value specifying whether or not to scroll back to the first item after the last item is swiped.
  291. */
  292. function () {
  293. return this._getOption('loop');
  294. },
  295. set: function (value) {
  296. this._setOption('loop', value);
  297. },
  298. enumerable: true,
  299. configurable: true
  300. });
  301. Object.defineProperty(DxTabPanelComponent.prototype, "noDataText", {
  302. get: /**
  303. * The text or HTML markup displayed by the widget if the item collection is empty.
  304. */
  305. function () {
  306. return this._getOption('noDataText');
  307. },
  308. set: function (value) {
  309. this._setOption('noDataText', value);
  310. },
  311. enumerable: true,
  312. configurable: true
  313. });
  314. Object.defineProperty(DxTabPanelComponent.prototype, "repaintChangesOnly", {
  315. get: /**
  316. * Specifies whether to repaint only those elements whose data changed.
  317. */
  318. function () {
  319. return this._getOption('repaintChangesOnly');
  320. },
  321. set: function (value) {
  322. this._setOption('repaintChangesOnly', value);
  323. },
  324. enumerable: true,
  325. configurable: true
  326. });
  327. Object.defineProperty(DxTabPanelComponent.prototype, "rtlEnabled", {
  328. get: /**
  329. * Switches the widget to a right-to-left representation.
  330. */
  331. function () {
  332. return this._getOption('rtlEnabled');
  333. },
  334. set: function (value) {
  335. this._setOption('rtlEnabled', value);
  336. },
  337. enumerable: true,
  338. configurable: true
  339. });
  340. Object.defineProperty(DxTabPanelComponent.prototype, "scrollByContent", {
  341. get: /**
  342. * A Boolean value specifying if tabs in the title are scrolled by content.
  343. */
  344. function () {
  345. return this._getOption('scrollByContent');
  346. },
  347. set: function (value) {
  348. this._setOption('scrollByContent', value);
  349. },
  350. enumerable: true,
  351. configurable: true
  352. });
  353. Object.defineProperty(DxTabPanelComponent.prototype, "scrollingEnabled", {
  354. get: /**
  355. * A Boolean indicating whether or not to add scrolling support for tabs in the title.
  356. */
  357. function () {
  358. return this._getOption('scrollingEnabled');
  359. },
  360. set: function (value) {
  361. this._setOption('scrollingEnabled', value);
  362. },
  363. enumerable: true,
  364. configurable: true
  365. });
  366. Object.defineProperty(DxTabPanelComponent.prototype, "selectedIndex", {
  367. get: /**
  368. * The index of the currently displayed item.
  369. */
  370. function () {
  371. return this._getOption('selectedIndex');
  372. },
  373. set: function (value) {
  374. this._setOption('selectedIndex', value);
  375. },
  376. enumerable: true,
  377. configurable: true
  378. });
  379. Object.defineProperty(DxTabPanelComponent.prototype, "selectedItem", {
  380. get: /**
  381. * The selected item object.
  382. */
  383. function () {
  384. return this._getOption('selectedItem');
  385. },
  386. set: function (value) {
  387. this._setOption('selectedItem', value);
  388. },
  389. enumerable: true,
  390. configurable: true
  391. });
  392. Object.defineProperty(DxTabPanelComponent.prototype, "showNavButtons", {
  393. get: /**
  394. * Specifies whether navigation buttons should be available when tabs exceed the widget's width.
  395. */
  396. function () {
  397. return this._getOption('showNavButtons');
  398. },
  399. set: function (value) {
  400. this._setOption('showNavButtons', value);
  401. },
  402. enumerable: true,
  403. configurable: true
  404. });
  405. Object.defineProperty(DxTabPanelComponent.prototype, "swipeEnabled", {
  406. get: /**
  407. * A Boolean value specifying whether or not to allow users to change the selected index by swiping.
  408. */
  409. function () {
  410. return this._getOption('swipeEnabled');
  411. },
  412. set: function (value) {
  413. this._setOption('swipeEnabled', value);
  414. },
  415. enumerable: true,
  416. configurable: true
  417. });
  418. Object.defineProperty(DxTabPanelComponent.prototype, "tabIndex", {
  419. get: /**
  420. * Specifies the number of the element when the Tab key is used for navigating.
  421. */
  422. function () {
  423. return this._getOption('tabIndex');
  424. },
  425. set: function (value) {
  426. this._setOption('tabIndex', value);
  427. },
  428. enumerable: true,
  429. configurable: true
  430. });
  431. Object.defineProperty(DxTabPanelComponent.prototype, "visible", {
  432. get: /**
  433. * Specifies whether the widget is visible.
  434. */
  435. function () {
  436. return this._getOption('visible');
  437. },
  438. set: function (value) {
  439. this._setOption('visible', value);
  440. },
  441. enumerable: true,
  442. configurable: true
  443. });
  444. Object.defineProperty(DxTabPanelComponent.prototype, "width", {
  445. get: /**
  446. * Specifies the widget's width.
  447. */
  448. function () {
  449. return this._getOption('width');
  450. },
  451. set: function (value) {
  452. this._setOption('width', value);
  453. },
  454. enumerable: true,
  455. configurable: true
  456. });
  457. Object.defineProperty(DxTabPanelComponent.prototype, "itemsChildren", {
  458. get: function () {
  459. return this._getOption('items');
  460. },
  461. set: function (value) {
  462. this.setChildren('items', value);
  463. },
  464. enumerable: true,
  465. configurable: true
  466. });
  467. DxTabPanelComponent.prototype._createInstance = function (element, options) {
  468. return new tab_panel_1.default(element, options);
  469. };
  470. DxTabPanelComponent.prototype.ngOnDestroy = function () {
  471. this._destroyWidget();
  472. };
  473. DxTabPanelComponent.prototype.ngOnChanges = function (changes) {
  474. _super.prototype.ngOnChanges.call(this, changes);
  475. this.setupChanges('dataSource', changes);
  476. this.setupChanges('items', changes);
  477. };
  478. DxTabPanelComponent.prototype.setupChanges = function (prop, changes) {
  479. if (!(prop in this._optionsToUpdate)) {
  480. this._idh.setup(prop, changes);
  481. }
  482. };
  483. DxTabPanelComponent.prototype.ngDoCheck = function () {
  484. this._idh.doCheck('dataSource');
  485. this._idh.doCheck('items');
  486. this._watcherHelper.checkWatchers();
  487. _super.prototype.ngDoCheck.call(this);
  488. _super.prototype.clearChangedOptions.call(this);
  489. };
  490. DxTabPanelComponent.prototype._setOption = function (name, value) {
  491. var isSetup = this._idh.setupSingle(name, value);
  492. var isChanged = this._idh.getChanges(name, value) !== null;
  493. if (isSetup || isChanged) {
  494. _super.prototype._setOption.call(this, name, value);
  495. }
  496. };
  497. DxTabPanelComponent.decorators = [
  498. { type: core_1.Component, args: [{
  499. selector: 'dx-tab-panel',
  500. template: '',
  501. providers: [
  502. template_host_1.DxTemplateHost,
  503. watcher_helper_1.WatcherHelper,
  504. nested_option_1.NestedOptionHost,
  505. iterable_differ_helper_1.IterableDifferHelper
  506. ]
  507. },] },
  508. ];
  509. /** @nocollapse */
  510. DxTabPanelComponent.ctorParameters = function () { return [
  511. { type: core_1.ElementRef, },
  512. { type: core_1.NgZone, },
  513. { type: template_host_1.DxTemplateHost, },
  514. { type: watcher_helper_1.WatcherHelper, },
  515. { type: iterable_differ_helper_1.IterableDifferHelper, },
  516. { type: nested_option_1.NestedOptionHost, },
  517. { type: platform_browser_2.TransferState, },
  518. { type: undefined, decorators: [{ type: core_1.Inject, args: [core_1.PLATFORM_ID,] },] },
  519. ]; };
  520. DxTabPanelComponent.propDecorators = {
  521. "accessKey": [{ type: core_1.Input },],
  522. "activeStateEnabled": [{ type: core_1.Input },],
  523. "animationEnabled": [{ type: core_1.Input },],
  524. "dataSource": [{ type: core_1.Input },],
  525. "deferRendering": [{ type: core_1.Input },],
  526. "disabled": [{ type: core_1.Input },],
  527. "elementAttr": [{ type: core_1.Input },],
  528. "focusStateEnabled": [{ type: core_1.Input },],
  529. "height": [{ type: core_1.Input },],
  530. "hint": [{ type: core_1.Input },],
  531. "hoverStateEnabled": [{ type: core_1.Input },],
  532. "itemHoldTimeout": [{ type: core_1.Input },],
  533. "items": [{ type: core_1.Input },],
  534. "itemTemplate": [{ type: core_1.Input },],
  535. "itemTitleTemplate": [{ type: core_1.Input },],
  536. "loop": [{ type: core_1.Input },],
  537. "noDataText": [{ type: core_1.Input },],
  538. "repaintChangesOnly": [{ type: core_1.Input },],
  539. "rtlEnabled": [{ type: core_1.Input },],
  540. "scrollByContent": [{ type: core_1.Input },],
  541. "scrollingEnabled": [{ type: core_1.Input },],
  542. "selectedIndex": [{ type: core_1.Input },],
  543. "selectedItem": [{ type: core_1.Input },],
  544. "showNavButtons": [{ type: core_1.Input },],
  545. "swipeEnabled": [{ type: core_1.Input },],
  546. "tabIndex": [{ type: core_1.Input },],
  547. "visible": [{ type: core_1.Input },],
  548. "width": [{ type: core_1.Input },],
  549. "onContentReady": [{ type: core_1.Output },],
  550. "onDisposing": [{ type: core_1.Output },],
  551. "onInitialized": [{ type: core_1.Output },],
  552. "onItemClick": [{ type: core_1.Output },],
  553. "onItemContextMenu": [{ type: core_1.Output },],
  554. "onItemHold": [{ type: core_1.Output },],
  555. "onItemRendered": [{ type: core_1.Output },],
  556. "onOptionChanged": [{ type: core_1.Output },],
  557. "onSelectionChanged": [{ type: core_1.Output },],
  558. "onTitleClick": [{ type: core_1.Output },],
  559. "onTitleHold": [{ type: core_1.Output },],
  560. "onTitleRendered": [{ type: core_1.Output },],
  561. "accessKeyChange": [{ type: core_1.Output },],
  562. "activeStateEnabledChange": [{ type: core_1.Output },],
  563. "animationEnabledChange": [{ type: core_1.Output },],
  564. "dataSourceChange": [{ type: core_1.Output },],
  565. "deferRenderingChange": [{ type: core_1.Output },],
  566. "disabledChange": [{ type: core_1.Output },],
  567. "elementAttrChange": [{ type: core_1.Output },],
  568. "focusStateEnabledChange": [{ type: core_1.Output },],
  569. "heightChange": [{ type: core_1.Output },],
  570. "hintChange": [{ type: core_1.Output },],
  571. "hoverStateEnabledChange": [{ type: core_1.Output },],
  572. "itemHoldTimeoutChange": [{ type: core_1.Output },],
  573. "itemsChange": [{ type: core_1.Output },],
  574. "itemTemplateChange": [{ type: core_1.Output },],
  575. "itemTitleTemplateChange": [{ type: core_1.Output },],
  576. "loopChange": [{ type: core_1.Output },],
  577. "noDataTextChange": [{ type: core_1.Output },],
  578. "repaintChangesOnlyChange": [{ type: core_1.Output },],
  579. "rtlEnabledChange": [{ type: core_1.Output },],
  580. "scrollByContentChange": [{ type: core_1.Output },],
  581. "scrollingEnabledChange": [{ type: core_1.Output },],
  582. "selectedIndexChange": [{ type: core_1.Output },],
  583. "selectedItemChange": [{ type: core_1.Output },],
  584. "showNavButtonsChange": [{ type: core_1.Output },],
  585. "swipeEnabledChange": [{ type: core_1.Output },],
  586. "tabIndexChange": [{ type: core_1.Output },],
  587. "visibleChange": [{ type: core_1.Output },],
  588. "widthChange": [{ type: core_1.Output },],
  589. "itemsChildren": [{ type: core_1.ContentChildren, args: [item_dxi_2.DxiItemComponent,] },],
  590. };
  591. return DxTabPanelComponent;
  592. }(component_1.DxComponent));
  593. exports.DxTabPanelComponent = DxTabPanelComponent;
  594. var DxTabPanelModule = (function () {
  595. function DxTabPanelModule() {
  596. }
  597. DxTabPanelModule.decorators = [
  598. { type: core_1.NgModule, args: [{
  599. imports: [
  600. item_dxi_1.DxiItemModule,
  601. integration_1.DxIntegrationModule,
  602. template_1.DxTemplateModule,
  603. platform_browser_1.BrowserTransferStateModule
  604. ],
  605. declarations: [
  606. DxTabPanelComponent
  607. ],
  608. exports: [
  609. DxTabPanelComponent,
  610. item_dxi_1.DxiItemModule,
  611. template_1.DxTemplateModule
  612. ]
  613. },] },
  614. ];
  615. return DxTabPanelModule;
  616. }());
  617. exports.DxTabPanelModule = DxTabPanelModule;
  618. //# sourceMappingURL=tab-panel.js.map