@servicetitan/design-system 12.8.0 → 12.9.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 (104) hide show
  1. package/dist/components/DatePicker/DatePicker.d.ts +4 -10
  2. package/dist/components/DatePicker/DatePicker.js +46 -61
  3. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  4. package/dist/components/DatePicker/InputDateMask.d.ts +1 -1
  5. package/dist/components/DateRangePicker/DateRangePicker.d.ts +3 -3
  6. package/dist/components/Dialog/Dialog.d.ts +3 -3
  7. package/dist/components/Drawer/Drawer.d.ts +3 -3
  8. package/dist/components/Drawer/Drawer.js +11 -23
  9. package/dist/components/Drawer/Drawer.js.map +1 -1
  10. package/dist/components/Input/Input.js +3 -6
  11. package/dist/components/Input/Input.js.map +1 -1
  12. package/dist/components/Modal/Modal.d.ts +3 -3
  13. package/dist/components/Modal/Modal.js.map +1 -1
  14. package/dist/components/Modal/components.d.ts +3 -3
  15. package/dist/components/Modal/components.js +6 -18
  16. package/dist/components/Modal/components.js.map +1 -1
  17. package/dist/components/Popover/Popover.d.ts +3 -3
  18. package/dist/components/ProgressTracker/ProgressTracker.css +13 -1
  19. package/dist/components/ProgressTracker/ProgressTracker.css.map +1 -1
  20. package/dist/components/ProgressTracker/ProgressTracker.d.ts +6 -0
  21. package/dist/components/ProgressTracker/ProgressTracker.js +10 -2
  22. package/dist/components/ProgressTracker/ProgressTracker.js.map +1 -1
  23. package/dist/components/ProgressTracker/ProgressTrackerDivider.d.ts +1 -0
  24. package/dist/components/ProgressTracker/ProgressTrackerDivider.js +3 -1
  25. package/dist/components/ProgressTracker/ProgressTrackerDivider.js.map +1 -1
  26. package/dist/components/ProgressTracker/ProgressTrackerStep.css +73 -18
  27. package/dist/components/ProgressTracker/ProgressTrackerStep.css.map +1 -1
  28. package/dist/components/ProgressTracker/ProgressTrackerStep.d.ts +3 -0
  29. package/dist/components/ProgressTracker/ProgressTrackerStep.js +29 -7
  30. package/dist/components/ProgressTracker/ProgressTrackerStep.js.map +1 -1
  31. package/dist/components/ProgressTracker/index.css +86 -19
  32. package/dist/components/ProgressTracker/index.css.map +1 -1
  33. package/dist/components/Scroll/Scroll.css +6 -0
  34. package/dist/components/Scroll/Scroll.css.map +1 -1
  35. package/dist/components/Scroll/Scroll.js +7 -1
  36. package/dist/components/Scroll/Scroll.js.map +1 -1
  37. package/dist/components/Scroll/index.css +6 -0
  38. package/dist/components/Scroll/index.css.map +1 -1
  39. package/dist/components/Tab/Tab.js +1 -1
  40. package/dist/components/Tab/Tab.js.map +1 -1
  41. package/dist/components/Takeover/Takeover.d.ts +3 -3
  42. package/dist/components/Takeover/Takeover.js +9 -21
  43. package/dist/components/Takeover/Takeover.js.map +1 -1
  44. package/dist/components/TimePicker/TimePicker.js +10 -7
  45. package/dist/components/TimePicker/TimePicker.js.map +1 -1
  46. package/dist/components/TimePicker/components/TimePickerOptionList.d.ts +1 -0
  47. package/dist/components/TimePicker/components/TimePickerOptionList.js +8 -2
  48. package/dist/components/TimePicker/components/TimePickerOptionList.js.map +1 -1
  49. package/dist/components/TimePicker/utils/getClosestOption.js +1 -1
  50. package/dist/components/TimePicker/utils/getClosestOption.js.map +1 -1
  51. package/dist/components/TimePicker/utils/utils.js +0 -1
  52. package/dist/components/TimePicker/utils/utils.js.map +1 -1
  53. package/dist/components/index.css +92 -19
  54. package/dist/components/index.css.map +1 -1
  55. package/dist/global/index.css +1 -1
  56. package/dist/global/version.css +1 -1
  57. package/dist/hooks/index.d.ts +1 -0
  58. package/dist/hooks/index.js +1 -0
  59. package/dist/hooks/index.js.map +1 -1
  60. package/dist/hooks/useFocusTrap/index.d.ts +1 -0
  61. package/dist/hooks/useFocusTrap/index.js +2 -0
  62. package/dist/hooks/useFocusTrap/index.js.map +1 -0
  63. package/dist/hooks/useFocusTrap/internal/index.d.ts +5 -0
  64. package/dist/hooks/useFocusTrap/internal/index.js +6 -0
  65. package/dist/hooks/useFocusTrap/internal/index.js.map +1 -0
  66. package/dist/hooks/useFocusTrap/internal/useAutoFocus.d.ts +6 -0
  67. package/dist/hooks/useFocusTrap/internal/useAutoFocus.js +23 -0
  68. package/dist/hooks/useFocusTrap/internal/useAutoFocus.js.map +1 -0
  69. package/dist/hooks/useFocusTrap/internal/useAutoFocusContainer.d.ts +11 -0
  70. package/dist/hooks/useFocusTrap/internal/useAutoFocusContainer.js +28 -0
  71. package/dist/hooks/useFocusTrap/internal/useAutoFocusContainer.js.map +1 -0
  72. package/dist/hooks/useFocusTrap/internal/useDisableClickOutside.d.ts +9 -0
  73. package/dist/hooks/useFocusTrap/internal/useDisableClickOutside.js +28 -0
  74. package/dist/hooks/useFocusTrap/internal/useDisableClickOutside.js.map +1 -0
  75. package/dist/hooks/useFocusTrap/internal/useFocusLock.d.ts +6 -0
  76. package/dist/hooks/useFocusTrap/internal/useFocusLock.js +39 -0
  77. package/dist/hooks/useFocusTrap/internal/useFocusLock.js.map +1 -0
  78. package/dist/hooks/useFocusTrap/internal/useRestoreFocus.d.ts +3 -0
  79. package/dist/hooks/useFocusTrap/internal/useRestoreFocus.js +12 -0
  80. package/dist/hooks/useFocusTrap/internal/useRestoreFocus.js.map +1 -0
  81. package/dist/hooks/useFocusTrap/internal/utils.d.ts +23 -0
  82. package/dist/hooks/useFocusTrap/internal/utils.js +161 -0
  83. package/dist/hooks/useFocusTrap/internal/utils.js.map +1 -0
  84. package/dist/hooks/useFocusTrap/useFocusTrap.d.ts +37 -0
  85. package/dist/hooks/useFocusTrap/useFocusTrap.js +34 -0
  86. package/dist/hooks/useFocusTrap/useFocusTrap.js.map +1 -0
  87. package/dist/internal/Popper/Popper.d.ts +3 -3
  88. package/dist/internal/Popper/Popper.js +9 -17
  89. package/dist/internal/Popper/Popper.js.map +1 -1
  90. package/dist/system-light.css +1 -1
  91. package/dist/system-light.min.css +1 -1
  92. package/dist/system.css +93 -20
  93. package/dist/system.css.map +1 -1
  94. package/dist/system.min.css +2 -2
  95. package/dist/utilities/index.d.ts +0 -1
  96. package/dist/utilities/index.js +0 -1
  97. package/dist/utilities/index.js.map +1 -1
  98. package/package.json +130 -130
  99. package/dist/utilities/FocusTrap/FocusTrap.d.ts +0 -8
  100. package/dist/utilities/FocusTrap/FocusTrap.js +0 -52
  101. package/dist/utilities/FocusTrap/FocusTrap.js.map +0 -1
  102. package/dist/utilities/FocusTrap/index.d.ts +0 -1
  103. package/dist/utilities/FocusTrap/index.js +0 -2
  104. package/dist/utilities/FocusTrap/index.js.map +0 -1
@@ -4,7 +4,6 @@ export * from './debounce';
4
4
  export * from './ConditionalWrapper';
5
5
  export * from './DefaultPortalContext';
6
6
  export * from './getContent';
7
- export * from './FocusTrap';
8
7
  export * from './isElementOfType';
9
8
  export * from './justify-props';
10
9
  export * from './keyCodes';
@@ -4,7 +4,6 @@ export * from './debounce';
4
4
  export * from './ConditionalWrapper';
5
5
  export * from './DefaultPortalContext';
6
6
  export * from './getContent';
7
- export * from './FocusTrap';
8
7
  export * from './isElementOfType';
9
8
  export * from './justify-props';
10
9
  export * from './keyCodes';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utilities/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utilities/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC"}
package/package.json CHANGED
@@ -1,132 +1,132 @@
1
1
  {
2
- "name": "@servicetitan/design-system",
3
- "version": "12.8.0",
4
- "description": "",
5
- "homepage": "https://anvil.servicetitan.com",
6
- "repository": {
7
- "type": "git",
8
- "url": "github:servicetitan/anvil",
9
- "directory": "packages/design-system"
10
- },
11
- "storybook": {
12
- "url": "https://anvil.st.dev"
13
- },
14
- "main": "./dist/system.js",
15
- "sideEffects": [
16
- "**/*.css"
17
- ],
18
- "scripts": {
19
- "start": "npm run watch --silent",
20
- "build": "npm run build:init && run-p build:css build:js --silent",
21
- "build:init": "run-s build:init:clean build:init:make-dir --silent",
22
- "build:init:clean": "rimraf dist",
23
- "build:init:make-dir": "mkdir dist",
24
- "build:css": "run-s build:css:version build:css:lint build:css:compile build:css:autoprefixer build:css:minify build:css:message --silent",
25
- "build:css:version": "node ./scripts/generate-version.js",
26
- "build:css:lint": "stylelint \"**/!(dist)/*.scss\" --syntax scss || echo \"❌ Stylelint Failed\"",
27
- "build:css:compile": "sass --quiet-deps --load-path=node_modules/@servicetitan/tokens/core/ --load-path=node_modules src:dist",
28
- "build:css:autoprefixer": "postcss -r dist/system.css",
29
- "build:css:minify": "run-p build:css:minify:system build:css:minify:system-light",
30
- "build:css:minify:system": "cleancss dist/system.css --output dist/system.min.css",
31
- "build:css:minify:system-light": "cleancss dist/system-light.css --output dist/system-light.min.css",
32
- "prebuild:css:message": "echo \" \"",
33
- "build:css:message": "echo \"🎉 Anvil CSS built\"",
34
- "postbuild:css:message": "echo \" \"",
35
- "build:js": "run-s build:js:lint build:js:compile build:js:message --silent",
36
- "build:js:lint": "eslint . || echo \"❌ ESLint Failed\"",
37
- "build:js:compile": "tsc",
38
- "prebuild:js:message": "echo \" \"",
39
- "build:js:message": "echo \"🎉 Anvil React Components built\"",
40
- "postbuild:js:message": "echo \" \"",
41
- "watch": "run-p watch:deps watch:css watch:js --silent",
42
- "watch:deps": "run-p watch:deps:tokens watch:deps:semantic --silent",
43
- "watch:deps:tokens": "chokidar \"node_modules/@servicetitan/tokens/core/*.scss\" --follow-symlinks --command \"npm run build:css --silent\"",
44
- "watch:deps:semantic": "chokidar \"node_modules/@servicetitan/semantic/dist/semantic.css\" --follow-symlinks --command \"npm run build:css --silent\"",
45
- "watch:css": "chokidar \"src/**/*.scss\" --ignore \"src/**/version.scss\" --command \"npm run build:css --silent\"",
46
- "watch:js": "chokidar \"src/**/*.{tsx,ts,js}\" -i \"src/**/*.stories.tsx\" -c \"npm run build:js\"",
47
- "version": "npm run build:css",
48
- "lint": "run-p build:css:lint build:js:lint --silent",
49
- "test": "jest"
50
- },
51
- "files": [
52
- "dist",
53
- "readme.md"
54
- ],
55
- "publishConfig": {
56
- "access": "public"
57
- },
58
- "dependencies": {
59
- "@popperjs/core": "2.11.0",
60
- "@progress/kendo-data-query": "~1.6.0",
61
- "@progress/kendo-drawing": "~1.11.0",
62
- "@progress/kendo-licensing": "~1.2.0",
63
- "@progress/kendo-react-animation": "~5.5.0",
64
- "@progress/kendo-react-buttons": "~5.5.0",
65
- "@progress/kendo-react-data-tools": "~5.5.0",
66
- "@progress/kendo-react-dateinputs": "~5.5.0",
67
- "@progress/kendo-react-dropdowns": "~5.5.0",
68
- "@progress/kendo-react-grid": "~5.5.0",
69
- "@progress/kendo-react-inputs": "~5.5.0",
70
- "@progress/kendo-react-intl": "~5.5.0",
71
- "@progress/kendo-react-pdf": "~5.5.0",
72
- "@progress/kendo-react-popup": "~5.5.0",
73
- "@progress/kendo-react-treeview": "~5.5.0",
74
- "@react-aria/focus": "^3.2.3",
75
- "@react-hook/window-size": "^3.0.7",
76
- "@servicetitan/anvil-fonts": "^12.8.0",
77
- "@servicetitan/anvil-icons": "^12.8.0",
78
- "@servicetitan/anvil-themes": "^12.8.0",
79
- "@servicetitan/tokens": "^12.2.0",
80
- "classnames": "2.3.1",
81
- "framer-motion": "4.1.17",
82
- "luxon": "^2.4.0",
83
- "memoize-one": "5.2.1",
84
- "moment": "2.29.4",
85
- "nanoid": "3.1.31",
86
- "react-animate-height": "^2.0.22",
87
- "react-focus-lock": "^2.5.2",
88
- "react-input-mask": "2.0.4",
89
- "react-is": "17.0.2",
90
- "react-popper": "2.2.5",
91
- "react-textarea-autosize": "8.3.3",
92
- "react-transition-group": "4.4.2",
93
- "semantic-ui-react": "2.0.3",
94
- "tinycolor2": "1.4.2"
95
- },
96
- "peerDependencies": {
97
- "react": "^16 || ^17",
98
- "react-dom": "^16 || ^17"
99
- },
100
- "devDependencies": {
101
- "@lib/semantic": "^12.8.0",
102
- "@progress/kendo-theme-default": "~5.5.0",
103
- "@servicetitan/anvil-css-utilities": "^12.8.0",
104
- "@testing-library/jest-dom": "5.14.1",
105
- "@testing-library/react": "12.1.0",
106
- "@testing-library/user-event": "13.2.1",
107
- "@types/jest": "27.0.1",
108
- "@types/luxon": "^2.3.2",
109
- "@types/node": "16.9.1",
110
- "@types/react": "17.0.21",
111
- "@types/react-dom": "17.0.9",
112
- "@types/react-input-mask": "2.0.5",
113
- "@types/react-is": "17.0.2",
114
- "@types/react-transition-group": "4.4.2",
115
- "autoprefixer": "10.3.4",
116
- "clean-css-cli": "5.3.3",
117
- "core-js": "3.17.3",
118
- "eslint": "7.32.0",
119
- "jest": "27.2.0",
120
- "npm-run-all": "4.1.5",
121
- "postcss": "8.3.6",
122
- "postcss-cli": "8.3.1",
123
- "react": "17.0.2",
124
- "react-dom": "17.0.2",
125
- "rimraf": "3.0.2",
126
- "sass": "1.41.0",
127
- "stylelint": "13.13.1",
128
- "ts-jest": "27.0.5",
129
- "typescript": "4.4.3"
130
- },
131
- "gitHead": "26c56961e8ed1be05aa98cdb352812df1f343467"
2
+ "name": "@servicetitan/design-system",
3
+ "version": "12.9.0",
4
+ "description": "",
5
+ "homepage": "https://anvil.servicetitan.com",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "github:servicetitan/anvil",
9
+ "directory": "packages/design-system"
10
+ },
11
+ "storybook": {
12
+ "url": "https://anvil.st.dev"
13
+ },
14
+ "main": "./dist/system.js",
15
+ "sideEffects": [
16
+ "**/*.css"
17
+ ],
18
+ "scripts": {
19
+ "start": "npm run watch --silent",
20
+ "build": "npm run build:init && run-p build:css build:js --silent",
21
+ "build:init": "run-s build:init:clean build:init:make-dir --silent",
22
+ "build:init:clean": "rimraf dist",
23
+ "build:init:make-dir": "mkdir dist",
24
+ "build:css": "run-s build:css:version build:css:lint build:css:compile build:css:autoprefixer build:css:minify build:css:message --silent",
25
+ "build:css:version": "node ./scripts/generate-version.js",
26
+ "build:css:lint": "stylelint \"**/!(dist)/*.scss\" --syntax scss || echo \"❌ Stylelint Failed\"",
27
+ "build:css:compile": "sass --quiet-deps --load-path=node_modules/@servicetitan/tokens/core/ --load-path=node_modules src:dist",
28
+ "build:css:autoprefixer": "postcss -r dist/system.css",
29
+ "build:css:minify": "run-p build:css:minify:system build:css:minify:system-light",
30
+ "build:css:minify:system": "cleancss dist/system.css --output dist/system.min.css",
31
+ "build:css:minify:system-light": "cleancss dist/system-light.css --output dist/system-light.min.css",
32
+ "prebuild:css:message": "echo \" \"",
33
+ "build:css:message": "echo \"🎉 Anvil CSS built\"",
34
+ "postbuild:css:message": "echo \" \"",
35
+ "build:js": "run-s build:js:lint build:js:compile build:js:message --silent",
36
+ "build:js:lint": "eslint . || echo \"❌ ESLint Failed\"",
37
+ "build:js:compile": "tsc",
38
+ "prebuild:js:message": "echo \" \"",
39
+ "build:js:message": "echo \"🎉 Anvil React Components built\"",
40
+ "postbuild:js:message": "echo \" \"",
41
+ "watch": "run-p watch:deps watch:css watch:js --silent",
42
+ "watch:deps": "run-p watch:deps:tokens watch:deps:semantic --silent",
43
+ "watch:deps:tokens": "chokidar \"node_modules/@servicetitan/tokens/core/*.scss\" --follow-symlinks --command \"npm run build:css --silent\"",
44
+ "watch:deps:semantic": "chokidar \"node_modules/@servicetitan/semantic/dist/semantic.css\" --follow-symlinks --command \"npm run build:css --silent\"",
45
+ "watch:css": "chokidar \"src/**/*.scss\" --ignore \"src/**/version.scss\" --command \"npm run build:css --silent\"",
46
+ "watch:js": "chokidar \"src/**/*.{tsx,ts,js}\" -i \"src/**/*.stories.tsx\" -c \"npm run build:js\"",
47
+ "version": "npm run build:css",
48
+ "lint": "run-p build:css:lint build:js:lint --silent",
49
+ "test": "jest"
50
+ },
51
+ "files": [
52
+ "dist",
53
+ "readme.md"
54
+ ],
55
+ "publishConfig": {
56
+ "access": "public"
57
+ },
58
+ "dependencies": {
59
+ "@popperjs/core": "2.11.0",
60
+ "@progress/kendo-data-query": "~1.6.0",
61
+ "@progress/kendo-drawing": "~1.11.0",
62
+ "@progress/kendo-licensing": "~1.2.0",
63
+ "@progress/kendo-react-animation": "~5.5.0",
64
+ "@progress/kendo-react-buttons": "~5.5.0",
65
+ "@progress/kendo-react-data-tools": "~5.5.0",
66
+ "@progress/kendo-react-dateinputs": "~5.5.0",
67
+ "@progress/kendo-react-dropdowns": "~5.5.0",
68
+ "@progress/kendo-react-grid": "~5.5.0",
69
+ "@progress/kendo-react-inputs": "~5.5.0",
70
+ "@progress/kendo-react-intl": "~5.5.0",
71
+ "@progress/kendo-react-pdf": "~5.5.0",
72
+ "@progress/kendo-react-popup": "~5.5.0",
73
+ "@progress/kendo-react-treeview": "~5.5.0",
74
+ "@react-aria/focus": "^3.2.3",
75
+ "@react-hook/window-size": "^3.0.7",
76
+ "@servicetitan/anvil-fonts": "^12.9.0",
77
+ "@servicetitan/anvil-icons": "^12.9.0",
78
+ "@servicetitan/anvil-themes": "^12.9.0",
79
+ "@servicetitan/tokens": "^12.2.0",
80
+ "classnames": "2.3.1",
81
+ "framer-motion": "4.1.17",
82
+ "luxon": "^2.4.0",
83
+ "memoize-one": "5.2.1",
84
+ "moment": "2.29.4",
85
+ "nanoid": "3.1.31",
86
+ "react-animate-height": "^2.0.22",
87
+ "react-focus-lock": "^2.5.2",
88
+ "react-input-mask": "2.0.4",
89
+ "react-is": "17.0.2",
90
+ "react-popper": "2.2.5",
91
+ "react-textarea-autosize": "8.3.3",
92
+ "react-transition-group": "4.4.2",
93
+ "semantic-ui-react": "2.0.3",
94
+ "tinycolor2": "1.4.2"
95
+ },
96
+ "peerDependencies": {
97
+ "react": "^16 || ^17",
98
+ "react-dom": "^16 || ^17"
99
+ },
100
+ "devDependencies": {
101
+ "@lib/semantic": "^12.9.0",
102
+ "@progress/kendo-theme-default": "~5.5.0",
103
+ "@servicetitan/anvil-css-utilities": "^12.9.0",
104
+ "@testing-library/jest-dom": "5.14.1",
105
+ "@testing-library/react": "12.1.0",
106
+ "@testing-library/user-event": "13.2.1",
107
+ "@types/jest": "27.0.1",
108
+ "@types/luxon": "^2.3.2",
109
+ "@types/node": "16.9.1",
110
+ "@types/react": "17.0.21",
111
+ "@types/react-dom": "17.0.9",
112
+ "@types/react-input-mask": "2.0.5",
113
+ "@types/react-is": "17.0.2",
114
+ "@types/react-transition-group": "4.4.2",
115
+ "autoprefixer": "10.3.4",
116
+ "clean-css-cli": "5.3.3",
117
+ "core-js": "3.17.3",
118
+ "eslint": "7.32.0",
119
+ "jest": "27.2.0",
120
+ "npm-run-all": "4.1.5",
121
+ "postcss": "8.3.6",
122
+ "postcss-cli": "8.3.1",
123
+ "react": "17.0.2",
124
+ "react-dom": "17.0.2",
125
+ "rimraf": "3.0.2",
126
+ "sass": "1.41.0",
127
+ "stylelint": "13.13.1",
128
+ "ts-jest": "27.0.5",
129
+ "typescript": "4.4.3"
130
+ },
131
+ "gitHead": "d76d8fbc10a84810f3f9dd4b07d952ee0d4e6508"
132
132
  }
@@ -1,8 +0,0 @@
1
- import { FC, RefObject } from 'react';
2
- export interface FocusTrapProps {
3
- shards?: (HTMLElement | RefObject<any>)[];
4
- disabled?: boolean;
5
- allowClickOutside?: boolean;
6
- returnFocus?: boolean;
7
- }
8
- export declare const FocusTrap: FC<FocusTrapProps>;
@@ -1,52 +0,0 @@
1
- import React from 'react';
2
- import FocusLock from 'react-focus-lock';
3
- export const FocusTrap = ({ shards, disabled, children, allowClickOutside = true, returnFocus = true, }) => {
4
- const [disableTrap, setDisableTrap] = React.useState(disabled);
5
- const focusLockRef = React.useRef(null);
6
- function checkFocusElementContains(target) {
7
- const shardArray = shards ? [focusLockRef, ...shards] : [focusLockRef];
8
- const isTargetShardArray = shardArray.some((element) => {
9
- if (element === null || element === void 0 ? void 0 : element.current.contains(target))
10
- return true;
11
- return false;
12
- });
13
- if (isTargetShardArray) {
14
- setDisableTrap(false);
15
- return;
16
- }
17
- setDisableTrap(true);
18
- }
19
- /**
20
- * When focusTrap is not disabled and allowClickOutside is true,
21
- * - disable focusTrap when outside focusable element is clicked
22
- * - restore focusTrap when focusTrap element is clicked
23
- */
24
- React.useEffect(() => {
25
- function handleClickOutside(event) {
26
- var _a, _b;
27
- checkFocusElementContains((_b = (_a = event.composedPath) === null || _a === void 0 ? void 0 : _a.call(event)[0]) !== null && _b !== void 0 ? _b : event.target);
28
- }
29
- if (disabled || !allowClickOutside)
30
- return;
31
- document.addEventListener('mousedown', handleClickOutside);
32
- return () => document.removeEventListener('mousedown', handleClickOutside);
33
- // eslint-disable-next-line react-hooks/exhaustive-deps
34
- }, [disabled, allowClickOutside]);
35
- /**
36
- * When focusTrap is not disabled,
37
- * restore focusTrap when focusTrap element gets focus
38
- */
39
- React.useEffect(() => {
40
- setDisableTrap(disabled);
41
- function handleKeyboardFocus() {
42
- checkFocusElementContains(document.activeElement);
43
- }
44
- if (disabled)
45
- return;
46
- document.addEventListener('keydown', handleKeyboardFocus);
47
- return () => document.removeEventListener('keydown', handleKeyboardFocus);
48
- // eslint-disable-next-line react-hooks/exhaustive-deps
49
- }, [disabled]);
50
- return (React.createElement(FocusLock, { shards: shards, disabled: disableTrap, ref: focusLockRef, crossFrame: false, returnFocus: returnFocus }, children));
51
- };
52
- //# sourceMappingURL=FocusTrap.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FocusTrap.js","sourceRoot":"","sources":["../../../src/utilities/FocusTrap/FocusTrap.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAC7C,OAAO,SAAS,MAAM,kBAAkB,CAAC;AAgBzC,MAAM,CAAC,MAAM,SAAS,GAAuB,CAAC,EAC7C,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,iBAAiB,GAAG,IAAI,EACxB,WAAW,GAAG,IAAI,GAClB,EAAE,EAAE;IACJ,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC/D,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAExC,SAAS,yBAAyB,CAAC,MAAW;QAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QACvE,MAAM,kBAAkB,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,OAAY,EAAE,EAAE;YAC3D,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,IAAI,CAAC;YACnD,OAAO,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;QACH,IAAI,kBAAkB,EAAE;YACvB,cAAc,CAAC,KAAK,CAAC,CAAC;YACtB,OAAO;SACP;QACD,cAAc,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACpB,SAAS,kBAAkB,CAAC,KAAiB;;YAC5C,yBAAyB,CACxB,MAAA,MAAA,KAAK,CAAC,YAAY,+CAAlB,KAAK,EAAkB,CAAC,CAAC,mCAAI,KAAK,CAAC,MAAM,CACzC,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,IAAI,CAAC,iBAAiB;YAAE,OAAO;QAE3C,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QAC3D,OAAO,GAAG,EAAE,CACX,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QAE/D,uDAAuD;IACxD,CAAC,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAElC;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACpB,cAAc,CAAC,QAAQ,CAAC,CAAC;QAEzB,SAAS,mBAAmB;YAC3B,yBAAyB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,QAAQ;YAAE,OAAO;QACrB,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAC1D,OAAO,GAAG,EAAE,CACX,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAE9D,uDAAuD;IACxD,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,CACN,oBAAC,SAAS,IACT,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,WAAW,EACrB,GAAG,EAAE,YAAY,EACjB,UAAU,EAAE,KAAK,EACjB,WAAW,EAAE,WAAW,IAEvB,QAAQ,CACE,CACZ,CAAC;AACH,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export * from './FocusTrap';
@@ -1,2 +0,0 @@
1
- export * from './FocusTrap';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/FocusTrap/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC"}