@limetech/lime-elements 35.0.0-next.9 → 35.0.1-next.2
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.
- package/dist/cjs/{_arrayIncludesWith-36a6fafb.js → _arrayIncludesWith-29083f83.js} +5 -4
- package/dist/cjs/{_assignValue-c9fc3712.js → _assignValue-7c18d8d6.js} +1 -1
- package/dist/cjs/_defineProperty-8f56146d.js +13 -0
- package/dist/cjs/{_defineProperty-8351e789.js → _getNative-60328036.js} +0 -9
- package/dist/cjs/checkbox.template-b6c6562c.js +43 -0
- package/dist/cjs/{component-f7ef9087.js → component-66df95e7.js} +190 -132
- package/dist/cjs/{component-f532119f.js → component-67144c1c.js} +47 -3
- package/dist/cjs/{component-ed21410d.js → component-ae3bfacf.js} +367 -235
- package/dist/cjs/{component-2faaa141.js → component-cf490570.js} +213 -143
- package/dist/cjs/{component-10dbdd60.js → component-dd795ff0.js} +7 -5
- package/dist/cjs/{dateFormatter-26eac73a.js → dateFormatter-05d80b12.js} +37 -31
- package/dist/cjs/identity-6dc34885.js +44 -0
- package/dist/cjs/{index-e63a89d7.js → index-2a28697b.js} +27 -1
- package/dist/cjs/{isEqual-e3b9c27c.js → isEqual-d2a13a24.js} +13 -55
- package/dist/cjs/lime-elements.cjs.js +3 -3
- package/dist/cjs/limel-badge.cjs.entry.js +4 -4
- package/dist/cjs/limel-banner.cjs.entry.js +2 -2
- package/dist/cjs/limel-button-group.cjs.entry.js +3 -3
- package/dist/cjs/limel-button.cjs.entry.js +3 -3
- package/dist/cjs/limel-checkbox.cjs.entry.js +136 -90
- package/dist/cjs/limel-chip-set.cjs.entry.js +235 -191
- package/dist/cjs/limel-circular-progress.cjs.entry.js +3 -3
- package/dist/cjs/limel-code-editor.cjs.entry.js +51 -24
- package/dist/cjs/limel-collapsible-section.cjs.entry.js +2 -2
- package/dist/cjs/limel-color-picker-palette_2.cjs.entry.js +7 -6
- package/dist/cjs/limel-color-picker.cjs.entry.js +2 -2
- package/dist/cjs/limel-config.cjs.entry.js +2 -2
- package/dist/cjs/limel-date-picker.cjs.entry.js +8 -8
- package/dist/cjs/limel-dialog.cjs.entry.js +35 -19
- package/dist/cjs/limel-file.cjs.entry.js +11 -9
- package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +987 -669
- package/dist/cjs/limel-flex-container.cjs.entry.js +6 -2
- package/dist/cjs/limel-form.cjs.entry.js +19985 -20009
- package/dist/cjs/limel-grid.cjs.entry.js +2 -2
- package/dist/cjs/limel-header.cjs.entry.js +2 -2
- package/dist/cjs/limel-icon-button.cjs.entry.js +6 -6
- package/dist/cjs/limel-icon.cjs.entry.js +2 -2
- package/dist/cjs/limel-input-field.cjs.entry.js +12 -10
- package/dist/cjs/limel-linear-progress.cjs.entry.js +4 -4
- package/dist/cjs/limel-list_3.cjs.entry.js +154 -91
- package/dist/cjs/limel-menu-list.cjs.entry.js +87 -74
- package/dist/cjs/limel-menu.cjs.entry.js +6 -5
- package/dist/cjs/limel-picker.cjs.entry.js +6 -8
- package/dist/cjs/limel-popover-surface.cjs.entry.js +3 -3
- package/dist/cjs/limel-progress-flow-item.cjs.entry.js +2 -2
- package/dist/cjs/limel-progress-flow.cjs.entry.js +2 -2
- package/dist/cjs/limel-select.cjs.entry.js +6 -6
- package/dist/cjs/limel-slider.cjs.entry.js +34 -7
- package/dist/cjs/limel-snackbar.cjs.entry.js +79 -73
- package/dist/cjs/limel-spinner.cjs.entry.js +2 -2
- package/dist/cjs/limel-switch.cjs.entry.js +498 -202
- package/dist/cjs/limel-tab-bar.cjs.entry.js +269 -190
- package/dist/cjs/limel-tab-panel.cjs.entry.js +2 -2
- package/dist/cjs/limel-table.cjs.entry.js +79 -17
- package/dist/cjs/limel-tooltip_2.cjs.entry.js +3 -3
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{moment-d287c0ed.js → moment-5cfac5cd.js} +94 -79
- package/dist/cjs/{pickBy-88b0430a.js → pickBy-3ef47bf2.js} +6 -5
- package/dist/cjs/{zipObject-4050a45f.js → zipObject-93a471fa.js} +1 -1
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/badge/badge.css +9 -15
- package/dist/collection/components/badge/badge.js +2 -2
- package/dist/collection/components/button/button.css +333 -145
- package/dist/collection/components/button-group/button-group.css +30 -5
- package/dist/collection/components/checkbox/checkbox.css +71 -20
- package/dist/collection/components/checkbox/checkbox.js +5 -4
- package/dist/collection/components/checkbox/checkbox.template.js +24 -20
- package/dist/collection/components/chip-set/chip-set.css +367 -34
- package/dist/collection/components/circular-progress/circular-progress.css +2 -2
- package/dist/collection/components/code-editor/code-editor.css +8 -13
- package/dist/collection/components/date-picker/flatpickr-adapter/flatpickr-adapter.css +1 -1
- package/dist/collection/components/dialog/dialog.css +153 -109
- package/dist/collection/components/dialog/dialog.js +36 -11
- package/dist/collection/components/file/icon-background-colors.js +2 -1
- package/dist/collection/components/file/icon-fill-colors.js +2 -1
- package/dist/collection/components/file/icons.js +1 -1
- package/dist/collection/components/flex-container/flex-container.js +10 -0
- package/dist/collection/components/form/fields/schema-field.js +0 -1
- package/dist/collection/components/form/form.css +5 -1
- package/dist/collection/components/form/form.js +34 -0
- package/dist/collection/components/form/form.types.js +0 -1
- package/dist/collection/components/form/templates/common.js +4 -1
- package/dist/collection/components/icon-button/icon-button.css +116 -59
- package/dist/collection/components/icon-button/icon-button.js +1 -0
- package/dist/collection/components/input-field/input-field.css +344 -29
- package/dist/collection/components/input-field/input-field.js +5 -3
- package/dist/collection/components/linear-progress/linear-progress.css +14 -2
- package/dist/collection/components/list/list-renderer.js +1 -4
- package/dist/collection/components/list/list.css +938 -93
- package/dist/collection/components/list/list.js +13 -6
- package/dist/collection/components/menu-list/menu-list-renderer.js +1 -4
- package/dist/collection/components/menu-list/menu-list.css +938 -93
- package/dist/collection/components/menu-surface/menu-surface.css +31 -7
- package/dist/collection/components/picker/picker.js +6 -7
- package/dist/collection/components/popover-surface/popover-surface.css +1 -0
- package/dist/collection/components/select/select.css +424 -17
- package/dist/collection/components/select/select.template.js +1 -1
- package/dist/collection/components/slider/slider.css +49 -2
- package/dist/collection/components/snackbar/snackbar.css +588 -301
- package/dist/collection/components/switch/switch.css +592 -222
- package/dist/collection/components/switch/switch.js +18 -12
- package/dist/collection/components/tab-bar/tab-bar.css +77 -48
- package/dist/collection/components/table/table.css +219 -165
- package/dist/collection/components/table/table.js +99 -15
- package/dist/collection/components/table/table.types.js +0 -1
- package/dist/collection/style/functions.scss +3 -1
- package/dist/collection/style/internal/lime-theme.scss +30 -31
- package/dist/collection/style/internal/lime-typography.scss +55 -56
- package/dist/esm/{_arrayIncludesWith-b5d3fd9e.js → _arrayIncludesWith-969bccda.js} +4 -3
- package/dist/esm/{_assignValue-08fe10bc.js → _assignValue-fb2bf80a.js} +1 -1
- package/dist/esm/_defineProperty-2105cb48.js +11 -0
- package/dist/esm/{_defineProperty-8c869077.js → _getNative-93d6bfe9.js} +1 -9
- package/dist/esm/checkbox.template-2f1bbc98.js +41 -0
- package/dist/esm/{component-89e0ce26.js → component-19eb6e2b.js} +7 -5
- package/dist/esm/{component-2630c3d7.js → component-288691f3.js} +367 -235
- package/dist/esm/{component-d682c974.js → component-410aad5a.js} +44 -4
- package/dist/esm/{component-429e92ee.js → component-5b4ac85a.js} +213 -143
- package/dist/esm/{component-834d85a1.js → component-fffa3419.js} +190 -132
- package/dist/esm/{dateFormatter-c9b41548.js → dateFormatter-2cad0292.js} +37 -31
- package/dist/esm/identity-87aa3962.js +41 -0
- package/dist/esm/{index-2316f345.js → index-11cd0b60.js} +27 -1
- package/dist/esm/{isArrayLike-dd37ba9a.js → isArrayLike-385e0f31.js} +1 -1
- package/dist/esm/{isEqual-4f22635f.js → isEqual-c5a636a4.js} +3 -43
- package/dist/esm/lime-elements.js +3 -3
- package/dist/esm/limel-badge.entry.js +4 -4
- package/dist/esm/limel-banner.entry.js +2 -2
- package/dist/esm/limel-button-group.entry.js +3 -3
- package/dist/esm/limel-button.entry.js +3 -3
- package/dist/esm/limel-checkbox.entry.js +136 -90
- package/dist/esm/limel-chip-set.entry.js +235 -191
- package/dist/esm/limel-circular-progress.entry.js +3 -3
- package/dist/esm/limel-code-editor.entry.js +51 -24
- package/dist/esm/limel-collapsible-section.entry.js +2 -2
- package/dist/esm/limel-color-picker-palette_2.entry.js +7 -6
- package/dist/esm/limel-color-picker.entry.js +2 -2
- package/dist/esm/limel-config.entry.js +2 -2
- package/dist/esm/limel-date-picker.entry.js +8 -8
- package/dist/esm/limel-dialog.entry.js +35 -19
- package/dist/esm/limel-file.entry.js +11 -9
- package/dist/esm/limel-flatpickr-adapter.entry.js +988 -670
- package/dist/esm/limel-flex-container.entry.js +6 -2
- package/dist/esm/limel-form.entry.js +19966 -19990
- package/dist/esm/limel-grid.entry.js +2 -2
- package/dist/esm/limel-header.entry.js +2 -2
- package/dist/esm/limel-icon-button.entry.js +6 -6
- package/dist/esm/limel-icon.entry.js +2 -2
- package/dist/esm/limel-input-field.entry.js +12 -10
- package/dist/esm/limel-linear-progress.entry.js +4 -4
- package/dist/esm/limel-list_3.entry.js +154 -91
- package/dist/esm/limel-menu-list.entry.js +87 -74
- package/dist/esm/limel-menu.entry.js +6 -5
- package/dist/esm/limel-picker.entry.js +6 -8
- package/dist/esm/limel-popover-surface.entry.js +3 -3
- package/dist/esm/limel-progress-flow-item.entry.js +2 -2
- package/dist/esm/limel-progress-flow.entry.js +2 -2
- package/dist/esm/limel-select.entry.js +6 -6
- package/dist/esm/limel-slider.entry.js +34 -7
- package/dist/esm/limel-snackbar.entry.js +79 -73
- package/dist/esm/limel-spinner.entry.js +2 -2
- package/dist/esm/limel-switch.entry.js +498 -202
- package/dist/esm/limel-tab-bar.entry.js +269 -190
- package/dist/esm/limel-tab-panel.entry.js +2 -2
- package/dist/esm/limel-table.entry.js +80 -18
- package/dist/esm/limel-tooltip_2.entry.js +3 -3
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{moment-8dadd938.js → moment-367e51c5.js} +94 -79
- package/dist/esm/{pickBy-8a849e46.js → pickBy-d359eb12.js} +4 -3
- package/dist/esm/polyfills/css-shim.js +1 -1
- package/dist/esm/{zipObject-22e88ce9.js → zipObject-2bb1968e.js} +1 -1
- package/dist/lime-elements/lime-elements.esm.js +1 -1
- package/dist/lime-elements/p-101af376.entry.js +1 -0
- package/dist/lime-elements/p-1a9a961a.entry.js +11 -0
- package/dist/lime-elements/p-1c284626.js +73 -0
- package/dist/lime-elements/p-1ede893b.js +1 -0
- package/dist/lime-elements/p-2639edf9.entry.js +73 -0
- package/dist/lime-elements/p-2754e134.entry.js +1 -0
- package/dist/lime-elements/p-2da6e2a3.entry.js +1 -0
- package/dist/lime-elements/p-36ecbd03.entry.js +1 -0
- package/dist/lime-elements/p-3af5f9ad.js +3 -0
- package/dist/lime-elements/p-404e1465.entry.js +1 -0
- package/dist/lime-elements/p-42b67933.entry.js +1 -0
- package/dist/lime-elements/p-440454ed.entry.js +1 -0
- package/dist/lime-elements/{p-076bd4dc.js → p-48d4ef20.js} +3 -3
- package/dist/lime-elements/p-4c3358cb.js +1 -0
- package/dist/lime-elements/p-4d5a874a.entry.js +1 -0
- package/dist/lime-elements/p-53e01330.entry.js +1 -0
- package/dist/lime-elements/p-5908c21d.entry.js +1 -0
- package/dist/lime-elements/p-5fdb83c9.js +1 -0
- package/dist/lime-elements/p-63e25a0a.entry.js +1 -0
- package/dist/lime-elements/p-669626e5.js +1 -0
- package/dist/lime-elements/p-6966b5df.entry.js +1 -0
- package/dist/lime-elements/p-6e7809a6.entry.js +1 -0
- package/dist/lime-elements/p-705334c1.entry.js +1 -0
- package/dist/lime-elements/p-71efe2ca.entry.js +37 -0
- package/dist/lime-elements/p-7cda574b.js +1 -0
- package/dist/lime-elements/p-83ea517b.entry.js +1 -0
- package/dist/lime-elements/p-84f933f7.entry.js +16 -0
- package/dist/lime-elements/p-8827628d.entry.js +131 -0
- package/dist/lime-elements/{p-8ad5e143.entry.js → p-94899019.entry.js} +1 -1
- package/dist/lime-elements/p-95f275ab.entry.js +1 -0
- package/dist/lime-elements/p-97d6c4a6.entry.js +1 -0
- package/dist/lime-elements/{p-7f43b0c4.js → p-9acf7b5d.js} +1 -1
- package/dist/lime-elements/p-a465084b.entry.js +82 -0
- package/dist/lime-elements/p-a5af84a7.entry.js +1 -0
- package/dist/lime-elements/p-ad8cb388.js +1 -0
- package/dist/lime-elements/p-ade76f1d.js +1 -0
- package/dist/lime-elements/p-af0ec482.entry.js +16 -0
- package/dist/lime-elements/{p-090bc949.js → p-b28128d2.js} +1 -1
- package/dist/lime-elements/p-b91dc1ef.entry.js +1 -0
- package/dist/lime-elements/p-b95e80c9.entry.js +1 -0
- package/dist/lime-elements/p-bd8c9384.entry.js +1 -0
- package/dist/lime-elements/p-c7953a05.entry.js +82 -0
- package/dist/lime-elements/p-c80acfb2.entry.js +59 -0
- package/dist/lime-elements/p-cbc43682.js +81 -0
- package/dist/lime-elements/{p-ace9affc.js → p-d0a7de87.js} +2 -2
- package/dist/lime-elements/p-d1ee4501.entry.js +37 -0
- package/dist/lime-elements/p-d74fa89e.entry.js +1 -0
- package/dist/lime-elements/{p-e1928c0e.js → p-d76f896d.js} +1 -1
- package/dist/lime-elements/p-dfba92de.js +126 -0
- package/dist/lime-elements/p-dfbe015e.entry.js +1 -0
- package/dist/lime-elements/p-e80dd2ff.entry.js +1 -0
- package/dist/lime-elements/p-e83dddcd.entry.js +126 -0
- package/dist/lime-elements/p-e98d76e8.entry.js +59 -0
- package/dist/lime-elements/{p-92146da6.js → p-e9a95b8f.js} +1 -1
- package/dist/lime-elements/p-ed65468d.entry.js +1 -0
- package/dist/lime-elements/p-f0c9dadd.entry.js +1 -0
- package/dist/lime-elements/p-f9bfbeb3.entry.js +82 -0
- package/dist/lime-elements/p-fa607ed3.js +1 -0
- package/dist/lime-elements/style/functions.scss +3 -1
- package/dist/lime-elements/style/internal/lime-theme.scss +30 -31
- package/dist/lime-elements/style/internal/lime-typography.scss +55 -56
- package/dist/types/components/badge/badge.d.ts +1 -1
- package/dist/types/components/checkbox/checkbox.d.ts +3 -2
- package/dist/types/components/checkbox/checkbox.template.d.ts +1 -0
- package/dist/types/components/dialog/dialog.d.ts +11 -5
- package/dist/types/components/dialog/dialog.types.d.ts +4 -0
- package/dist/types/components/flex-container/flex-container.d.ts +7 -0
- package/dist/types/components/form/fields/array-field.d.ts +0 -1
- package/dist/types/components/form/fields/object-field.d.ts +2 -2
- package/dist/types/components/form/form.d.ts +8 -1
- package/dist/types/components/form/form.types.d.ts +6 -0
- package/dist/types/components/picker/picker.d.ts +2 -1
- package/dist/types/components/switch/switch.d.ts +2 -2
- package/dist/types/components/table/table.d.ts +10 -1
- package/dist/types/components/table/table.types.d.ts +13 -0
- package/dist/types/components.d.ts +23 -7
- package/dist/types/stencil-public-runtime.d.ts +6 -4
- package/package.json +31 -44
- package/dist/cjs/checkbox.template-50eb8b76.js +0 -39
- package/dist/esm/checkbox.template-50f7c07b.js +0 -37
- package/dist/lime-elements/p-041ae00c.entry.js +0 -1
- package/dist/lime-elements/p-0ce9165f.entry.js +0 -1
- package/dist/lime-elements/p-0fd208f3.entry.js +0 -82
- package/dist/lime-elements/p-143705b1.entry.js +0 -1
- package/dist/lime-elements/p-1876a96a.entry.js +0 -1
- package/dist/lime-elements/p-1a64b531.js +0 -1
- package/dist/lime-elements/p-1fb5340d.entry.js +0 -1
- package/dist/lime-elements/p-250f55be.js +0 -1
- package/dist/lime-elements/p-29f054cc.entry.js +0 -37
- package/dist/lime-elements/p-31fecf5d.entry.js +0 -1
- package/dist/lime-elements/p-34c7872e.entry.js +0 -1
- package/dist/lime-elements/p-379955f4.js +0 -1
- package/dist/lime-elements/p-3ae6bb75.entry.js +0 -82
- package/dist/lime-elements/p-3ae6dfba.entry.js +0 -73
- package/dist/lime-elements/p-426d11b4.js +0 -1
- package/dist/lime-elements/p-440084ea.js +0 -1
- package/dist/lime-elements/p-468e940e.entry.js +0 -16
- package/dist/lime-elements/p-4932c029.entry.js +0 -1
- package/dist/lime-elements/p-4b5af81b.entry.js +0 -1
- package/dist/lime-elements/p-510bb5a4.entry.js +0 -1
- package/dist/lime-elements/p-58cbe99d.entry.js +0 -1
- package/dist/lime-elements/p-597cbe05.entry.js +0 -1
- package/dist/lime-elements/p-6003f817.entry.js +0 -1
- package/dist/lime-elements/p-668795a7.js +0 -73
- package/dist/lime-elements/p-714fde78.entry.js +0 -1
- package/dist/lime-elements/p-7476efe0.entry.js +0 -1
- package/dist/lime-elements/p-887d5bda.entry.js +0 -1
- package/dist/lime-elements/p-8a2c1038.entry.js +0 -16
- package/dist/lime-elements/p-902347b9.js +0 -81
- package/dist/lime-elements/p-90c6fa15.js +0 -126
- package/dist/lime-elements/p-90f3e17c.entry.js +0 -37
- package/dist/lime-elements/p-a2cf74c1.entry.js +0 -1
- package/dist/lime-elements/p-a397bab7.js +0 -3
- package/dist/lime-elements/p-a4c532a7.entry.js +0 -1
- package/dist/lime-elements/p-be56ffab.entry.js +0 -1
- package/dist/lime-elements/p-c306c953.entry.js +0 -1
- package/dist/lime-elements/p-c35874db.entry.js +0 -1
- package/dist/lime-elements/p-c8c8a946.entry.js +0 -59
- package/dist/lime-elements/p-ca664c9f.entry.js +0 -1
- package/dist/lime-elements/p-d2c74396.entry.js +0 -1
- package/dist/lime-elements/p-d48ad9f7.entry.js +0 -126
- package/dist/lime-elements/p-d93a3b07.entry.js +0 -16
- package/dist/lime-elements/p-df8faeb4.entry.js +0 -59
- package/dist/lime-elements/p-dfe0a58b.entry.js +0 -1
- package/dist/lime-elements/p-e275f502.entry.js +0 -37
- package/dist/lime-elements/p-e881e98d.entry.js +0 -1
- package/dist/lime-elements/p-f2c706b8.entry.js +0 -131
- package/dist/lime-elements/p-f83213b8.js +0 -1
- package/dist/lime-elements/p-fc30b8e3.entry.js +0 -1
|
@@ -1,15 +1,17 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, g as getElement } from './index-
|
|
2
|
-
import {
|
|
3
|
-
import { M as MDCFoundation, a as MDCComponent } from './component-
|
|
4
|
-
import { a as applyPassive, b as MDCRippleFoundation, M as MDCRipple } from './component-
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, g as getElement } from './index-11cd0b60.js';
|
|
2
|
+
import { u as baseUnary, f as SetCache, h as cacheHas, i as isEqual } from './isEqual-c5a636a4.js';
|
|
3
|
+
import { M as MDCFoundation, a as MDCComponent } from './component-410aad5a.js';
|
|
4
|
+
import { a as applyPassive, b as MDCRippleFoundation, M as MDCRipple } from './component-5b4ac85a.js';
|
|
5
5
|
import { m as matches } from './ponyfill-30263d5e.js';
|
|
6
|
-
import { a as arrayIncludes, b as arrayIncludesWith, c as baseRest, i as isArrayLikeObject, d as baseFlatten } from './_arrayIncludesWith-
|
|
6
|
+
import { a as arrayIncludes, b as arrayIncludesWith, c as baseRest, i as isArrayLikeObject, d as baseFlatten } from './_arrayIncludesWith-969bccda.js';
|
|
7
|
+
import { a as arrayMap } from './identity-87aa3962.js';
|
|
7
8
|
import './eq-c1c7f528.js';
|
|
8
9
|
import './isObject-c74e273c.js';
|
|
9
|
-
import './
|
|
10
|
+
import './_getNative-93d6bfe9.js';
|
|
10
11
|
import './isArray-80298bc7.js';
|
|
11
12
|
import './isObjectLike-38996507.js';
|
|
12
|
-
import './isArrayLike-
|
|
13
|
+
import './isArrayLike-385e0f31.js';
|
|
14
|
+
import './_defineProperty-2105cb48.js';
|
|
13
15
|
|
|
14
16
|
/** Used as the size to enable large array optimizations. */
|
|
15
17
|
var LARGE_ARRAY_SIZE = 200;
|
|
@@ -137,7 +139,19 @@ var __assign$3 = function() {
|
|
|
137
139
|
return t;
|
|
138
140
|
};
|
|
139
141
|
return __assign$3.apply(this, arguments);
|
|
140
|
-
};
|
|
142
|
+
};
|
|
143
|
+
|
|
144
|
+
function __values(o) {
|
|
145
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
146
|
+
if (m) return m.call(o);
|
|
147
|
+
if (o && typeof o.length === "number") return {
|
|
148
|
+
next: function () {
|
|
149
|
+
if (o && i >= o.length) o = void 0;
|
|
150
|
+
return { value: o && o[i++], done: !o };
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
154
|
+
}
|
|
141
155
|
|
|
142
156
|
/*! *****************************************************************************
|
|
143
157
|
Copyright (c) Microsoft Corporation.
|
|
@@ -288,14 +302,14 @@ var MDCTabScrollerRTLDefault = /** @class */ (function (_super) {
|
|
|
288
302
|
}
|
|
289
303
|
MDCTabScrollerRTLDefault.prototype.getScrollPositionRTL = function () {
|
|
290
304
|
var currentScrollLeft = this.adapter.getScrollAreaScrollLeft();
|
|
291
|
-
var right = this.
|
|
305
|
+
var right = this.calculateScrollEdges().right;
|
|
292
306
|
// Scroll values on most browsers are ints instead of floats so we round
|
|
293
307
|
return Math.round(right - currentScrollLeft);
|
|
294
308
|
};
|
|
295
309
|
MDCTabScrollerRTLDefault.prototype.scrollToRTL = function (scrollX) {
|
|
296
|
-
var edges = this.
|
|
310
|
+
var edges = this.calculateScrollEdges();
|
|
297
311
|
var currentScrollLeft = this.adapter.getScrollAreaScrollLeft();
|
|
298
|
-
var clampedScrollLeft = this.
|
|
312
|
+
var clampedScrollLeft = this.clampScrollValue(edges.right - scrollX);
|
|
299
313
|
return {
|
|
300
314
|
finalScrollPosition: clampedScrollLeft,
|
|
301
315
|
scrollDelta: clampedScrollLeft - currentScrollLeft,
|
|
@@ -303,7 +317,7 @@ var MDCTabScrollerRTLDefault = /** @class */ (function (_super) {
|
|
|
303
317
|
};
|
|
304
318
|
MDCTabScrollerRTLDefault.prototype.incrementScrollRTL = function (scrollX) {
|
|
305
319
|
var currentScrollLeft = this.adapter.getScrollAreaScrollLeft();
|
|
306
|
-
var clampedScrollLeft = this.
|
|
320
|
+
var clampedScrollLeft = this.clampScrollValue(currentScrollLeft - scrollX);
|
|
307
321
|
return {
|
|
308
322
|
finalScrollPosition: clampedScrollLeft,
|
|
309
323
|
scrollDelta: clampedScrollLeft - currentScrollLeft,
|
|
@@ -312,7 +326,7 @@ var MDCTabScrollerRTLDefault = /** @class */ (function (_super) {
|
|
|
312
326
|
MDCTabScrollerRTLDefault.prototype.getAnimatingScrollPosition = function (scrollX) {
|
|
313
327
|
return scrollX;
|
|
314
328
|
};
|
|
315
|
-
MDCTabScrollerRTLDefault.prototype.
|
|
329
|
+
MDCTabScrollerRTLDefault.prototype.calculateScrollEdges = function () {
|
|
316
330
|
var contentWidth = this.adapter.getScrollContentOffsetWidth();
|
|
317
331
|
var rootWidth = this.adapter.getScrollAreaOffsetWidth();
|
|
318
332
|
return {
|
|
@@ -320,8 +334,8 @@ var MDCTabScrollerRTLDefault = /** @class */ (function (_super) {
|
|
|
320
334
|
right: contentWidth - rootWidth,
|
|
321
335
|
};
|
|
322
336
|
};
|
|
323
|
-
MDCTabScrollerRTLDefault.prototype.
|
|
324
|
-
var edges = this.
|
|
337
|
+
MDCTabScrollerRTLDefault.prototype.clampScrollValue = function (scrollX) {
|
|
338
|
+
var edges = this.calculateScrollEdges();
|
|
325
339
|
return Math.min(Math.max(edges.left, scrollX), edges.right);
|
|
326
340
|
};
|
|
327
341
|
return MDCTabScrollerRTLDefault;
|
|
@@ -360,7 +374,7 @@ var MDCTabScrollerRTLNegative = /** @class */ (function (_super) {
|
|
|
360
374
|
};
|
|
361
375
|
MDCTabScrollerRTLNegative.prototype.scrollToRTL = function (scrollX) {
|
|
362
376
|
var currentScrollLeft = this.adapter.getScrollAreaScrollLeft();
|
|
363
|
-
var clampedScrollLeft = this.
|
|
377
|
+
var clampedScrollLeft = this.clampScrollValue(-scrollX);
|
|
364
378
|
return {
|
|
365
379
|
finalScrollPosition: clampedScrollLeft,
|
|
366
380
|
scrollDelta: clampedScrollLeft - currentScrollLeft,
|
|
@@ -368,7 +382,7 @@ var MDCTabScrollerRTLNegative = /** @class */ (function (_super) {
|
|
|
368
382
|
};
|
|
369
383
|
MDCTabScrollerRTLNegative.prototype.incrementScrollRTL = function (scrollX) {
|
|
370
384
|
var currentScrollLeft = this.adapter.getScrollAreaScrollLeft();
|
|
371
|
-
var clampedScrollLeft = this.
|
|
385
|
+
var clampedScrollLeft = this.clampScrollValue(currentScrollLeft - scrollX);
|
|
372
386
|
return {
|
|
373
387
|
finalScrollPosition: clampedScrollLeft,
|
|
374
388
|
scrollDelta: clampedScrollLeft - currentScrollLeft,
|
|
@@ -377,7 +391,7 @@ var MDCTabScrollerRTLNegative = /** @class */ (function (_super) {
|
|
|
377
391
|
MDCTabScrollerRTLNegative.prototype.getAnimatingScrollPosition = function (scrollX, translateX) {
|
|
378
392
|
return scrollX - translateX;
|
|
379
393
|
};
|
|
380
|
-
MDCTabScrollerRTLNegative.prototype.
|
|
394
|
+
MDCTabScrollerRTLNegative.prototype.calculateScrollEdges = function () {
|
|
381
395
|
var contentWidth = this.adapter.getScrollContentOffsetWidth();
|
|
382
396
|
var rootWidth = this.adapter.getScrollAreaOffsetWidth();
|
|
383
397
|
return {
|
|
@@ -385,8 +399,8 @@ var MDCTabScrollerRTLNegative = /** @class */ (function (_super) {
|
|
|
385
399
|
right: 0,
|
|
386
400
|
};
|
|
387
401
|
};
|
|
388
|
-
MDCTabScrollerRTLNegative.prototype.
|
|
389
|
-
var edges = this.
|
|
402
|
+
MDCTabScrollerRTLNegative.prototype.clampScrollValue = function (scrollX) {
|
|
403
|
+
var edges = this.calculateScrollEdges();
|
|
390
404
|
return Math.max(Math.min(edges.right, scrollX), edges.left);
|
|
391
405
|
};
|
|
392
406
|
return MDCTabScrollerRTLNegative;
|
|
@@ -426,7 +440,7 @@ var MDCTabScrollerRTLReverse = /** @class */ (function (_super) {
|
|
|
426
440
|
};
|
|
427
441
|
MDCTabScrollerRTLReverse.prototype.scrollToRTL = function (scrollX) {
|
|
428
442
|
var currentScrollLeft = this.adapter.getScrollAreaScrollLeft();
|
|
429
|
-
var clampedScrollLeft = this.
|
|
443
|
+
var clampedScrollLeft = this.clampScrollValue(scrollX);
|
|
430
444
|
return {
|
|
431
445
|
finalScrollPosition: clampedScrollLeft,
|
|
432
446
|
scrollDelta: currentScrollLeft - clampedScrollLeft,
|
|
@@ -434,7 +448,7 @@ var MDCTabScrollerRTLReverse = /** @class */ (function (_super) {
|
|
|
434
448
|
};
|
|
435
449
|
MDCTabScrollerRTLReverse.prototype.incrementScrollRTL = function (scrollX) {
|
|
436
450
|
var currentScrollLeft = this.adapter.getScrollAreaScrollLeft();
|
|
437
|
-
var clampedScrollLeft = this.
|
|
451
|
+
var clampedScrollLeft = this.clampScrollValue(currentScrollLeft + scrollX);
|
|
438
452
|
return {
|
|
439
453
|
finalScrollPosition: clampedScrollLeft,
|
|
440
454
|
scrollDelta: currentScrollLeft - clampedScrollLeft,
|
|
@@ -443,7 +457,7 @@ var MDCTabScrollerRTLReverse = /** @class */ (function (_super) {
|
|
|
443
457
|
MDCTabScrollerRTLReverse.prototype.getAnimatingScrollPosition = function (scrollX, translateX) {
|
|
444
458
|
return scrollX + translateX;
|
|
445
459
|
};
|
|
446
|
-
MDCTabScrollerRTLReverse.prototype.
|
|
460
|
+
MDCTabScrollerRTLReverse.prototype.calculateScrollEdges = function () {
|
|
447
461
|
var contentWidth = this.adapter.getScrollContentOffsetWidth();
|
|
448
462
|
var rootWidth = this.adapter.getScrollAreaOffsetWidth();
|
|
449
463
|
return {
|
|
@@ -451,8 +465,8 @@ var MDCTabScrollerRTLReverse = /** @class */ (function (_super) {
|
|
|
451
465
|
right: 0,
|
|
452
466
|
};
|
|
453
467
|
};
|
|
454
|
-
MDCTabScrollerRTLReverse.prototype.
|
|
455
|
-
var edges = this.
|
|
468
|
+
MDCTabScrollerRTLReverse.prototype.clampScrollValue = function (scrollX) {
|
|
469
|
+
var edges = this.calculateScrollEdges();
|
|
456
470
|
return Math.min(Math.max(edges.right, scrollX), edges.left);
|
|
457
471
|
};
|
|
458
472
|
return MDCTabScrollerRTLReverse;
|
|
@@ -487,7 +501,7 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
487
501
|
/**
|
|
488
502
|
* Controls whether we should handle the transitionend and interaction events during the animation.
|
|
489
503
|
*/
|
|
490
|
-
_this.
|
|
504
|
+
_this.isAnimating = false;
|
|
491
505
|
return _this;
|
|
492
506
|
}
|
|
493
507
|
Object.defineProperty(MDCTabScrollerFoundation, "cssClasses", {
|
|
@@ -519,8 +533,12 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
519
533
|
getScrollAreaScrollLeft: function () { return 0; },
|
|
520
534
|
getScrollContentOffsetWidth: function () { return 0; },
|
|
521
535
|
getScrollAreaOffsetWidth: function () { return 0; },
|
|
522
|
-
computeScrollAreaClientRect: function () {
|
|
523
|
-
|
|
536
|
+
computeScrollAreaClientRect: function () {
|
|
537
|
+
return ({ top: 0, right: 0, bottom: 0, left: 0, width: 0, height: 0 });
|
|
538
|
+
},
|
|
539
|
+
computeScrollContentClientRect: function () {
|
|
540
|
+
return ({ top: 0, right: 0, bottom: 0, left: 0, width: 0, height: 0 });
|
|
541
|
+
},
|
|
524
542
|
computeHorizontalScrollbarHeight: function () { return 0; },
|
|
525
543
|
};
|
|
526
544
|
// tslint:enable:object-literal-sort-keys
|
|
@@ -539,10 +557,10 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
539
557
|
* Computes the current visual scroll position
|
|
540
558
|
*/
|
|
541
559
|
MDCTabScrollerFoundation.prototype.getScrollPosition = function () {
|
|
542
|
-
if (this.
|
|
543
|
-
return this.
|
|
560
|
+
if (this.isRTL()) {
|
|
561
|
+
return this.computeCurrentScrollPositionRTL();
|
|
544
562
|
}
|
|
545
|
-
var currentTranslateX = this.
|
|
563
|
+
var currentTranslateX = this.calculateCurrentTranslateX();
|
|
546
564
|
var scrollLeft = this.adapter.getScrollAreaScrollLeft();
|
|
547
565
|
return scrollLeft - currentTranslateX;
|
|
548
566
|
};
|
|
@@ -551,11 +569,11 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
551
569
|
*/
|
|
552
570
|
MDCTabScrollerFoundation.prototype.handleInteraction = function () {
|
|
553
571
|
// Early exit if we aren't animating
|
|
554
|
-
if (!this.
|
|
572
|
+
if (!this.isAnimating) {
|
|
555
573
|
return;
|
|
556
574
|
}
|
|
557
575
|
// Prevent other event listeners from handling this event
|
|
558
|
-
this.
|
|
576
|
+
this.stopScrollAnimation();
|
|
559
577
|
};
|
|
560
578
|
/**
|
|
561
579
|
* Handles the transitionend event
|
|
@@ -563,11 +581,11 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
563
581
|
MDCTabScrollerFoundation.prototype.handleTransitionEnd = function (evt) {
|
|
564
582
|
// Early exit if we aren't animating or the event was triggered by a different element.
|
|
565
583
|
var evtTarget = evt.target;
|
|
566
|
-
if (!this.
|
|
584
|
+
if (!this.isAnimating ||
|
|
567
585
|
!this.adapter.eventTargetMatchesSelector(evtTarget, MDCTabScrollerFoundation.strings.CONTENT_SELECTOR)) {
|
|
568
586
|
return;
|
|
569
587
|
}
|
|
570
|
-
this.
|
|
588
|
+
this.isAnimating = false;
|
|
571
589
|
this.adapter.removeClass(MDCTabScrollerFoundation.cssClasses.ANIMATING);
|
|
572
590
|
};
|
|
573
591
|
/**
|
|
@@ -579,7 +597,7 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
579
597
|
if (scrollXIncrement === 0) {
|
|
580
598
|
return;
|
|
581
599
|
}
|
|
582
|
-
this.
|
|
600
|
+
this.animate(this.getIncrementScrollOperation(scrollXIncrement));
|
|
583
601
|
};
|
|
584
602
|
/**
|
|
585
603
|
* Increment the scroll value by the scrollXIncrement without animation.
|
|
@@ -590,35 +608,36 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
590
608
|
if (scrollXIncrement === 0) {
|
|
591
609
|
return;
|
|
592
610
|
}
|
|
593
|
-
var operation = this.
|
|
611
|
+
var operation = this.getIncrementScrollOperation(scrollXIncrement);
|
|
594
612
|
if (operation.scrollDelta === 0) {
|
|
595
613
|
return;
|
|
596
614
|
}
|
|
597
|
-
this.
|
|
615
|
+
this.stopScrollAnimation();
|
|
598
616
|
this.adapter.setScrollAreaScrollLeft(operation.finalScrollPosition);
|
|
599
617
|
};
|
|
600
618
|
/**
|
|
601
619
|
* Scrolls to the given scrollX value
|
|
602
620
|
*/
|
|
603
621
|
MDCTabScrollerFoundation.prototype.scrollTo = function (scrollX) {
|
|
604
|
-
if (this.
|
|
605
|
-
|
|
622
|
+
if (this.isRTL()) {
|
|
623
|
+
this.scrollToImplRTL(scrollX);
|
|
624
|
+
return;
|
|
606
625
|
}
|
|
607
|
-
this.
|
|
626
|
+
this.scrollToImpl(scrollX);
|
|
608
627
|
};
|
|
609
628
|
/**
|
|
610
629
|
* @return Browser-specific {@link MDCTabScrollerRTL} instance.
|
|
611
630
|
*/
|
|
612
631
|
MDCTabScrollerFoundation.prototype.getRTLScroller = function () {
|
|
613
|
-
if (!this.
|
|
614
|
-
this.
|
|
632
|
+
if (!this.rtlScrollerInstance) {
|
|
633
|
+
this.rtlScrollerInstance = this.rtlScrollerFactory();
|
|
615
634
|
}
|
|
616
|
-
return this.
|
|
635
|
+
return this.rtlScrollerInstance;
|
|
617
636
|
};
|
|
618
637
|
/**
|
|
619
638
|
* @return translateX value from a CSS matrix transform function string.
|
|
620
639
|
*/
|
|
621
|
-
MDCTabScrollerFoundation.prototype.
|
|
640
|
+
MDCTabScrollerFoundation.prototype.calculateCurrentTranslateX = function () {
|
|
622
641
|
var transformValue = this.adapter.getScrollContentStyleValue('transform');
|
|
623
642
|
// Early exit if no transform is present
|
|
624
643
|
if (transformValue === 'none') {
|
|
@@ -642,15 +661,15 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
642
661
|
* Calculates a safe scroll value that is > 0 and < the max scroll value
|
|
643
662
|
* @param scrollX The distance to scroll
|
|
644
663
|
*/
|
|
645
|
-
MDCTabScrollerFoundation.prototype.
|
|
646
|
-
var edges = this.
|
|
664
|
+
MDCTabScrollerFoundation.prototype.clampScrollValue = function (scrollX) {
|
|
665
|
+
var edges = this.calculateScrollEdges();
|
|
647
666
|
return Math.min(Math.max(edges.left, scrollX), edges.right);
|
|
648
667
|
};
|
|
649
|
-
MDCTabScrollerFoundation.prototype.
|
|
650
|
-
var translateX = this.
|
|
668
|
+
MDCTabScrollerFoundation.prototype.computeCurrentScrollPositionRTL = function () {
|
|
669
|
+
var translateX = this.calculateCurrentTranslateX();
|
|
651
670
|
return this.getRTLScroller().getScrollPositionRTL(translateX);
|
|
652
671
|
};
|
|
653
|
-
MDCTabScrollerFoundation.prototype.
|
|
672
|
+
MDCTabScrollerFoundation.prototype.calculateScrollEdges = function () {
|
|
654
673
|
var contentWidth = this.adapter.getScrollContentOffsetWidth();
|
|
655
674
|
var rootWidth = this.adapter.getScrollAreaOffsetWidth();
|
|
656
675
|
return {
|
|
@@ -662,11 +681,11 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
662
681
|
* Internal scroll method
|
|
663
682
|
* @param scrollX The new scroll position
|
|
664
683
|
*/
|
|
665
|
-
MDCTabScrollerFoundation.prototype.
|
|
684
|
+
MDCTabScrollerFoundation.prototype.scrollToImpl = function (scrollX) {
|
|
666
685
|
var currentScrollX = this.getScrollPosition();
|
|
667
|
-
var safeScrollX = this.
|
|
686
|
+
var safeScrollX = this.clampScrollValue(scrollX);
|
|
668
687
|
var scrollDelta = safeScrollX - currentScrollX;
|
|
669
|
-
this.
|
|
688
|
+
this.animate({
|
|
670
689
|
finalScrollPosition: safeScrollX,
|
|
671
690
|
scrollDelta: scrollDelta,
|
|
672
691
|
});
|
|
@@ -675,22 +694,22 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
675
694
|
* Internal RTL scroll method
|
|
676
695
|
* @param scrollX The new scroll position
|
|
677
696
|
*/
|
|
678
|
-
MDCTabScrollerFoundation.prototype.
|
|
697
|
+
MDCTabScrollerFoundation.prototype.scrollToImplRTL = function (scrollX) {
|
|
679
698
|
var animation = this.getRTLScroller().scrollToRTL(scrollX);
|
|
680
|
-
this.
|
|
699
|
+
this.animate(animation);
|
|
681
700
|
};
|
|
682
701
|
/**
|
|
683
702
|
* Internal method to compute the increment scroll operation values.
|
|
684
703
|
* @param scrollX The desired scroll position increment
|
|
685
704
|
* @return MDCTabScrollerAnimation with the sanitized values for performing the scroll operation.
|
|
686
705
|
*/
|
|
687
|
-
MDCTabScrollerFoundation.prototype.
|
|
688
|
-
if (this.
|
|
706
|
+
MDCTabScrollerFoundation.prototype.getIncrementScrollOperation = function (scrollX) {
|
|
707
|
+
if (this.isRTL()) {
|
|
689
708
|
return this.getRTLScroller().incrementScrollRTL(scrollX);
|
|
690
709
|
}
|
|
691
710
|
var currentScrollX = this.getScrollPosition();
|
|
692
711
|
var targetScrollX = scrollX + currentScrollX;
|
|
693
|
-
var safeScrollX = this.
|
|
712
|
+
var safeScrollX = this.clampScrollValue(targetScrollX);
|
|
694
713
|
var scrollDelta = safeScrollX - currentScrollX;
|
|
695
714
|
return {
|
|
696
715
|
finalScrollPosition: safeScrollX,
|
|
@@ -701,13 +720,13 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
701
720
|
* Animates the tab scrolling
|
|
702
721
|
* @param animation The animation to apply
|
|
703
722
|
*/
|
|
704
|
-
MDCTabScrollerFoundation.prototype.
|
|
723
|
+
MDCTabScrollerFoundation.prototype.animate = function (animation) {
|
|
705
724
|
var _this = this;
|
|
706
725
|
// Early exit if translateX is 0, which means there's no animation to perform
|
|
707
726
|
if (animation.scrollDelta === 0) {
|
|
708
727
|
return;
|
|
709
728
|
}
|
|
710
|
-
this.
|
|
729
|
+
this.stopScrollAnimation();
|
|
711
730
|
// This animation uses the FLIP approach.
|
|
712
731
|
// Read more here: https://aerotwist.com/blog/flip-your-animations/
|
|
713
732
|
this.adapter.setScrollAreaScrollLeft(animation.finalScrollPosition);
|
|
@@ -718,14 +737,14 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
718
737
|
_this.adapter.addClass(MDCTabScrollerFoundation.cssClasses.ANIMATING);
|
|
719
738
|
_this.adapter.setScrollContentStyleProperty('transform', 'none');
|
|
720
739
|
});
|
|
721
|
-
this.
|
|
740
|
+
this.isAnimating = true;
|
|
722
741
|
};
|
|
723
742
|
/**
|
|
724
743
|
* Stops scroll animation
|
|
725
744
|
*/
|
|
726
|
-
MDCTabScrollerFoundation.prototype.
|
|
727
|
-
this.
|
|
728
|
-
var currentScrollPosition = this.
|
|
745
|
+
MDCTabScrollerFoundation.prototype.stopScrollAnimation = function () {
|
|
746
|
+
this.isAnimating = false;
|
|
747
|
+
var currentScrollPosition = this.getAnimatingScrollPosition();
|
|
729
748
|
this.adapter.removeClass(MDCTabScrollerFoundation.cssClasses.ANIMATING);
|
|
730
749
|
this.adapter.setScrollContentStyleProperty('transform', 'translateX(0px)');
|
|
731
750
|
this.adapter.setScrollAreaScrollLeft(currentScrollPosition);
|
|
@@ -733,10 +752,10 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
733
752
|
/**
|
|
734
753
|
* Gets the current scroll position during animation
|
|
735
754
|
*/
|
|
736
|
-
MDCTabScrollerFoundation.prototype.
|
|
737
|
-
var currentTranslateX = this.
|
|
755
|
+
MDCTabScrollerFoundation.prototype.getAnimatingScrollPosition = function () {
|
|
756
|
+
var currentTranslateX = this.calculateCurrentTranslateX();
|
|
738
757
|
var scrollLeft = this.adapter.getScrollAreaScrollLeft();
|
|
739
|
-
if (this.
|
|
758
|
+
if (this.isRTL()) {
|
|
740
759
|
return this.getRTLScroller().getAnimatingScrollPosition(scrollLeft, currentTranslateX);
|
|
741
760
|
}
|
|
742
761
|
return scrollLeft - currentTranslateX;
|
|
@@ -744,7 +763,7 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
744
763
|
/**
|
|
745
764
|
* Determines the RTL Scroller to use
|
|
746
765
|
*/
|
|
747
|
-
MDCTabScrollerFoundation.prototype.
|
|
766
|
+
MDCTabScrollerFoundation.prototype.rtlScrollerFactory = function () {
|
|
748
767
|
// Browsers have three different implementations of scrollLeft in RTL mode,
|
|
749
768
|
// dependent on the browser. The behavior is based off the max LTR
|
|
750
769
|
// scrollLeft value and 0.
|
|
@@ -787,7 +806,7 @@ var MDCTabScrollerFoundation = /** @class */ (function (_super) {
|
|
|
787
806
|
}
|
|
788
807
|
return new MDCTabScrollerRTLDefault(this.adapter);
|
|
789
808
|
};
|
|
790
|
-
MDCTabScrollerFoundation.prototype.
|
|
809
|
+
MDCTabScrollerFoundation.prototype.isRTL = function () {
|
|
791
810
|
return this.adapter.getScrollContentStyleValue('direction') === 'rtl';
|
|
792
811
|
};
|
|
793
812
|
return MDCTabScrollerFoundation;
|
|
@@ -869,29 +888,34 @@ var MDCTabScroller = /** @class */ (function (_super) {
|
|
|
869
888
|
MDCTabScroller.attachTo = function (root) {
|
|
870
889
|
return new MDCTabScroller(root);
|
|
871
890
|
};
|
|
891
|
+
// initialSyncWithDOM()
|
|
872
892
|
MDCTabScroller.prototype.initialize = function () {
|
|
873
|
-
this.
|
|
874
|
-
this.
|
|
893
|
+
this.area = this.root.querySelector(MDCTabScrollerFoundation.strings.AREA_SELECTOR);
|
|
894
|
+
this.content = this.root.querySelector(MDCTabScrollerFoundation.strings.CONTENT_SELECTOR);
|
|
875
895
|
};
|
|
876
896
|
MDCTabScroller.prototype.initialSyncWithDOM = function () {
|
|
877
897
|
var _this = this;
|
|
878
|
-
this.
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
this.
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
this.
|
|
885
|
-
this.
|
|
898
|
+
this.handleInteraction = function () {
|
|
899
|
+
_this.foundation.handleInteraction();
|
|
900
|
+
};
|
|
901
|
+
this.handleTransitionEnd = function (evt) {
|
|
902
|
+
_this.foundation.handleTransitionEnd(evt);
|
|
903
|
+
};
|
|
904
|
+
this.area.addEventListener('wheel', this.handleInteraction, applyPassive());
|
|
905
|
+
this.area.addEventListener('touchstart', this.handleInteraction, applyPassive());
|
|
906
|
+
this.area.addEventListener('pointerdown', this.handleInteraction, applyPassive());
|
|
907
|
+
this.area.addEventListener('mousedown', this.handleInteraction, applyPassive());
|
|
908
|
+
this.area.addEventListener('keydown', this.handleInteraction, applyPassive());
|
|
909
|
+
this.content.addEventListener('transitionend', this.handleTransitionEnd);
|
|
886
910
|
};
|
|
887
911
|
MDCTabScroller.prototype.destroy = function () {
|
|
888
912
|
_super.prototype.destroy.call(this);
|
|
889
|
-
this.
|
|
890
|
-
this.
|
|
891
|
-
this.
|
|
892
|
-
this.
|
|
893
|
-
this.
|
|
894
|
-
this.
|
|
913
|
+
this.area.removeEventListener('wheel', this.handleInteraction, applyPassive());
|
|
914
|
+
this.area.removeEventListener('touchstart', this.handleInteraction, applyPassive());
|
|
915
|
+
this.area.removeEventListener('pointerdown', this.handleInteraction, applyPassive());
|
|
916
|
+
this.area.removeEventListener('mousedown', this.handleInteraction, applyPassive());
|
|
917
|
+
this.area.removeEventListener('keydown', this.handleInteraction, applyPassive());
|
|
918
|
+
this.content.removeEventListener('transitionend', this.handleTransitionEnd);
|
|
895
919
|
};
|
|
896
920
|
MDCTabScroller.prototype.getDefaultFoundation = function () {
|
|
897
921
|
var _this = this;
|
|
@@ -902,25 +926,31 @@ var MDCTabScroller = /** @class */ (function (_super) {
|
|
|
902
926
|
eventTargetMatchesSelector: function (evtTarget, selector) {
|
|
903
927
|
return matches(evtTarget, selector);
|
|
904
928
|
},
|
|
905
|
-
addClass: function (className) {
|
|
906
|
-
|
|
907
|
-
|
|
929
|
+
addClass: function (className) {
|
|
930
|
+
_this.root.classList.add(className);
|
|
931
|
+
},
|
|
932
|
+
removeClass: function (className) {
|
|
933
|
+
_this.root.classList.remove(className);
|
|
934
|
+
},
|
|
935
|
+
addScrollAreaClass: function (className) {
|
|
936
|
+
_this.area.classList.add(className);
|
|
937
|
+
},
|
|
908
938
|
setScrollAreaStyleProperty: function (prop, value) {
|
|
909
|
-
|
|
939
|
+
_this.area.style.setProperty(prop, value);
|
|
910
940
|
},
|
|
911
941
|
setScrollContentStyleProperty: function (prop, value) {
|
|
912
|
-
|
|
942
|
+
_this.content.style.setProperty(prop, value);
|
|
913
943
|
},
|
|
914
944
|
getScrollContentStyleValue: function (propName) {
|
|
915
|
-
return window.getComputedStyle(_this.
|
|
945
|
+
return window.getComputedStyle(_this.content).getPropertyValue(propName);
|
|
916
946
|
},
|
|
917
|
-
setScrollAreaScrollLeft: function (scrollX) { return _this.
|
|
918
|
-
getScrollAreaScrollLeft: function () { return _this.
|
|
919
|
-
getScrollContentOffsetWidth: function () { return _this.
|
|
920
|
-
getScrollAreaOffsetWidth: function () { return _this.
|
|
921
|
-
computeScrollAreaClientRect: function () { return _this.
|
|
947
|
+
setScrollAreaScrollLeft: function (scrollX) { return _this.area.scrollLeft = scrollX; },
|
|
948
|
+
getScrollAreaScrollLeft: function () { return _this.area.scrollLeft; },
|
|
949
|
+
getScrollContentOffsetWidth: function () { return _this.content.offsetWidth; },
|
|
950
|
+
getScrollAreaOffsetWidth: function () { return _this.area.offsetWidth; },
|
|
951
|
+
computeScrollAreaClientRect: function () { return _this.area.getBoundingClientRect(); },
|
|
922
952
|
computeScrollContentClientRect: function () {
|
|
923
|
-
return _this.
|
|
953
|
+
return _this.content.getBoundingClientRect();
|
|
924
954
|
},
|
|
925
955
|
computeHorizontalScrollbarHeight: function () {
|
|
926
956
|
return computeHorizontalScrollbarHeight(document);
|
|
@@ -939,7 +969,7 @@ var MDCTabScroller = /** @class */ (function (_super) {
|
|
|
939
969
|
* Returns the width of the scroll content
|
|
940
970
|
*/
|
|
941
971
|
MDCTabScroller.prototype.getScrollContentWidth = function () {
|
|
942
|
-
return this.
|
|
972
|
+
return this.content.offsetWidth;
|
|
943
973
|
};
|
|
944
974
|
/**
|
|
945
975
|
* Increments the scroll value by the given amount
|
|
@@ -1120,7 +1150,9 @@ var MDCTabIndicatorFoundation = /** @class */ (function (_super) {
|
|
|
1120
1150
|
return {
|
|
1121
1151
|
addClass: function () { return undefined; },
|
|
1122
1152
|
removeClass: function () { return undefined; },
|
|
1123
|
-
computeContentClientRect: function () {
|
|
1153
|
+
computeContentClientRect: function () {
|
|
1154
|
+
return ({ top: 0, right: 0, bottom: 0, left: 0, width: 0, height: 0 });
|
|
1155
|
+
},
|
|
1124
1156
|
setContentStyleProperty: function () { return undefined; },
|
|
1125
1157
|
};
|
|
1126
1158
|
// tslint:enable:object-literal-sort-keys
|
|
@@ -1257,7 +1289,7 @@ var MDCTabIndicator = /** @class */ (function (_super) {
|
|
|
1257
1289
|
return new MDCTabIndicator(root);
|
|
1258
1290
|
};
|
|
1259
1291
|
MDCTabIndicator.prototype.initialize = function () {
|
|
1260
|
-
this.
|
|
1292
|
+
this.content = this.root.querySelector(MDCTabIndicatorFoundation.strings.CONTENT_SELECTOR);
|
|
1261
1293
|
};
|
|
1262
1294
|
MDCTabIndicator.prototype.computeContentClientRect = function () {
|
|
1263
1295
|
return this.foundation.computeContentClientRect();
|
|
@@ -1270,9 +1302,9 @@ var MDCTabIndicator = /** @class */ (function (_super) {
|
|
|
1270
1302
|
var adapter = {
|
|
1271
1303
|
addClass: function (className) { return _this.root.classList.add(className); },
|
|
1272
1304
|
removeClass: function (className) { return _this.root.classList.remove(className); },
|
|
1273
|
-
computeContentClientRect: function () { return _this.
|
|
1305
|
+
computeContentClientRect: function () { return _this.content.getBoundingClientRect(); },
|
|
1274
1306
|
setContentStyleProperty: function (prop, value) {
|
|
1275
|
-
|
|
1307
|
+
_this.content.style.setProperty(prop, value);
|
|
1276
1308
|
},
|
|
1277
1309
|
};
|
|
1278
1310
|
// tslint:enable:object-literal-sort-keys
|
|
@@ -1351,7 +1383,7 @@ var MDCTabFoundation = /** @class */ (function (_super) {
|
|
|
1351
1383
|
__extends$1(MDCTabFoundation, _super);
|
|
1352
1384
|
function MDCTabFoundation(adapter) {
|
|
1353
1385
|
var _this = _super.call(this, __assign$1(__assign$1({}, MDCTabFoundation.defaultAdapter), adapter)) || this;
|
|
1354
|
-
_this.
|
|
1386
|
+
_this.focusOnActivate = true;
|
|
1355
1387
|
return _this;
|
|
1356
1388
|
}
|
|
1357
1389
|
Object.defineProperty(MDCTabFoundation, "cssClasses", {
|
|
@@ -1402,7 +1434,7 @@ var MDCTabFoundation = /** @class */ (function (_super) {
|
|
|
1402
1434
|
* Sets whether the tab should focus itself when activated
|
|
1403
1435
|
*/
|
|
1404
1436
|
MDCTabFoundation.prototype.setFocusOnActivate = function (focusOnActivate) {
|
|
1405
|
-
this.
|
|
1437
|
+
this.focusOnActivate = focusOnActivate;
|
|
1406
1438
|
};
|
|
1407
1439
|
/**
|
|
1408
1440
|
* Activates the Tab
|
|
@@ -1412,7 +1444,7 @@ var MDCTabFoundation = /** @class */ (function (_super) {
|
|
|
1412
1444
|
this.adapter.setAttr(strings$2.ARIA_SELECTED, 'true');
|
|
1413
1445
|
this.adapter.setAttr(strings$2.TABINDEX, '0');
|
|
1414
1446
|
this.adapter.activateIndicator(previousIndicatorClientRect);
|
|
1415
|
-
if (this.
|
|
1447
|
+
if (this.focusOnActivate) {
|
|
1416
1448
|
this.adapter.focus();
|
|
1417
1449
|
}
|
|
1418
1450
|
};
|
|
@@ -1482,19 +1514,21 @@ var MDCTab = /** @class */ (function (_super) {
|
|
|
1482
1514
|
if (tabIndicatorFactory === void 0) { tabIndicatorFactory = function (el) { return new MDCTabIndicator(el); }; }
|
|
1483
1515
|
this.id = this.root.id;
|
|
1484
1516
|
var rippleFoundation = new MDCRippleFoundation(MDCRipple.createAdapter(this));
|
|
1485
|
-
this.
|
|
1517
|
+
this.ripple = rippleFactory(this.root, rippleFoundation);
|
|
1486
1518
|
var tabIndicatorElement = this.root.querySelector(MDCTabFoundation.strings.TAB_INDICATOR_SELECTOR);
|
|
1487
|
-
this.
|
|
1488
|
-
this.
|
|
1519
|
+
this.tabIndicator = tabIndicatorFactory(tabIndicatorElement);
|
|
1520
|
+
this.content = this.root.querySelector(MDCTabFoundation.strings.CONTENT_SELECTOR);
|
|
1489
1521
|
};
|
|
1490
1522
|
MDCTab.prototype.initialSyncWithDOM = function () {
|
|
1491
1523
|
var _this = this;
|
|
1492
|
-
this.
|
|
1493
|
-
|
|
1524
|
+
this.handleClick = function () {
|
|
1525
|
+
_this.foundation.handleClick();
|
|
1526
|
+
};
|
|
1527
|
+
this.listen('click', this.handleClick);
|
|
1494
1528
|
};
|
|
1495
1529
|
MDCTab.prototype.destroy = function () {
|
|
1496
|
-
this.unlisten('click', this.
|
|
1497
|
-
this.
|
|
1530
|
+
this.unlisten('click', this.handleClick);
|
|
1531
|
+
this.ripple.destroy();
|
|
1498
1532
|
_super.prototype.destroy.call(this);
|
|
1499
1533
|
};
|
|
1500
1534
|
MDCTab.prototype.getDefaultFoundation = function () {
|
|
@@ -1508,14 +1542,16 @@ var MDCTab = /** @class */ (function (_super) {
|
|
|
1508
1542
|
removeClass: function (className) { return _this.root.classList.remove(className); },
|
|
1509
1543
|
hasClass: function (className) { return _this.root.classList.contains(className); },
|
|
1510
1544
|
activateIndicator: function (previousIndicatorClientRect) {
|
|
1511
|
-
|
|
1545
|
+
_this.tabIndicator.activate(previousIndicatorClientRect);
|
|
1546
|
+
},
|
|
1547
|
+
deactivateIndicator: function () {
|
|
1548
|
+
_this.tabIndicator.deactivate();
|
|
1512
1549
|
},
|
|
1513
|
-
deactivateIndicator: function () { return _this.tabIndicator_.deactivate(); },
|
|
1514
1550
|
notifyInteracted: function () { return _this.emit(MDCTabFoundation.strings.INTERACTED_EVENT, { tabId: _this.id }, true /* bubble */); },
|
|
1515
1551
|
getOffsetLeft: function () { return _this.root.offsetLeft; },
|
|
1516
1552
|
getOffsetWidth: function () { return _this.root.offsetWidth; },
|
|
1517
|
-
getContentOffsetLeft: function () { return _this.
|
|
1518
|
-
getContentOffsetWidth: function () { return _this.
|
|
1553
|
+
getContentOffsetLeft: function () { return _this.content.offsetLeft; },
|
|
1554
|
+
getContentOffsetWidth: function () { return _this.content.offsetWidth; },
|
|
1519
1555
|
focus: function () { return _this.root.focus(); },
|
|
1520
1556
|
};
|
|
1521
1557
|
// tslint:enable:object-literal-sort-keys
|
|
@@ -1554,7 +1590,7 @@ var MDCTab = /** @class */ (function (_super) {
|
|
|
1554
1590
|
* Returns the indicator's client rect
|
|
1555
1591
|
*/
|
|
1556
1592
|
MDCTab.prototype.computeIndicatorClientRect = function () {
|
|
1557
|
-
return this.
|
|
1593
|
+
return this.tabIndicator.computeContentClientRect();
|
|
1558
1594
|
};
|
|
1559
1595
|
MDCTab.prototype.computeDimensions = function () {
|
|
1560
1596
|
return this.foundation.computeDimensions();
|
|
@@ -1653,7 +1689,7 @@ var MDCTabBarFoundation = /** @class */ (function (_super) {
|
|
|
1653
1689
|
__extends$3(MDCTabBarFoundation, _super);
|
|
1654
1690
|
function MDCTabBarFoundation(adapter) {
|
|
1655
1691
|
var _this = _super.call(this, __assign$3(__assign$3({}, MDCTabBarFoundation.defaultAdapter), adapter)) || this;
|
|
1656
|
-
_this.
|
|
1692
|
+
_this.useAutomaticActivation = false;
|
|
1657
1693
|
return _this;
|
|
1658
1694
|
}
|
|
1659
1695
|
Object.defineProperty(MDCTabBarFoundation, "strings", {
|
|
@@ -1684,8 +1720,12 @@ var MDCTabBarFoundation = /** @class */ (function (_super) {
|
|
|
1684
1720
|
activateTabAtIndex: function () { return undefined; },
|
|
1685
1721
|
deactivateTabAtIndex: function () { return undefined; },
|
|
1686
1722
|
focusTabAtIndex: function () { return undefined; },
|
|
1687
|
-
getTabIndicatorClientRectAtIndex: function () {
|
|
1688
|
-
|
|
1723
|
+
getTabIndicatorClientRectAtIndex: function () {
|
|
1724
|
+
return ({ top: 0, right: 0, bottom: 0, left: 0, width: 0, height: 0 });
|
|
1725
|
+
},
|
|
1726
|
+
getTabDimensionsAtIndex: function () {
|
|
1727
|
+
return ({ rootLeft: 0, rootRight: 0, contentLeft: 0, contentRight: 0 });
|
|
1728
|
+
},
|
|
1689
1729
|
getPreviousActiveTabIndex: function () { return -1; },
|
|
1690
1730
|
getFocusedTabIndex: function () { return -1; },
|
|
1691
1731
|
getIndexOfTabById: function () { return -1; },
|
|
@@ -1702,11 +1742,11 @@ var MDCTabBarFoundation = /** @class */ (function (_super) {
|
|
|
1702
1742
|
* See https://www.w3.org/TR/wai-aria-practices/#tabpanel for examples.
|
|
1703
1743
|
*/
|
|
1704
1744
|
MDCTabBarFoundation.prototype.setUseAutomaticActivation = function (useAutomaticActivation) {
|
|
1705
|
-
this.
|
|
1745
|
+
this.useAutomaticActivation = useAutomaticActivation;
|
|
1706
1746
|
};
|
|
1707
1747
|
MDCTabBarFoundation.prototype.activateTab = function (index) {
|
|
1708
1748
|
var previousActiveIndex = this.adapter.getPreviousActiveTabIndex();
|
|
1709
|
-
if (!this.
|
|
1749
|
+
if (!this.indexIsInRange(index) || index === previousActiveIndex) {
|
|
1710
1750
|
return;
|
|
1711
1751
|
}
|
|
1712
1752
|
var previousClientRect;
|
|
@@ -1721,30 +1761,30 @@ var MDCTabBarFoundation = /** @class */ (function (_super) {
|
|
|
1721
1761
|
};
|
|
1722
1762
|
MDCTabBarFoundation.prototype.handleKeyDown = function (evt) {
|
|
1723
1763
|
// Get the key from the event
|
|
1724
|
-
var key = this.
|
|
1764
|
+
var key = this.getKeyFromEvent(evt);
|
|
1725
1765
|
// Early exit if the event key isn't one of the keyboard navigation keys
|
|
1726
1766
|
if (key === undefined) {
|
|
1727
1767
|
return;
|
|
1728
1768
|
}
|
|
1729
1769
|
// Prevent default behavior for movement keys, but not for activation keys, since :active is used to apply ripple
|
|
1730
|
-
if (!this.
|
|
1770
|
+
if (!this.isActivationKey(key)) {
|
|
1731
1771
|
evt.preventDefault();
|
|
1732
1772
|
}
|
|
1733
|
-
if (this.
|
|
1734
|
-
if (this.
|
|
1773
|
+
if (this.useAutomaticActivation) {
|
|
1774
|
+
if (this.isActivationKey(key)) {
|
|
1735
1775
|
return;
|
|
1736
1776
|
}
|
|
1737
|
-
var index = this.
|
|
1777
|
+
var index = this.determineTargetFromKey(this.adapter.getPreviousActiveTabIndex(), key);
|
|
1738
1778
|
this.adapter.setActiveTab(index);
|
|
1739
1779
|
this.scrollIntoView(index);
|
|
1740
1780
|
}
|
|
1741
1781
|
else {
|
|
1742
1782
|
var focusedTabIndex = this.adapter.getFocusedTabIndex();
|
|
1743
|
-
if (this.
|
|
1783
|
+
if (this.isActivationKey(key)) {
|
|
1744
1784
|
this.adapter.setActiveTab(focusedTabIndex);
|
|
1745
1785
|
}
|
|
1746
1786
|
else {
|
|
1747
|
-
var index = this.
|
|
1787
|
+
var index = this.determineTargetFromKey(focusedTabIndex, key);
|
|
1748
1788
|
this.adapter.focusTabAtIndex(index);
|
|
1749
1789
|
this.scrollIntoView(index);
|
|
1750
1790
|
}
|
|
@@ -1762,30 +1802,33 @@ var MDCTabBarFoundation = /** @class */ (function (_super) {
|
|
|
1762
1802
|
*/
|
|
1763
1803
|
MDCTabBarFoundation.prototype.scrollIntoView = function (index) {
|
|
1764
1804
|
// Early exit if the index is out of range
|
|
1765
|
-
if (!this.
|
|
1805
|
+
if (!this.indexIsInRange(index)) {
|
|
1766
1806
|
return;
|
|
1767
1807
|
}
|
|
1768
1808
|
// Always scroll to 0 if scrolling to the 0th index
|
|
1769
1809
|
if (index === 0) {
|
|
1770
|
-
|
|
1810
|
+
this.adapter.scrollTo(0);
|
|
1811
|
+
return;
|
|
1771
1812
|
}
|
|
1772
1813
|
// Always scroll to the max value if scrolling to the Nth index
|
|
1773
1814
|
// MDCTabScroller.scrollTo() will never scroll past the max possible value
|
|
1774
1815
|
if (index === this.adapter.getTabListLength() - 1) {
|
|
1775
|
-
|
|
1816
|
+
this.adapter.scrollTo(this.adapter.getScrollContentWidth());
|
|
1817
|
+
return;
|
|
1776
1818
|
}
|
|
1777
|
-
if (this.
|
|
1778
|
-
|
|
1819
|
+
if (this.isRTL()) {
|
|
1820
|
+
this.scrollIntoViewImplRTL(index);
|
|
1821
|
+
return;
|
|
1779
1822
|
}
|
|
1780
|
-
this.
|
|
1823
|
+
this.scrollIntoViewImpl(index);
|
|
1781
1824
|
};
|
|
1782
1825
|
/**
|
|
1783
1826
|
* Private method for determining the index of the destination tab based on what key was pressed
|
|
1784
1827
|
* @param origin The original index from which to determine the destination
|
|
1785
1828
|
* @param key The name of the key
|
|
1786
1829
|
*/
|
|
1787
|
-
MDCTabBarFoundation.prototype.
|
|
1788
|
-
var isRTL = this.
|
|
1830
|
+
MDCTabBarFoundation.prototype.determineTargetFromKey = function (origin, key) {
|
|
1831
|
+
var isRTL = this.isRTL();
|
|
1789
1832
|
var maxIndex = this.adapter.getTabListLength() - 1;
|
|
1790
1833
|
var shouldGoToEnd = key === strings$1.END_KEY;
|
|
1791
1834
|
var shouldDecrement = key === strings$1.ARROW_LEFT_KEY && !isRTL || key === strings$1.ARROW_RIGHT_KEY && isRTL;
|
|
@@ -1818,7 +1861,7 @@ var MDCTabBarFoundation = /** @class */ (function (_super) {
|
|
|
1818
1861
|
* @param scrollPosition The current scroll position
|
|
1819
1862
|
* @param barWidth The width of the Tab Bar
|
|
1820
1863
|
*/
|
|
1821
|
-
MDCTabBarFoundation.prototype.
|
|
1864
|
+
MDCTabBarFoundation.prototype.calculateScrollIncrement = function (index, nextIndex, scrollPosition, barWidth) {
|
|
1822
1865
|
var nextTabDimensions = this.adapter.getTabDimensionsAtIndex(nextIndex);
|
|
1823
1866
|
var relativeContentLeft = nextTabDimensions.contentLeft - scrollPosition - barWidth;
|
|
1824
1867
|
var relativeContentRight = nextTabDimensions.contentRight - scrollPosition;
|
|
@@ -1837,7 +1880,7 @@ var MDCTabBarFoundation = /** @class */ (function (_super) {
|
|
|
1837
1880
|
* @param barWidth The width of the Tab Bar
|
|
1838
1881
|
* @param scrollContentWidth The width of the scroll content
|
|
1839
1882
|
*/
|
|
1840
|
-
MDCTabBarFoundation.prototype.
|
|
1883
|
+
MDCTabBarFoundation.prototype.calculateScrollIncrementRTL = function (index, nextIndex, scrollPosition, barWidth, scrollContentWidth) {
|
|
1841
1884
|
var nextTabDimensions = this.adapter.getTabDimensionsAtIndex(nextIndex);
|
|
1842
1885
|
var relativeContentLeft = scrollContentWidth - nextTabDimensions.contentLeft - scrollPosition;
|
|
1843
1886
|
var relativeContentRight = scrollContentWidth - nextTabDimensions.contentRight - scrollPosition - barWidth;
|
|
@@ -1855,7 +1898,7 @@ var MDCTabBarFoundation = /** @class */ (function (_super) {
|
|
|
1855
1898
|
* @param scrollPosition The current scroll position
|
|
1856
1899
|
* @param barWidth The width of the tab bar
|
|
1857
1900
|
*/
|
|
1858
|
-
MDCTabBarFoundation.prototype.
|
|
1901
|
+
MDCTabBarFoundation.prototype.findAdjacentTabIndexClosestToEdge = function (index, tabDimensions, scrollPosition, barWidth) {
|
|
1859
1902
|
/**
|
|
1860
1903
|
* Tabs are laid out in the Tab Scroller like this:
|
|
1861
1904
|
*
|
|
@@ -1901,7 +1944,7 @@ var MDCTabBarFoundation = /** @class */ (function (_super) {
|
|
|
1901
1944
|
* @param barWidth The width of the tab bar
|
|
1902
1945
|
* @param scrollContentWidth The width of the scroller content
|
|
1903
1946
|
*/
|
|
1904
|
-
MDCTabBarFoundation.prototype.
|
|
1947
|
+
MDCTabBarFoundation.prototype.findAdjacentTabIndexClosestToEdgeRTL = function (index, tabDimensions, scrollPosition, barWidth, scrollContentWidth) {
|
|
1905
1948
|
var rootLeft = scrollContentWidth - tabDimensions.rootLeft - barWidth - scrollPosition;
|
|
1906
1949
|
var rootRight = scrollContentWidth - tabDimensions.rootRight - scrollPosition;
|
|
1907
1950
|
var rootDelta = rootLeft + rootRight;
|
|
@@ -1919,57 +1962,57 @@ var MDCTabBarFoundation = /** @class */ (function (_super) {
|
|
|
1919
1962
|
* Returns the key associated with a keydown event
|
|
1920
1963
|
* @param evt The keydown event
|
|
1921
1964
|
*/
|
|
1922
|
-
MDCTabBarFoundation.prototype.
|
|
1965
|
+
MDCTabBarFoundation.prototype.getKeyFromEvent = function (evt) {
|
|
1923
1966
|
if (ACCEPTABLE_KEYS.has(evt.key)) {
|
|
1924
1967
|
return evt.key;
|
|
1925
1968
|
}
|
|
1926
1969
|
return KEYCODE_MAP.get(evt.keyCode);
|
|
1927
1970
|
};
|
|
1928
|
-
MDCTabBarFoundation.prototype.
|
|
1971
|
+
MDCTabBarFoundation.prototype.isActivationKey = function (key) {
|
|
1929
1972
|
return key === strings$1.SPACE_KEY || key === strings$1.ENTER_KEY;
|
|
1930
1973
|
};
|
|
1931
1974
|
/**
|
|
1932
1975
|
* Returns whether a given index is inclusively between the ends
|
|
1933
1976
|
* @param index The index to test
|
|
1934
1977
|
*/
|
|
1935
|
-
MDCTabBarFoundation.prototype.
|
|
1978
|
+
MDCTabBarFoundation.prototype.indexIsInRange = function (index) {
|
|
1936
1979
|
return index >= 0 && index < this.adapter.getTabListLength();
|
|
1937
1980
|
};
|
|
1938
1981
|
/**
|
|
1939
1982
|
* Returns the view's RTL property
|
|
1940
1983
|
*/
|
|
1941
|
-
MDCTabBarFoundation.prototype.
|
|
1984
|
+
MDCTabBarFoundation.prototype.isRTL = function () {
|
|
1942
1985
|
return this.adapter.isRTL();
|
|
1943
1986
|
};
|
|
1944
1987
|
/**
|
|
1945
1988
|
* Scrolls the tab at the given index into view for left-to-right user agents.
|
|
1946
1989
|
* @param index The index of the tab to scroll into view
|
|
1947
1990
|
*/
|
|
1948
|
-
MDCTabBarFoundation.prototype.
|
|
1991
|
+
MDCTabBarFoundation.prototype.scrollIntoViewImpl = function (index) {
|
|
1949
1992
|
var scrollPosition = this.adapter.getScrollPosition();
|
|
1950
1993
|
var barWidth = this.adapter.getOffsetWidth();
|
|
1951
1994
|
var tabDimensions = this.adapter.getTabDimensionsAtIndex(index);
|
|
1952
|
-
var nextIndex = this.
|
|
1953
|
-
if (!this.
|
|
1995
|
+
var nextIndex = this.findAdjacentTabIndexClosestToEdge(index, tabDimensions, scrollPosition, barWidth);
|
|
1996
|
+
if (!this.indexIsInRange(nextIndex)) {
|
|
1954
1997
|
return;
|
|
1955
1998
|
}
|
|
1956
|
-
var scrollIncrement = this.
|
|
1999
|
+
var scrollIncrement = this.calculateScrollIncrement(index, nextIndex, scrollPosition, barWidth);
|
|
1957
2000
|
this.adapter.incrementScroll(scrollIncrement);
|
|
1958
2001
|
};
|
|
1959
2002
|
/**
|
|
1960
2003
|
* Scrolls the tab at the given index into view in RTL
|
|
1961
2004
|
* @param index The tab index to make visible
|
|
1962
2005
|
*/
|
|
1963
|
-
MDCTabBarFoundation.prototype.
|
|
2006
|
+
MDCTabBarFoundation.prototype.scrollIntoViewImplRTL = function (index) {
|
|
1964
2007
|
var scrollPosition = this.adapter.getScrollPosition();
|
|
1965
2008
|
var barWidth = this.adapter.getOffsetWidth();
|
|
1966
2009
|
var tabDimensions = this.adapter.getTabDimensionsAtIndex(index);
|
|
1967
2010
|
var scrollWidth = this.adapter.getScrollContentWidth();
|
|
1968
|
-
var nextIndex = this.
|
|
1969
|
-
if (!this.
|
|
2011
|
+
var nextIndex = this.findAdjacentTabIndexClosestToEdgeRTL(index, tabDimensions, scrollPosition, barWidth, scrollWidth);
|
|
2012
|
+
if (!this.indexIsInRange(nextIndex)) {
|
|
1970
2013
|
return;
|
|
1971
2014
|
}
|
|
1972
|
-
var scrollIncrement = this.
|
|
2015
|
+
var scrollIncrement = this.calculateScrollIncrementRTL(index, nextIndex, scrollPosition, barWidth, scrollWidth);
|
|
1973
2016
|
this.adapter.incrementScroll(scrollIncrement);
|
|
1974
2017
|
};
|
|
1975
2018
|
return MDCTabBarFoundation;
|
|
@@ -2009,7 +2052,20 @@ var MDCTabBar = /** @class */ (function (_super) {
|
|
|
2009
2052
|
};
|
|
2010
2053
|
Object.defineProperty(MDCTabBar.prototype, "focusOnActivate", {
|
|
2011
2054
|
set: function (focusOnActivate) {
|
|
2012
|
-
|
|
2055
|
+
var e_1, _a;
|
|
2056
|
+
try {
|
|
2057
|
+
for (var _b = __values(this.tabList), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
2058
|
+
var tab = _c.value;
|
|
2059
|
+
tab.focusOnActivate = focusOnActivate;
|
|
2060
|
+
}
|
|
2061
|
+
}
|
|
2062
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
2063
|
+
finally {
|
|
2064
|
+
try {
|
|
2065
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
2066
|
+
}
|
|
2067
|
+
finally { if (e_1) throw e_1.error; }
|
|
2068
|
+
}
|
|
2013
2069
|
},
|
|
2014
2070
|
enumerable: false,
|
|
2015
2071
|
configurable: true
|
|
@@ -2024,31 +2080,46 @@ var MDCTabBar = /** @class */ (function (_super) {
|
|
|
2024
2080
|
MDCTabBar.prototype.initialize = function (tabFactory, tabScrollerFactory) {
|
|
2025
2081
|
if (tabFactory === void 0) { tabFactory = function (el) { return new MDCTab(el); }; }
|
|
2026
2082
|
if (tabScrollerFactory === void 0) { tabScrollerFactory = function (el) { return new MDCTabScroller(el); }; }
|
|
2027
|
-
this.
|
|
2028
|
-
this.
|
|
2083
|
+
this.tabList = this.instantiateTabs(tabFactory);
|
|
2084
|
+
this.tabScroller = this.instantiatetabScroller(tabScrollerFactory);
|
|
2029
2085
|
};
|
|
2030
2086
|
MDCTabBar.prototype.initialSyncWithDOM = function () {
|
|
2031
2087
|
var _this = this;
|
|
2032
|
-
this.
|
|
2033
|
-
|
|
2088
|
+
this.handleTabInteraction = function (evt) {
|
|
2089
|
+
_this.foundation.handleTabInteraction(evt);
|
|
2090
|
+
};
|
|
2091
|
+
this.handleKeyDown = function (evt) {
|
|
2092
|
+
_this.foundation.handleKeyDown(evt);
|
|
2034
2093
|
};
|
|
2035
|
-
this.
|
|
2036
|
-
this.listen(
|
|
2037
|
-
|
|
2038
|
-
|
|
2039
|
-
if (this.tabList_[i].active) {
|
|
2094
|
+
this.listen(MDCTabFoundation.strings.INTERACTED_EVENT, this.handleTabInteraction);
|
|
2095
|
+
this.listen('keydown', this.handleKeyDown);
|
|
2096
|
+
for (var i = 0; i < this.tabList.length; i++) {
|
|
2097
|
+
if (this.tabList[i].active) {
|
|
2040
2098
|
this.scrollIntoView(i);
|
|
2041
2099
|
break;
|
|
2042
2100
|
}
|
|
2043
2101
|
}
|
|
2044
2102
|
};
|
|
2045
2103
|
MDCTabBar.prototype.destroy = function () {
|
|
2104
|
+
var e_2, _a;
|
|
2046
2105
|
_super.prototype.destroy.call(this);
|
|
2047
|
-
this.unlisten(MDCTabFoundation.strings.INTERACTED_EVENT, this.
|
|
2048
|
-
this.unlisten('keydown', this.
|
|
2049
|
-
|
|
2050
|
-
|
|
2051
|
-
|
|
2106
|
+
this.unlisten(MDCTabFoundation.strings.INTERACTED_EVENT, this.handleTabInteraction);
|
|
2107
|
+
this.unlisten('keydown', this.handleKeyDown);
|
|
2108
|
+
try {
|
|
2109
|
+
for (var _b = __values(this.tabList), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
2110
|
+
var tab = _c.value;
|
|
2111
|
+
tab.destroy();
|
|
2112
|
+
}
|
|
2113
|
+
}
|
|
2114
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
2115
|
+
finally {
|
|
2116
|
+
try {
|
|
2117
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
2118
|
+
}
|
|
2119
|
+
finally { if (e_2) throw e_2.error; }
|
|
2120
|
+
}
|
|
2121
|
+
if (this.tabScroller) {
|
|
2122
|
+
this.tabScroller.destroy();
|
|
2052
2123
|
}
|
|
2053
2124
|
};
|
|
2054
2125
|
MDCTabBar.prototype.getDefaultFoundation = function () {
|
|
@@ -2057,48 +2128,56 @@ var MDCTabBar = /** @class */ (function (_super) {
|
|
|
2057
2128
|
// To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.
|
|
2058
2129
|
// tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.
|
|
2059
2130
|
var adapter = {
|
|
2060
|
-
scrollTo: function (scrollX) {
|
|
2131
|
+
scrollTo: function (scrollX) {
|
|
2132
|
+
_this.tabScroller.scrollTo(scrollX);
|
|
2133
|
+
},
|
|
2061
2134
|
incrementScroll: function (scrollXIncrement) {
|
|
2062
|
-
|
|
2135
|
+
_this.tabScroller.incrementScroll(scrollXIncrement);
|
|
2063
2136
|
},
|
|
2064
|
-
getScrollPosition: function () { return _this.
|
|
2065
|
-
getScrollContentWidth: function () { return _this.
|
|
2137
|
+
getScrollPosition: function () { return _this.tabScroller.getScrollPosition(); },
|
|
2138
|
+
getScrollContentWidth: function () { return _this.tabScroller.getScrollContentWidth(); },
|
|
2066
2139
|
getOffsetWidth: function () { return _this.root.offsetWidth; },
|
|
2067
2140
|
isRTL: function () { return window.getComputedStyle(_this.root).getPropertyValue('direction') === 'rtl'; },
|
|
2068
|
-
setActiveTab: function (index) {
|
|
2141
|
+
setActiveTab: function (index) {
|
|
2142
|
+
_this.foundation.activateTab(index);
|
|
2143
|
+
},
|
|
2069
2144
|
activateTabAtIndex: function (index, clientRect) {
|
|
2070
|
-
|
|
2145
|
+
_this.tabList[index].activate(clientRect);
|
|
2146
|
+
},
|
|
2147
|
+
deactivateTabAtIndex: function (index) {
|
|
2148
|
+
_this.tabList[index].deactivate();
|
|
2149
|
+
},
|
|
2150
|
+
focusTabAtIndex: function (index) {
|
|
2151
|
+
_this.tabList[index].focus();
|
|
2071
2152
|
},
|
|
2072
|
-
deactivateTabAtIndex: function (index) { return _this.tabList_[index].deactivate(); },
|
|
2073
|
-
focusTabAtIndex: function (index) { return _this.tabList_[index].focus(); },
|
|
2074
2153
|
getTabIndicatorClientRectAtIndex: function (index) {
|
|
2075
|
-
return _this.
|
|
2154
|
+
return _this.tabList[index].computeIndicatorClientRect();
|
|
2076
2155
|
},
|
|
2077
2156
|
getTabDimensionsAtIndex: function (index) {
|
|
2078
|
-
return _this.
|
|
2157
|
+
return _this.tabList[index].computeDimensions();
|
|
2079
2158
|
},
|
|
2080
2159
|
getPreviousActiveTabIndex: function () {
|
|
2081
|
-
for (var i = 0; i < _this.
|
|
2082
|
-
if (_this.
|
|
2160
|
+
for (var i = 0; i < _this.tabList.length; i++) {
|
|
2161
|
+
if (_this.tabList[i].active) {
|
|
2083
2162
|
return i;
|
|
2084
2163
|
}
|
|
2085
2164
|
}
|
|
2086
2165
|
return -1;
|
|
2087
2166
|
},
|
|
2088
2167
|
getFocusedTabIndex: function () {
|
|
2089
|
-
var tabElements = _this.
|
|
2168
|
+
var tabElements = _this.getTabElements();
|
|
2090
2169
|
var activeElement = document.activeElement;
|
|
2091
2170
|
return tabElements.indexOf(activeElement);
|
|
2092
2171
|
},
|
|
2093
2172
|
getIndexOfTabById: function (id) {
|
|
2094
|
-
for (var i = 0; i < _this.
|
|
2095
|
-
if (_this.
|
|
2173
|
+
for (var i = 0; i < _this.tabList.length; i++) {
|
|
2174
|
+
if (_this.tabList[i].id === id) {
|
|
2096
2175
|
return i;
|
|
2097
2176
|
}
|
|
2098
2177
|
}
|
|
2099
2178
|
return -1;
|
|
2100
2179
|
},
|
|
2101
|
-
getTabListLength: function () { return _this.
|
|
2180
|
+
getTabListLength: function () { return _this.tabList.length; },
|
|
2102
2181
|
notifyTabActivated: function (index) { return _this.emit(strings.TAB_ACTIVATED_EVENT, { index: index }, true); },
|
|
2103
2182
|
};
|
|
2104
2183
|
// tslint:enable:object-literal-sort-keys
|
|
@@ -2121,14 +2200,14 @@ var MDCTabBar = /** @class */ (function (_super) {
|
|
|
2121
2200
|
/**
|
|
2122
2201
|
* Returns all the tab elements in a nice clean array
|
|
2123
2202
|
*/
|
|
2124
|
-
MDCTabBar.prototype.
|
|
2203
|
+
MDCTabBar.prototype.getTabElements = function () {
|
|
2125
2204
|
return [].slice.call(this.root.querySelectorAll(strings.TAB_SELECTOR));
|
|
2126
2205
|
};
|
|
2127
2206
|
/**
|
|
2128
2207
|
* Instantiates tab components on all child tab elements
|
|
2129
2208
|
*/
|
|
2130
|
-
MDCTabBar.prototype.
|
|
2131
|
-
return this.
|
|
2209
|
+
MDCTabBar.prototype.instantiateTabs = function (tabFactory) {
|
|
2210
|
+
return this.getTabElements().map(function (el) {
|
|
2132
2211
|
el.id = el.id || "mdc-tab-" + ++tabIdCounter;
|
|
2133
2212
|
return tabFactory(el);
|
|
2134
2213
|
});
|
|
@@ -2136,7 +2215,7 @@ var MDCTabBar = /** @class */ (function (_super) {
|
|
|
2136
2215
|
/**
|
|
2137
2216
|
* Instantiates tab scroller component on the child tab scroller element
|
|
2138
2217
|
*/
|
|
2139
|
-
MDCTabBar.prototype.
|
|
2218
|
+
MDCTabBar.prototype.instantiatetabScroller = function (tabScrollerFactory) {
|
|
2140
2219
|
var tabScrollerElement = this.root.querySelector(strings.TAB_SCROLLER_SELECTOR);
|
|
2141
2220
|
if (tabScrollerElement) {
|
|
2142
2221
|
return tabScrollerFactory(tabScrollerElement);
|
|
@@ -2164,12 +2243,12 @@ function setActiveTab(tabs, index) {
|
|
|
2164
2243
|
return result;
|
|
2165
2244
|
}
|
|
2166
2245
|
|
|
2167
|
-
const tabBarCss = ":host{--mdc-theme-primary:var(\n --lime-primary-color,\n rgb(var(--color-teal-default))\n );--mdc-theme-secondary:var(\n --lime-secondary-color,\n rgb(var(--contrast-1100))\n );--mdc-theme-on-primary:var(\n --lime-on-primary-color,\n rgb(var(--contrast-100))\n );--mdc-theme-on-secondary:var(\n --lime-on-secondary-color,\n rgb(var(--contrast-100))\n );--mdc-theme-text-disabled-on-background:var(\n --lime-text-disabled-on-background-color,\n rgba(var(--contrast-1700), 0.38)\n );--mdc-theme-text-primary-on-background:var(\n --lime-text-primary-on-background-color,\n rgba(var(--contrast-1700), 0.87)\n );--mdc-theme-text-secondary-on-background:var(\n --lime-text-secondary-on-background-color,\n rgba(var(--contrast-1700), 0.54)\n );--lime-error-text-color:rgb(var(--color-red-darker));--mdc-theme-surface:var(\n --lime-surface-background-color,\n rgb(var(--contrast-100))\n );--mdc-theme-on-surface:var(\n --lime-on-surface-color,\n var(--lime-text-primary-on-background-color)\n )}.mdc-tab-bar{width:100%}.mdc-tab{height:48px}.mdc-tab--stacked{height:72px}.mdc-tab-scroller{overflow-y:hidden}.mdc-tab-scroller.mdc-tab-scroller--animating .mdc-tab-scroller__scroll-content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-scroller__test{position:absolute;top:-9999px;width:100px;height:100px;overflow-x:scroll}.mdc-tab-scroller__scroll-area{-webkit-overflow-scrolling:touch;display:flex;overflow-x:hidden}.mdc-tab-scroller__scroll-area::-webkit-scrollbar,.mdc-tab-scroller__test::-webkit-scrollbar{display:none}.mdc-tab-scroller__scroll-area--scroll{overflow-x:scroll}.mdc-tab-scroller__scroll-content{position:relative;display:flex;flex:1 0 auto;transform:none;will-change:transform}.mdc-tab-scroller--align-start .mdc-tab-scroller__scroll-content{justify-content:flex-start}.mdc-tab-scroller--align-end .mdc-tab-scroller__scroll-content{justify-content:flex-end}.mdc-tab-scroller--align-center .mdc-tab-scroller__scroll-content{justify-content:center}.mdc-tab-scroller--animating .mdc-tab-scroller__scroll-area{-webkit-overflow-scrolling:auto}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-color:#26a69a;border-color:var(--mdc-theme-primary, #26a69a)}.mdc-tab-indicator .mdc-tab-indicator__content--icon{color:#575756;color:var(--mdc-theme-secondary, #575756)}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:2px}.mdc-tab-indicator .mdc-tab-indicator__content--icon{height:34px;font-size:34px}.mdc-tab-indicator__content{transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator__content--icon{align-self:center;margin:0 auto}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}.mdc-tab-indicator .mdc-tab-indicator__content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition:150ms opacity linear}.mdc-tab-indicator--active.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition-delay:100ms}.mdc-tab{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto, sans-serif;font-family:var(--mdc-typography-button-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:0.875rem;font-size:var(--mdc-typography-button-font-size, 0.875rem);line-height:2.25rem;line-height:var(--mdc-typography-button-line-height, 2.25rem);font-weight:500;font-weight:var(--mdc-typography-button-font-weight, 500);letter-spacing:0.0892857143em;letter-spacing:var(--mdc-typography-button-letter-spacing, 0.0892857143em);text-decoration:none;text-decoration:var(--mdc-typography-button-text-decoration, none);text-transform:none;text-transform:var(--mdc-typography-button-text-transform, none);padding-right:24px;padding-left:24px;min-width:90px;position:relative;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;margin:0;padding-top:0;padding-bottom:0;border:none;outline:none;background:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;z-index:1}.mdc-tab .mdc-tab__text-label{color:rgba(0, 0, 0, 0.6)}.mdc-tab .mdc-tab__icon{color:rgba(0, 0, 0, 0.54);fill:currentColor}.mdc-tab::-moz-focus-inner{padding:0;border:0}.mdc-tab--min-width{flex:0 1 auto}.mdc-tab__content{position:relative;display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab__icon{transition:150ms color linear;width:24px;height:24px;font-size:24px;z-index:2}.mdc-tab--stacked .mdc-tab__content{flex-direction:column;align-items:center;justify-content:center}.mdc-tab--stacked .mdc-tab__text-label{padding-top:6px;padding-bottom:4px}.mdc-tab--active .mdc-tab__text-label{color:#26a69a;color:var(--mdc-theme-primary, #26a69a)}.mdc-tab--active .mdc-tab__icon{color:#26a69a;color:var(--mdc-theme-primary, #26a69a);fill:currentColor}.mdc-tab--active .mdc-tab__text-label,.mdc-tab--active .mdc-tab__icon{transition-delay:100ms}.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label{padding-left:8px;padding-right:0}[dir=rtl] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label,.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label[dir=rtl]{padding-left:0;padding-right:8px}@keyframes mdc-ripple-fg-radius-in{from{animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transform:translate(var(--mdc-ripple-fg-translate-start, 0)) scale(1)}to{transform:translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1))}}@keyframes mdc-ripple-fg-opacity-in{from{animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@keyframes mdc-ripple-fg-opacity-out{from{animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}.mdc-tab{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:rgba(0, 0, 0, 0)}.mdc-tab .mdc-tab__ripple::before,.mdc-tab .mdc-tab__ripple::after{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\"\"}.mdc-tab .mdc-tab__ripple::before{transition:opacity 15ms linear, background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index, 1)}.mdc-tab .mdc-tab__ripple::after{z-index:0;z-index:var(--mdc-ripple-z-index, 0)}.mdc-tab.mdc-ripple-upgraded .mdc-tab__ripple::before{transform:scale(var(--mdc-ripple-fg-scale, 1))}.mdc-tab.mdc-ripple-upgraded .mdc-tab__ripple::after{top:0;left:0;transform:scale(0);transform-origin:center center}.mdc-tab.mdc-ripple-upgraded--unbounded .mdc-tab__ripple::after{top:var(--mdc-ripple-top, 0);left:var(--mdc-ripple-left, 0)}.mdc-tab.mdc-ripple-upgraded--foreground-activation .mdc-tab__ripple::after{animation:mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards}.mdc-tab.mdc-ripple-upgraded--foreground-deactivation .mdc-tab__ripple::after{animation:mdc-ripple-fg-opacity-out 150ms;transform:translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1))}.mdc-tab .mdc-tab__ripple::before,.mdc-tab .mdc-tab__ripple::after{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.mdc-tab.mdc-ripple-upgraded .mdc-tab__ripple::after{width:var(--mdc-ripple-fg-size, 100%);height:var(--mdc-ripple-fg-size, 100%)}.mdc-tab .mdc-tab__ripple::before,.mdc-tab .mdc-tab__ripple::after{background-color:#26a69a;background-color:var(--mdc-ripple-color, var(--mdc-theme-primary, #26a69a))}.mdc-tab:hover .mdc-tab__ripple::before,.mdc-tab.mdc-ripple-surface--hover .mdc-tab__ripple::before{opacity:0.08;opacity:var(--mdc-ripple-hover-opacity, 0.08)}.mdc-tab.mdc-ripple-upgraded--background-focused .mdc-tab__ripple::before,.mdc-tab:not(.mdc-ripple-upgraded):focus .mdc-tab__ripple::before{transition-duration:75ms;opacity:0.24;opacity:var(--mdc-ripple-focus-opacity, 0.24)}.mdc-tab:not(.mdc-ripple-upgraded) .mdc-tab__ripple::after{transition:opacity 150ms linear}.mdc-tab:not(.mdc-ripple-upgraded):active .mdc-tab__ripple::after{transition-duration:75ms;opacity:0.24;opacity:var(--mdc-ripple-press-opacity, 0.24)}.mdc-tab.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.24)}.mdc-tab__ripple{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;will-change:transform, opacity}.scroll-fade,.scroll-button{position:absolute;transition-property:transform;transition-duration:0.3s;transition-timing-function:ease-out}.scroll-fade{top:0;height:100%;width:4.0625rem;pointer-events:none}.scroll-fade.left{transform:translate3d(-4.0625rem, 0, 0);left:0;background:linear-gradient(270deg, rgba(var(--contrast-300), 0) 0%, rgba(var(--contrast-300), 0.8) 40%, rgba(var(--contrast-300), 0.8) 100%)}.scroll-fade.right{transform:translate3d(4.0625rem, 0, 0);right:0;background:linear-gradient(90deg, rgba(var(--contrast-300), 0) 0%, rgba(var(--contrast-300), 0.8) 40%, rgba(var(--contrast-300), 0.8) 100%)}.scroll-button{--icon-background-color:rgb(var(--contrast-100));top:0.25rem}.scroll-button.left{transform:translate3d(-4.0625rem, 0, 0);left:0.25rem}.scroll-button.right{transform:translate3d(4.0625rem, 0, 0);right:0.25rem}.scroll-button:hover{transform:translate3d(0, 0, 0)}.mdc-tab-scroller{position:relative;overflow:hidden}.mdc-tab-scroller.can-scroll-left .scroll-fade.left,.mdc-tab-scroller.can-scroll-left .scroll-button.left,.mdc-tab-scroller.can-scroll-right .scroll-fade.right,.mdc-tab-scroller.can-scroll-right .scroll-button.right{transform:translate3d(0, 0, 0)}.mdc-tab-scroller.can-scroll-left:not(.can-scroll-right) .scroll-button.right,.mdc-tab-scroller.can-scroll-right:not(.can-scroll-left) .scroll-button.left{opacity:0.5;transition-delay:0.5s}.lime-hide-scrollbars{scrollbar-width:none;-ms-overflow-style:none}.mdc-tab-scroller__scroll-content{padding:0.5rem 0.75rem 0 0.75rem;background-color:rgb(var(--contrast-300))}:host{display:block;position:relative}:host(.has-tabs-with-equal-width) .mdc-tab{flex:1 0 auto}.mdc-tab__icon{margin-right:0.5rem}.mdc-tab-indicator .mdc-tab-indicator__content{border:none}.mdc-tab--active .mdc-ripple-upgraded--background-focused:before{background-color:transparent;transition:background-color 1s ease}.mdc-tab__ripple{box-sizing:border-box;border-radius:0.625rem;border-style:solid;border-color:transparent;border-width:0.25rem;opacity:0.7}.mdc-tab__ripple:before,.mdc-tab__ripple:after{transition:background-color 0.5s ease}.mdc-tab{border-radius:0;letter-spacing:normal}.mdc-tab{background-color:transparent;flex:0 0 auto}.mdc-tab:not(.mdc-tab--active):after{content:\"\";display:block;background-color:rgb(var(--contrast-600));width:0.125rem;height:1rem;margin:auto;position:absolute;top:0;bottom:0;border-radius:1rem;right:-0.125rem}.mdc-tab:not(.mdc-tab--active):last-of-type:after{display:none}.mdc-tab--active{border-radius:0.625rem 0.625rem 0 0;background-color:rgb(var(--contrast-100));z-index:2}.mdc-tab--active:before,.mdc-tab--active:after{content:\"\";display:block;width:0.75rem;height:0.75rem;position:absolute;bottom:0;background-color:rgb(var(--contrast-100));-webkit-mask-image:url(\"data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' clip-rule='evenodd' viewBox='0 0 50 50'><defs/><path d='M0 0c0 27.594 22.406 50 50 50H0V0z'/></svg>\");mask-image:url(\"data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' clip-rule='evenodd' viewBox='0 0 50 50'><defs/><path d='M0 0c0 27.594 22.406 50 50 50H0V0z'/></svg>\")}.mdc-tab--active:before{left:-0.75rem;transform:rotateY(180deg)}.mdc-tab--active:after{right:-0.75rem}";
|
|
2246
|
+
const tabBarCss = ":host{--mdc-theme-primary:var(\n --lime-primary-color,\n rgb(var(--color-teal-default))\n );--mdc-theme-secondary:var(\n --lime-secondary-color,\n rgb(var(--contrast-1100))\n );--mdc-theme-on-primary:var(\n --lime-on-primary-color,\n rgb(var(--contrast-100))\n );--mdc-theme-on-secondary:var(\n --lime-on-secondary-color,\n rgb(var(--contrast-100))\n );--mdc-theme-text-disabled-on-background:var(\n --lime-text-disabled-on-background-color,\n rgba(var(--contrast-1700), 0.38)\n );--mdc-theme-text-primary-on-background:var(\n --lime-text-primary-on-background-color,\n rgba(var(--contrast-1700), 0.87)\n );--mdc-theme-text-secondary-on-background:var(\n --lime-text-secondary-on-background-color,\n rgba(var(--contrast-1700), 0.54)\n );--lime-error-text-color:rgb(var(--color-red-darker));--mdc-theme-surface:var(\n --lime-surface-background-color,\n rgb(var(--contrast-100))\n );--mdc-theme-on-surface:var(\n --lime-on-surface-color,\n var(--lime-text-primary-on-background-color)\n )}.mdc-tab-bar{width:100%}.mdc-tab{height:48px}.mdc-tab--stacked{height:72px}.mdc-tab-scroller{overflow-y:hidden}.mdc-tab-scroller.mdc-tab-scroller--animating .mdc-tab-scroller__scroll-content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-scroller__test{position:absolute;top:-9999px;width:100px;height:100px;overflow-x:scroll}.mdc-tab-scroller__scroll-area{-webkit-overflow-scrolling:touch;display:flex;overflow-x:hidden}.mdc-tab-scroller__scroll-area::-webkit-scrollbar,.mdc-tab-scroller__test::-webkit-scrollbar{display:none}.mdc-tab-scroller__scroll-area--scroll{overflow-x:scroll}.mdc-tab-scroller__scroll-content{position:relative;display:flex;flex:1 0 auto;transform:none;will-change:transform}.mdc-tab-scroller--align-start .mdc-tab-scroller__scroll-content{justify-content:flex-start}.mdc-tab-scroller--align-end .mdc-tab-scroller__scroll-content{justify-content:flex-end}.mdc-tab-scroller--align-center .mdc-tab-scroller__scroll-content{justify-content:center}.mdc-tab-scroller--animating .mdc-tab-scroller__scroll-area{-webkit-overflow-scrolling:auto}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-color:#26a69a;border-color:var(--mdc-theme-primary, #26a69a)}.mdc-tab-indicator .mdc-tab-indicator__content--icon{color:#575756;color:var(--mdc-theme-secondary, #575756)}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:2px}.mdc-tab-indicator .mdc-tab-indicator__content--icon{height:34px;font-size:34px}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator__content--icon{align-self:center;margin:0 auto}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}.mdc-tab-indicator .mdc-tab-indicator__content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition:150ms opacity linear}.mdc-tab-indicator--active.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition-delay:100ms}.mdc-tab{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto, sans-serif;font-family:var(--mdc-typography-button-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:0.875rem;font-size:var(--mdc-typography-button-font-size, 0.875rem);line-height:2.25rem;line-height:var(--mdc-typography-button-line-height, 2.25rem);font-weight:500;font-weight:var(--mdc-typography-button-font-weight, 500);letter-spacing:0.0892857143em;letter-spacing:var(--mdc-typography-button-letter-spacing, 0.0892857143em);text-decoration:none;text-decoration:var(--mdc-typography-button-text-decoration, none);text-transform:none;text-transform:var(--mdc-typography-button-text-transform, none);position:relative}.mdc-tab .mdc-tab__text-label{color:rgba(0, 0, 0, 0.6)}.mdc-tab .mdc-tab__icon{color:rgba(0, 0, 0, 0.54);fill:currentColor}.mdc-tab__content{position:relative}.mdc-tab__icon{width:24px;height:24px;font-size:24px}.mdc-tab--active .mdc-tab__text-label{color:#26a69a;color:var(--mdc-theme-primary, #26a69a)}.mdc-tab--active .mdc-tab__icon{color:#26a69a;color:var(--mdc-theme-primary, #26a69a);fill:currentColor}.mdc-tab{background:none}.mdc-tab{min-width:90px;padding-right:24px;padding-left:24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;margin:0;padding-top:0;padding-bottom:0;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;z-index:1}.mdc-tab::-moz-focus-inner{padding:0;border:0}.mdc-tab--min-width{flex:0 1 auto}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab__icon{transition:150ms color linear;z-index:2}.mdc-tab--stacked .mdc-tab__content{flex-direction:column;align-items:center;justify-content:center}.mdc-tab--stacked .mdc-tab__text-label{padding-top:6px;padding-bottom:4px}.mdc-tab--active .mdc-tab__text-label,.mdc-tab--active .mdc-tab__icon{transition-delay:100ms}.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label{padding-left:8px;padding-right:0}[dir=rtl] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label,.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label[dir=rtl]{padding-left:0;padding-right:8px;}@keyframes mdc-ripple-fg-radius-in{from{animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transform:translate(var(--mdc-ripple-fg-translate-start, 0)) scale(1)}to{transform:translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1))}}@keyframes mdc-ripple-fg-opacity-in{from{animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@keyframes mdc-ripple-fg-opacity-out{from{animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}.mdc-tab{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:rgba(0, 0, 0, 0)}.mdc-tab .mdc-tab__ripple::before,.mdc-tab .mdc-tab__ripple::after{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\"\"}.mdc-tab .mdc-tab__ripple::before{transition:opacity 15ms linear, background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index, 1)}.mdc-tab .mdc-tab__ripple::after{z-index:0;z-index:var(--mdc-ripple-z-index, 0)}.mdc-tab.mdc-ripple-upgraded .mdc-tab__ripple::before{transform:scale(var(--mdc-ripple-fg-scale, 1))}.mdc-tab.mdc-ripple-upgraded .mdc-tab__ripple::after{top:0;left:0;transform:scale(0);transform-origin:center center}.mdc-tab.mdc-ripple-upgraded--unbounded .mdc-tab__ripple::after{top:var(--mdc-ripple-top, 0);left:var(--mdc-ripple-left, 0)}.mdc-tab.mdc-ripple-upgraded--foreground-activation .mdc-tab__ripple::after{animation:mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards}.mdc-tab.mdc-ripple-upgraded--foreground-deactivation .mdc-tab__ripple::after{animation:mdc-ripple-fg-opacity-out 150ms;transform:translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1))}.mdc-tab .mdc-tab__ripple::before,.mdc-tab .mdc-tab__ripple::after{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.mdc-tab.mdc-ripple-upgraded .mdc-tab__ripple::after{width:var(--mdc-ripple-fg-size, 100%);height:var(--mdc-ripple-fg-size, 100%)}.mdc-tab .mdc-tab__ripple::before,.mdc-tab .mdc-tab__ripple::after{background-color:#26a69a;background-color:var(--mdc-ripple-color, var(--mdc-theme-primary, #26a69a))}.mdc-tab:hover .mdc-tab__ripple::before,.mdc-tab.mdc-ripple-surface--hover .mdc-tab__ripple::before{opacity:0.08;opacity:var(--mdc-ripple-hover-opacity, 0.08)}.mdc-tab.mdc-ripple-upgraded--background-focused .mdc-tab__ripple::before,.mdc-tab:not(.mdc-ripple-upgraded):focus .mdc-tab__ripple::before{transition-duration:75ms;opacity:0.24;opacity:var(--mdc-ripple-focus-opacity, 0.24)}.mdc-tab:not(.mdc-ripple-upgraded) .mdc-tab__ripple::after{transition:opacity 150ms linear}.mdc-tab:not(.mdc-ripple-upgraded):active .mdc-tab__ripple::after{transition-duration:75ms;opacity:0.24;opacity:var(--mdc-ripple-press-opacity, 0.24)}.mdc-tab.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.24)}.mdc-tab__ripple{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;will-change:transform, opacity}.scroll-fade,.scroll-button{position:absolute;transition-property:transform;transition-duration:0.3s;transition-timing-function:ease-out}.scroll-fade{top:0;height:100%;width:4.0625rem;pointer-events:none}.scroll-fade.left{transform:translate3d(-4.0625rem, 0, 0);left:0;background:linear-gradient(270deg, rgba(var(--contrast-300), 0) 0%, rgba(var(--contrast-300), 0.8) 40%, rgba(var(--contrast-300), 0.8) 100%)}.scroll-fade.right{transform:translate3d(4.0625rem, 0, 0);right:0;background:linear-gradient(90deg, rgba(var(--contrast-300), 0) 0%, rgba(var(--contrast-300), 0.8) 40%, rgba(var(--contrast-300), 0.8) 100%)}.scroll-button{--icon-background-color:rgb(var(--contrast-100));top:0.25rem}.scroll-button.left{transform:translate3d(-4.0625rem, 0, 0);left:0.25rem}.scroll-button.right{transform:translate3d(4.0625rem, 0, 0);right:0.25rem}.scroll-button:hover{transform:translate3d(0, 0, 0)}.mdc-tab-scroller{position:relative;overflow:hidden}.mdc-tab-scroller.can-scroll-left .scroll-fade.left,.mdc-tab-scroller.can-scroll-left .scroll-button.left,.mdc-tab-scroller.can-scroll-right .scroll-fade.right,.mdc-tab-scroller.can-scroll-right .scroll-button.right{transform:translate3d(0, 0, 0)}.mdc-tab-scroller.can-scroll-left:not(.can-scroll-right) .scroll-button.right,.mdc-tab-scroller.can-scroll-right:not(.can-scroll-left) .scroll-button.left{opacity:0.5;transition-delay:0.5s}.lime-hide-scrollbars{scrollbar-width:none;-ms-overflow-style:none}.mdc-tab-scroller__scroll-content{padding:0.5rem 0.75rem 0 0.75rem;background-color:rgb(var(--contrast-300))}:host{display:block;position:relative}:host(.has-tabs-with-equal-width) .mdc-tab{flex:1 0 auto}.mdc-tab-indicator .mdc-tab-indicator__content{border:none}.mdc-tab__ripple{box-sizing:border-box;border-radius:0.625rem;border-style:solid;border-color:transparent;border-width:0.25rem;opacity:0.7}.mdc-tab__ripple:before,.mdc-tab__ripple:after{transition:background-color 0.5s ease}.mdc-tab{border-radius:0;letter-spacing:normal;padding-right:1.25rem;padding-left:1.25rem;min-width:2.5rem;background-color:transparent;flex:0 0 auto}.mdc-tab:not(.mdc-tab--active){--badge-background-color:rgb(var(--contrast-600))}.mdc-tab:not(.mdc-tab--active):after{content:\"\";display:block;background-color:rgb(var(--contrast-600));width:0.125rem;height:1rem;margin:auto;position:absolute;top:0;bottom:0;border-radius:1rem;right:-0.125rem}.mdc-tab:not(.mdc-tab--active):last-of-type:after{display:none}.mdc-tab--active{border-radius:0.625rem 0.625rem 0 0;background-color:rgb(var(--contrast-100));z-index:2}.mdc-tab--active:before,.mdc-tab--active:after{content:\"\";display:block;width:0.75rem;height:0.75rem;position:absolute;bottom:0;background-color:rgb(var(--contrast-100));-webkit-mask-image:url(\"data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' clip-rule='evenodd' viewBox='0 0 50 50'><defs/><path d='M0 0c0 27.594 22.406 50 50 50H0V0z'/></svg>\");mask-image:url(\"data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' clip-rule='evenodd' viewBox='0 0 50 50'><defs/><path d='M0 0c0 27.594 22.406 50 50 50H0V0z'/></svg>\")}.mdc-tab--active:before{left:-0.75rem;transform:rotateY(180deg)}.mdc-tab--active:after{right:-0.75rem}.mdc-tab--active .mdc-ripple-upgraded--background-focused:before{background-color:transparent;transition:background-color 1s ease}.mdc-tab__content{gap:0.375rem}.mdc-tab__text-label{padding-left:0 !important}";
|
|
2168
2247
|
|
|
2169
2248
|
const { TAB_ACTIVATED_EVENT } = strings$1;
|
|
2170
2249
|
const SCROLL_DISTANCE_ON_CLICK_PX = 150;
|
|
2171
2250
|
const HIDE_SCROLL_BUTTONS_WHEN_SCROLLED_LESS_THAN_PX = 40;
|
|
2172
|
-
|
|
2251
|
+
const TabBar = class {
|
|
2173
2252
|
constructor(hostRef) {
|
|
2174
2253
|
registerInstance(this, hostRef);
|
|
2175
2254
|
this.changeTab = createEvent(this, "changeTab", 7);
|