@workday/canvas-kit-preview-react 16.0.0-alpha.0474-next.0 → 16.0.0-alpha.0476-next.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 (65) hide show
  1. package/dist/commonjs/index.d.ts +1 -0
  2. package/dist/commonjs/index.d.ts.map +1 -1
  3. package/dist/commonjs/index.js +1 -0
  4. package/dist/commonjs/tabs/index.d.ts +7 -0
  5. package/dist/commonjs/tabs/index.d.ts.map +1 -0
  6. package/dist/commonjs/tabs/index.js +22 -0
  7. package/dist/commonjs/tabs/lib/Tabs.d.ts +9555 -0
  8. package/dist/commonjs/tabs/lib/Tabs.d.ts.map +1 -0
  9. package/dist/commonjs/tabs/lib/Tabs.js +127 -0
  10. package/dist/commonjs/tabs/lib/TabsItem.d.ts +719 -0
  11. package/dist/commonjs/tabs/lib/TabsItem.d.ts.map +1 -0
  12. package/dist/commonjs/tabs/lib/TabsItem.js +50 -0
  13. package/dist/commonjs/tabs/lib/TabsList.d.ts +998 -0
  14. package/dist/commonjs/tabs/lib/TabsList.d.ts.map +1 -0
  15. package/dist/commonjs/tabs/lib/TabsList.js +121 -0
  16. package/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts +650 -0
  17. package/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts.map +1 -0
  18. package/dist/commonjs/tabs/lib/TabsOverflowButton.js +28 -0
  19. package/dist/commonjs/tabs/lib/TabsPanel.d.ts +654 -0
  20. package/dist/commonjs/tabs/lib/TabsPanel.d.ts.map +1 -0
  21. package/dist/commonjs/tabs/lib/TabsPanel.js +42 -0
  22. package/dist/commonjs/tabs/lib/TabsPanels.d.ts +320 -0
  23. package/dist/commonjs/tabs/lib/TabsPanels.d.ts.map +1 -0
  24. package/dist/commonjs/tabs/lib/TabsPanels.js +13 -0
  25. package/dist/commonjs/tabs/lib/useTabsModel.d.ts +5924 -0
  26. package/dist/commonjs/tabs/lib/useTabsModel.d.ts.map +1 -0
  27. package/dist/commonjs/tabs/lib/useTabsModel.js +128 -0
  28. package/dist/es6/index.d.ts +1 -0
  29. package/dist/es6/index.d.ts.map +1 -1
  30. package/dist/es6/index.js +1 -0
  31. package/dist/es6/tabs/index.d.ts +7 -0
  32. package/dist/es6/tabs/index.d.ts.map +1 -0
  33. package/dist/es6/tabs/index.js +6 -0
  34. package/dist/es6/tabs/lib/Tabs.d.ts +9555 -0
  35. package/dist/es6/tabs/lib/Tabs.d.ts.map +1 -0
  36. package/dist/es6/tabs/lib/Tabs.js +124 -0
  37. package/dist/es6/tabs/lib/TabsItem.d.ts +719 -0
  38. package/dist/es6/tabs/lib/TabsItem.d.ts.map +1 -0
  39. package/dist/es6/tabs/lib/TabsItem.js +47 -0
  40. package/dist/es6/tabs/lib/TabsList.d.ts +998 -0
  41. package/dist/es6/tabs/lib/TabsList.d.ts.map +1 -0
  42. package/dist/es6/tabs/lib/TabsList.js +95 -0
  43. package/dist/es6/tabs/lib/TabsOverflowButton.d.ts +650 -0
  44. package/dist/es6/tabs/lib/TabsOverflowButton.d.ts.map +1 -0
  45. package/dist/es6/tabs/lib/TabsOverflowButton.js +25 -0
  46. package/dist/es6/tabs/lib/TabsPanel.d.ts +654 -0
  47. package/dist/es6/tabs/lib/TabsPanel.d.ts.map +1 -0
  48. package/dist/es6/tabs/lib/TabsPanel.js +36 -0
  49. package/dist/es6/tabs/lib/TabsPanels.d.ts +320 -0
  50. package/dist/es6/tabs/lib/TabsPanels.d.ts.map +1 -0
  51. package/dist/es6/tabs/lib/TabsPanels.js +10 -0
  52. package/dist/es6/tabs/lib/useTabsModel.d.ts +5924 -0
  53. package/dist/es6/tabs/lib/useTabsModel.d.ts.map +1 -0
  54. package/dist/es6/tabs/lib/useTabsModel.js +122 -0
  55. package/index.ts +1 -0
  56. package/package.json +4 -4
  57. package/tabs/index.ts +7 -0
  58. package/tabs/lib/Tabs.tsx +135 -0
  59. package/tabs/lib/TabsItem.tsx +274 -0
  60. package/tabs/lib/TabsList.tsx +181 -0
  61. package/tabs/lib/TabsOverflowButton.tsx +61 -0
  62. package/tabs/lib/TabsPanel.tsx +77 -0
  63. package/tabs/lib/TabsPanels.tsx +20 -0
  64. package/tabs/lib/useTabsModel.tsx +141 -0
  65. package/tabs/package.json +6 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabsList.d.ts","sourceRoot":"","sources":["../../../../tabs/lib/TabsList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EACL,YAAY,EAMb,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAC,IAAI,EAAc,MAAM,kCAAkC,CAAC;AAMnE,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,GAAG,CAAE,SAAQ,IAAI,CAAC,YAAY,CAAC,OAAO,IAAI,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC;IAC/F;;;;;;;;OAQG;IACH,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;IAC3D,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAClC;AAyCD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAqBX,aAAa,CAAC,cAAc,CAAC;EAKjD,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAPF,aAAa,CAAC,cAAc,CAAC;;;;;;;;;;iIAiBlD,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;wBA0C1B,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBpB,CAAC"}
@@ -0,0 +1,95 @@
1
+ import { jsxs as _jsxs } from "react/jsx-runtime";
2
+ import * as React from 'react';
3
+ import { useListRenderItems, useListResetCursorOnBlur, useOverflowListMeasure, } from '@workday/canvas-kit-react/collection';
4
+ import { composeHooks, createElemPropsHook, createSubcomponent, useLocalRef, useModalityType, } from '@workday/canvas-kit-react/common';
5
+ import { mergeStyles } from '@workday/canvas-kit-react/layout';
6
+ import { createStencil } from '@workday/canvas-kit-styling';
7
+ import { system } from '@workday/canvas-tokens-web';
8
+ import { useTabsModel } from './useTabsModel';
9
+ function getScrollPercentage(elem, direction) {
10
+ if (direction === 'vertical') {
11
+ if (elem.scrollHeight > elem.clientHeight) {
12
+ const percentage = elem.scrollTop / (elem.scrollHeight - elem.clientHeight);
13
+ return percentage;
14
+ }
15
+ else {
16
+ return -1;
17
+ }
18
+ }
19
+ if (elem.scrollWidth > elem.clientWidth) {
20
+ const percentage = elem.scrollLeft / (elem.scrollWidth - elem.clientWidth);
21
+ return percentage;
22
+ }
23
+ else {
24
+ return -1;
25
+ }
26
+ }
27
+ function getScrollPosition(elem, direction) {
28
+ const percentage = getScrollPercentage(elem, direction);
29
+ return percentage <= -1
30
+ ? undefined
31
+ : percentage > 0.99
32
+ ? 'end'
33
+ : percentage > 0.01
34
+ ? 'middle'
35
+ : 'start';
36
+ }
37
+ function setScrollPosition(elem, scrollPosition) {
38
+ if (scrollPosition) {
39
+ elem.setAttribute('data-scroll-position', scrollPosition);
40
+ }
41
+ else {
42
+ elem.removeAttribute('data-scroll-position');
43
+ }
44
+ }
45
+ export const useTabOverflowScroll = createElemPropsHook(useTabsModel)((_model, ref, elemProps = {}) => {
46
+ const direction = elemProps['aria-orientation'] || 'vertical';
47
+ const { localRef, elementRef } = useLocalRef(ref);
48
+ React.useLayoutEffect(() => {
49
+ if (!localRef.current) {
50
+ return;
51
+ }
52
+ setScrollPosition(localRef.current, getScrollPosition(localRef.current, direction));
53
+ }, [localRef, direction]);
54
+ return {
55
+ ref: elementRef,
56
+ onScroll: (event) => {
57
+ const elem = event.currentTarget;
58
+ setScrollPosition(elem, getScrollPosition(elem, direction));
59
+ },
60
+ };
61
+ });
62
+ export const useTabsList = composeHooks(useTabOverflowScroll, createElemPropsHook(useTabsModel)(model => {
63
+ return {
64
+ role: 'tablist',
65
+ 'aria-orientation': model.state.orientation,
66
+ };
67
+ }), useOverflowListMeasure, useListResetCursorOnBlur);
68
+ export const tabsListStencil = createStencil({
69
+ base: { name: "4akedt", styles: "box-sizing:border-box;display:flex;position:relative;gap:var(--cnvs-sys-gap-sm, var(--cnvs-sys-space-x2, 0.5rem));@media screen and (max-width: 768px){padding-inline:var(--cnvs-sys-padding-md, var(--cnvs-sys-space-x4, 1rem));}" },
70
+ modifiers: {
71
+ modality: {
72
+ touch: { name: "py9od", styles: "overflow-x:auto;padding-inline:0;&[data-scroll-position=\"start\"]{mask-image:linear-gradient(to right, white 80%, transparent);}&[data-scroll-position=\"middle\"]{mask-image:linear-gradient(to left, white 80%, transparent), linear-gradient(to right, white 80%, transparent);mask-composite:intersect;}&[data-scroll-position=\"end\"]{mask-image:linear-gradient(to left, white 80%, transparent);}" },
73
+ mouse: { name: "22pujo", styles: "" },
74
+ pen: { name: "oxkjx", styles: "" }
75
+ },
76
+ isDragging: {
77
+ true: { name: "2457es", styles: "" },
78
+ false: { name: "10ucd5", styles: "" }
79
+ },
80
+ direction: {
81
+ left: { name: "3j7ivq", styles: "" },
82
+ right: { name: "2tko87", styles: "" }
83
+ }
84
+ }
85
+ }, "tabs-list-adfaf8");
86
+ export const TabsList = createSubcomponent('div')({
87
+ displayName: 'Tabs.List',
88
+ modelHook: useTabsModel,
89
+ elemPropsHook: useTabsList,
90
+ })(({ children, overflowButton, ...elemProps }, Element, model) => {
91
+ const modality = useModalityType();
92
+ return (_jsxs(Element, { ...mergeStyles(elemProps, tabsListStencil({
93
+ modality: modality,
94
+ })), children: [useListRenderItems(model, children), overflowButton] }));
95
+ });