@skyux/tabs 5.7.1 → 6.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/documentation.json +5 -5
  2. package/esm2020/index.mjs +23 -0
  3. package/esm2020/lib/modules/sectioned-form/sectioned-form-section.component.mjs +62 -0
  4. package/esm2020/lib/modules/sectioned-form/sectioned-form.component.mjs +109 -0
  5. package/esm2020/lib/modules/sectioned-form/sectioned-form.module.mjs +35 -0
  6. package/esm2020/lib/modules/sectioned-form/sectioned-form.service.mjs +35 -0
  7. package/esm2020/lib/modules/shared/sky-tabs-resources.module.mjs +52 -0
  8. package/esm2020/lib/modules/tabs/tab-button.component.mjs +70 -0
  9. package/esm2020/lib/modules/tabs/tab-index.mjs +2 -0
  10. package/esm2020/lib/modules/tabs/tab.component.mjs +131 -0
  11. package/esm2020/lib/modules/tabs/tabs.module.mjs +57 -0
  12. package/esm2020/lib/modules/tabs/tabset-active-tab-unregistered-args.mjs +2 -0
  13. package/esm2020/lib/modules/tabs/tabset-adapter.service.mjs +56 -0
  14. package/esm2020/lib/modules/tabs/tabset-buttons-display-mode.mjs +2 -0
  15. package/esm2020/lib/modules/tabs/tabset-nav-button.component.mjs +116 -0
  16. package/esm2020/lib/modules/tabs/tabset-permalink.service.mjs +126 -0
  17. package/esm2020/lib/modules/tabs/tabset-style.mjs +2 -0
  18. package/esm2020/lib/modules/tabs/tabset-tab-indexes-change.mjs +2 -0
  19. package/esm2020/lib/modules/tabs/tabset.component.mjs +396 -0
  20. package/esm2020/lib/modules/tabs/tabset.service.mjs +110 -0
  21. package/esm2020/lib/modules/vertical-tabset/vertical-tab-media-query.service.mjs +72 -0
  22. package/esm2020/lib/modules/vertical-tabset/vertical-tab.component.mjs +197 -0
  23. package/esm2020/lib/modules/vertical-tabset/vertical-tabset-adapter.service.mjs +48 -0
  24. package/esm2020/lib/modules/vertical-tabset/vertical-tabset-group.component.mjs +83 -0
  25. package/esm2020/lib/modules/vertical-tabset/vertical-tabset.component.mjs +150 -0
  26. package/esm2020/lib/modules/vertical-tabset/vertical-tabset.module.mjs +60 -0
  27. package/esm2020/lib/modules/vertical-tabset/vertical-tabset.service.mjs +168 -0
  28. package/esm2020/skyux-tabs.mjs +5 -0
  29. package/esm2020/testing/public-api.mjs +3 -0
  30. package/esm2020/testing/skyux-tabs-testing.mjs +5 -0
  31. package/esm2020/testing/tabs/tab-fixture-tab.mjs +2 -0
  32. package/esm2020/testing/tabs/tabset-fixture.mjs +130 -0
  33. package/fesm2015/{skyux-tabs-testing.js → skyux-tabs-testing.mjs} +1 -1
  34. package/fesm2015/skyux-tabs-testing.mjs.map +1 -0
  35. package/fesm2015/{skyux-tabs.js → skyux-tabs.mjs} +187 -236
  36. package/fesm2015/skyux-tabs.mjs.map +1 -0
  37. package/{esm2015/testing/tabs/tabset-fixture.js → fesm2020/skyux-tabs-testing.mjs} +39 -43
  38. package/fesm2020/skyux-tabs-testing.mjs.map +1 -0
  39. package/fesm2020/skyux-tabs.mjs +2005 -0
  40. package/fesm2020/skyux-tabs.mjs.map +1 -0
  41. package/package.json +40 -19
  42. package/testing/package.json +5 -5
  43. package/bundles/skyux-tabs-testing.umd.js +0 -498
  44. package/bundles/skyux-tabs.umd.js +0 -2258
  45. package/esm2015/index.js +0 -23
  46. package/esm2015/index.js.map +0 -1
  47. package/esm2015/lib/modules/sectioned-form/sectioned-form-section.component.js +0 -67
  48. package/esm2015/lib/modules/sectioned-form/sectioned-form-section.component.js.map +0 -1
  49. package/esm2015/lib/modules/sectioned-form/sectioned-form.component.js +0 -116
  50. package/esm2015/lib/modules/sectioned-form/sectioned-form.component.js.map +0 -1
  51. package/esm2015/lib/modules/sectioned-form/sectioned-form.module.js +0 -35
  52. package/esm2015/lib/modules/sectioned-form/sectioned-form.module.js.map +0 -1
  53. package/esm2015/lib/modules/sectioned-form/sectioned-form.service.js +0 -35
  54. package/esm2015/lib/modules/sectioned-form/sectioned-form.service.js.map +0 -1
  55. package/esm2015/lib/modules/shared/sky-tabs-resources.module.js +0 -52
  56. package/esm2015/lib/modules/shared/sky-tabs-resources.module.js.map +0 -1
  57. package/esm2015/lib/modules/tabs/tab-button.component.js +0 -76
  58. package/esm2015/lib/modules/tabs/tab-button.component.js.map +0 -1
  59. package/esm2015/lib/modules/tabs/tab-index.js +0 -2
  60. package/esm2015/lib/modules/tabs/tab-index.js.map +0 -1
  61. package/esm2015/lib/modules/tabs/tab.component.js +0 -135
  62. package/esm2015/lib/modules/tabs/tab.component.js.map +0 -1
  63. package/esm2015/lib/modules/tabs/tabs.module.js +0 -57
  64. package/esm2015/lib/modules/tabs/tabs.module.js.map +0 -1
  65. package/esm2015/lib/modules/tabs/tabset-active-tab-unregistered-args.js +0 -2
  66. package/esm2015/lib/modules/tabs/tabset-active-tab-unregistered-args.js.map +0 -1
  67. package/esm2015/lib/modules/tabs/tabset-adapter.service.js +0 -56
  68. package/esm2015/lib/modules/tabs/tabset-adapter.service.js.map +0 -1
  69. package/esm2015/lib/modules/tabs/tabset-buttons-display-mode.js +0 -2
  70. package/esm2015/lib/modules/tabs/tabset-buttons-display-mode.js.map +0 -1
  71. package/esm2015/lib/modules/tabs/tabset-nav-button.component.js +0 -119
  72. package/esm2015/lib/modules/tabs/tabset-nav-button.component.js.map +0 -1
  73. package/esm2015/lib/modules/tabs/tabset-permalink.service.js +0 -126
  74. package/esm2015/lib/modules/tabs/tabset-permalink.service.js.map +0 -1
  75. package/esm2015/lib/modules/tabs/tabset-style.js +0 -2
  76. package/esm2015/lib/modules/tabs/tabset-style.js.map +0 -1
  77. package/esm2015/lib/modules/tabs/tabset-tab-indexes-change.js +0 -2
  78. package/esm2015/lib/modules/tabs/tabset-tab-indexes-change.js.map +0 -1
  79. package/esm2015/lib/modules/tabs/tabset.component.js +0 -405
  80. package/esm2015/lib/modules/tabs/tabset.component.js.map +0 -1
  81. package/esm2015/lib/modules/tabs/tabset.service.js +0 -110
  82. package/esm2015/lib/modules/tabs/tabset.service.js.map +0 -1
  83. package/esm2015/lib/modules/vertical-tabset/vertical-tab-media-query.service.js +0 -72
  84. package/esm2015/lib/modules/vertical-tabset/vertical-tab-media-query.service.js.map +0 -1
  85. package/esm2015/lib/modules/vertical-tabset/vertical-tab.component.js +0 -203
  86. package/esm2015/lib/modules/vertical-tabset/vertical-tab.component.js.map +0 -1
  87. package/esm2015/lib/modules/vertical-tabset/vertical-tabset-adapter.service.js +0 -48
  88. package/esm2015/lib/modules/vertical-tabset/vertical-tabset-adapter.service.js.map +0 -1
  89. package/esm2015/lib/modules/vertical-tabset/vertical-tabset-group.component.js +0 -89
  90. package/esm2015/lib/modules/vertical-tabset/vertical-tabset-group.component.js.map +0 -1
  91. package/esm2015/lib/modules/vertical-tabset/vertical-tabset.component.js +0 -157
  92. package/esm2015/lib/modules/vertical-tabset/vertical-tabset.component.js.map +0 -1
  93. package/esm2015/lib/modules/vertical-tabset/vertical-tabset.module.js +0 -60
  94. package/esm2015/lib/modules/vertical-tabset/vertical-tabset.module.js.map +0 -1
  95. package/esm2015/lib/modules/vertical-tabset/vertical-tabset.service.js +0 -170
  96. package/esm2015/lib/modules/vertical-tabset/vertical-tabset.service.js.map +0 -1
  97. package/esm2015/skyux-tabs.js +0 -5
  98. package/esm2015/skyux-tabs.js.map +0 -1
  99. package/esm2015/testing/public-api.js +0 -3
  100. package/esm2015/testing/public-api.js.map +0 -1
  101. package/esm2015/testing/skyux-tabs-testing.js +0 -5
  102. package/esm2015/testing/skyux-tabs-testing.js.map +0 -1
  103. package/esm2015/testing/tabs/tab-fixture-tab.js +0 -2
  104. package/esm2015/testing/tabs/tab-fixture-tab.js.map +0 -1
  105. package/esm2015/testing/tabs/tabset-fixture.js.map +0 -1
  106. package/fesm2015/skyux-tabs-testing.js.map +0 -1
  107. package/fesm2015/skyux-tabs.js.map +0 -1
@@ -145,4 +145,4 @@ class SkyTabsetFixture {
145
145
  */
146
146
 
147
147
  export { SkyTabsetFixture };
148
- //# sourceMappingURL=skyux-tabs-testing.js.map
148
+ //# sourceMappingURL=skyux-tabs-testing.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skyux-tabs-testing.mjs","sources":["../../../../../libs/components/tabs/testing/src/tabs/tabset-fixture.ts","../../../../../libs/components/tabs/testing/src/skyux-tabs-testing.ts"],"sourcesContent":["import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { By } from '@angular/platform-browser';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\nimport { SkyTabsetFixtureTab } from './tab-fixture-tab';\n\n/**\n * Allows interaction with a SKY UX tabset component.\n */\nexport class SkyTabsetFixture {\n /**\n * The tabset component's ARIA label.\n */\n public get ariaLabel(): string {\n const tabsetEl = this.getTabsetEl();\n return tabsetEl.getAttribute('aria-label') || undefined;\n }\n\n /**\n * The tabset component's ARIA labelled by attribute.\n */\n public get ariaLabelledBy(): string {\n const tabsetEl = this.getTabsetEl();\n return tabsetEl.getAttribute('aria-labelledby') || undefined;\n }\n\n /**\n * The index of the currently selected tab.\n */\n public get activeTabIndex(): number {\n const tabLinkEls = this.getTabLinkEls();\n\n for (let i = 0, n = tabLinkEls.length; i < n; i++) {\n if (tabLinkEls.item(i).classList.contains('sky-btn-tab-selected')) {\n return i;\n }\n }\n\n return -1;\n }\n\n private debugEl: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-tabset'\n );\n }\n\n /**\n * Retrieves information about the tab at the specified index.\n * @param tabIndex The index of the tab.\n */\n public getTab(tabIndex: number): SkyTabsetFixtureTab {\n const tabLinkEl = this.getTabLinkEl(tabIndex);\n\n const active = this.activeTabIndex === tabIndex;\n const disabled = tabLinkEl.classList.contains('sky-btn-tab-disabled');\n const tabHeading = this.getTextContent(\n tabLinkEl.querySelector('.sky-tab-heading').childNodes[0]\n );\n const tabHeaderCount = this.getTextContent(\n tabLinkEl.querySelector('.sky-tab-header-count')\n );\n\n let permalinkValue: string;\n\n if (tabLinkEl.href) {\n const permalink = tabLinkEl.href.split('?')[1];\n if (permalink) {\n const permalinkParts = permalink.split('=');\n\n permalinkValue = decodeURIComponent(permalinkParts[1]);\n }\n }\n\n return {\n active,\n disabled,\n permalinkValue,\n tabHeaderCount,\n tabHeading,\n };\n }\n\n /**\n * Clicks the tabset's \"new\" button.\n */\n public async clickNewButton(): Promise<any> {\n return this.clickButton('sky-tabset-btn-new');\n }\n\n /**\n * Clicks the tabset's \"open\" button.\n */\n public async clickOpenButton(): Promise<any> {\n return this.clickButton('sky-tabset-btn-open');\n }\n\n /**\n * Clicks the tab button at the specified index.\n * @param tabIndex The index of the tab.\n */\n public async clickTab(tabIndex: number): Promise<any> {\n const tabLinkEl = this.getTabLinkEl(tabIndex);\n\n if (!tabLinkEl) {\n throw new Error(`There is no tab at index ${tabIndex}.`);\n }\n\n tabLinkEl.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n /**\n * Click's the tab's close button at the specified index.\n * @param tabIndex The index of the tab.\n */\n public async clickTabClose(tabIndex: number): Promise<any> {\n const tabWrapperEl = this.getTabsetEl().querySelectorAll(\n `.sky-tabset-tabs .sky-btn-tab-wrapper`\n )[tabIndex];\n\n if (!tabWrapperEl) {\n throw new Error(`There is no tab at index ${tabIndex}.`);\n }\n\n const closeBtnEl = tabWrapperEl.querySelector(\n '.sky-btn-tab-close'\n ) as HTMLButtonElement;\n\n if (!closeBtnEl) {\n throw new Error('The specified tab does not have a close button.');\n }\n\n closeBtnEl.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n private async clickButton(buttonCls: string): Promise<any> {\n const tabsetEl = this.getTabsetEl();\n\n const newButtonEl = tabsetEl.querySelector(\n `.sky-tabset-btns .${buttonCls}`\n ) as HTMLButtonElement;\n\n newButtonEl.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n private getTabsetEl(): HTMLDivElement {\n const tabsetEl = this.debugEl.query(By.css('.sky-tabset')).nativeElement;\n\n return tabsetEl;\n }\n\n private getTabLinkEls(): NodeListOf<HTMLAnchorElement> {\n return this.getTabsetEl().querySelectorAll(`.sky-tabset-tabs .sky-btn-tab`);\n }\n\n private getTabLinkEl(tabIndex: number): HTMLAnchorElement {\n const tabLinkEl = this.getTabLinkEls().item(tabIndex);\n\n if (!tabLinkEl) {\n throw new Error(`There is no tab at index ${tabIndex}.`);\n }\n\n return tabLinkEl;\n }\n\n private getTextContent(el: Element | Node): string {\n return (el && el.textContent.trim()) || undefined;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}