@algolia/satellite 1.0.0-beta.174 → 1.0.0-beta.176

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 (181) hide show
  1. package/cjs/AutoComplete/AutoComplete.js +4 -9
  2. package/cjs/AutoComplete/components/AutoCompleteContext.d.ts +10 -0
  3. package/cjs/AutoComplete/components/AutoCompleteContext.js +29 -0
  4. package/cjs/AutoComplete/components/DefaultOptionItem.js +8 -2
  5. package/cjs/AutoComplete/index.d.ts +1 -1
  6. package/cjs/AutoComplete/index.js +4 -4
  7. package/cjs/Button/Button.tailwind.js +1 -0
  8. package/cjs/Button/PolymorphicButton.js +1 -1
  9. package/cjs/Dropdown/Dropdown.d.ts +1 -5
  10. package/cjs/Dropdown/Dropdown.js +12 -15
  11. package/cjs/Dropdown/DropdownButton.d.ts +3 -0
  12. package/cjs/Dropdown/DropdownButton.js +3 -0
  13. package/cjs/Dropdown/components/DropdownButtonItem.d.ts +1 -0
  14. package/cjs/Dropdown/components/DropdownButtonItem.js +5 -2
  15. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItem.d.ts +1 -0
  16. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItem.js +1 -0
  17. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroup.d.ts +1 -0
  18. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroup.js +1 -0
  19. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.d.ts +1 -0
  20. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.js +2 -0
  21. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.d.ts +1 -0
  22. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.js +1 -0
  23. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.d.ts +1 -0
  24. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.js +1 -0
  25. package/cjs/Dropdown/components/DropdownDivider.d.ts +1 -0
  26. package/cjs/Dropdown/components/DropdownDivider.js +1 -0
  27. package/cjs/Dropdown/components/DropdownFooterItem.d.ts +1 -0
  28. package/cjs/Dropdown/components/DropdownFooterItem.js +1 -0
  29. package/cjs/Dropdown/components/DropdownLinkItem.d.ts +1 -0
  30. package/cjs/Dropdown/components/DropdownLinkItem.js +5 -2
  31. package/cjs/Dropdown/components/DropdownRadioItem.d.ts +1 -0
  32. package/cjs/Dropdown/components/DropdownRadioItem.js +6 -2
  33. package/cjs/Dropdown/components/DropdownTitle.d.ts +1 -0
  34. package/cjs/Dropdown/components/DropdownTitle.js +1 -0
  35. package/cjs/Dropdown/components/DropdownToggleItem.d.ts +1 -0
  36. package/cjs/Dropdown/components/DropdownToggleItem.js +6 -2
  37. package/cjs/EmptyState/EmptyState.js +4 -9
  38. package/cjs/MenuButton/MenuButton.d.ts +13 -11
  39. package/cjs/MenuButton/MenuButton.js +15 -39
  40. package/cjs/MenuButton/components/Content.d.ts +4 -0
  41. package/cjs/MenuButton/components/Content.js +39 -0
  42. package/cjs/MenuButton/components/DefaultTrigger.d.ts +2 -2
  43. package/cjs/MenuButton/components/DefaultTrigger.js +5 -2
  44. package/cjs/MenuButton/components/items/Item.d.ts +15 -0
  45. package/cjs/MenuButton/components/items/{ButtonItem.js → Item.js} +14 -17
  46. package/cjs/MenuButton/components/items/index.d.ts +1 -1
  47. package/cjs/MenuButton/components/items/index.js +4 -4
  48. package/cjs/MenuButton/index.d.ts +1 -1
  49. package/cjs/MenuButton/index.js +11 -8
  50. package/cjs/MenuButton/useMenuItemProps.d.ts +3 -3
  51. package/cjs/MenuButton/useMenuItemProps.js +1 -1
  52. package/cjs/Satellite/locale.d.ts +6 -2
  53. package/cjs/Stepper/Step.d.ts +7 -0
  54. package/cjs/Stepper/Step.js +116 -0
  55. package/cjs/Stepper/Stepper.d.ts +42 -0
  56. package/cjs/Stepper/Stepper.js +146 -0
  57. package/cjs/Stepper/StepperContext.d.ts +12 -0
  58. package/cjs/Stepper/StepperContext.js +15 -0
  59. package/cjs/Stepper/index.d.ts +4 -0
  60. package/cjs/Stepper/index.js +51 -0
  61. package/cjs/Stepper/types.d.ts +26 -0
  62. package/cjs/Stepper/utils.d.ts +5 -0
  63. package/cjs/Stepper/utils.js +67 -0
  64. package/cjs/Tag/Tag.js +2 -2
  65. package/cjs/Toast/Toast.d.ts +6 -0
  66. package/cjs/{Flag/Flag.js → Toast/Toast.js} +50 -63
  67. package/cjs/{Flag/Flag.tailwind.d.ts → Toast/Toast.tailwind.d.ts} +2 -2
  68. package/cjs/{Flag/Flag.tailwind.js → Toast/Toast.tailwind.js} +7 -7
  69. package/cjs/Toast/Toasts.d.ts +21 -0
  70. package/cjs/Toast/Toasts.js +102 -0
  71. package/cjs/Toast/index.d.ts +4 -0
  72. package/cjs/{Flag → Toast}/index.js +9 -9
  73. package/cjs/Toast/types.d.ts +34 -0
  74. package/cjs/Toast/types.js +5 -0
  75. package/cjs/index.d.ts +1 -1
  76. package/cjs/index.js +4 -4
  77. package/cjs/styles/tailwind.config.js +1 -1
  78. package/cjs/types.d.ts +3 -3
  79. package/cjs/utils/getTextFromReactNode.d.ts +4 -0
  80. package/cjs/utils/getTextFromReactNode.js +20 -0
  81. package/esm/AutoComplete/AutoComplete.js +4 -9
  82. package/esm/AutoComplete/components/AutoCompleteContext.d.ts +10 -0
  83. package/esm/AutoComplete/components/AutoCompleteContext.js +23 -0
  84. package/esm/AutoComplete/components/DefaultOptionItem.js +8 -2
  85. package/esm/AutoComplete/index.d.ts +1 -1
  86. package/esm/AutoComplete/index.js +1 -1
  87. package/esm/Button/Button.tailwind.js +1 -0
  88. package/esm/Button/PolymorphicButton.js +1 -1
  89. package/esm/Dropdown/Dropdown.d.ts +1 -5
  90. package/esm/Dropdown/Dropdown.js +12 -15
  91. package/esm/Dropdown/DropdownButton.d.ts +3 -0
  92. package/esm/Dropdown/DropdownButton.js +3 -0
  93. package/esm/Dropdown/components/DropdownButtonItem.d.ts +1 -0
  94. package/esm/Dropdown/components/DropdownButtonItem.js +5 -2
  95. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItem.d.ts +1 -0
  96. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItem.js +1 -0
  97. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroup.d.ts +1 -0
  98. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroup.js +1 -0
  99. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.d.ts +1 -0
  100. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.js +2 -0
  101. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.d.ts +1 -0
  102. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.js +1 -0
  103. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.d.ts +1 -0
  104. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.js +1 -0
  105. package/esm/Dropdown/components/DropdownDivider.d.ts +1 -0
  106. package/esm/Dropdown/components/DropdownDivider.js +2 -0
  107. package/esm/Dropdown/components/DropdownFooterItem.d.ts +1 -0
  108. package/esm/Dropdown/components/DropdownFooterItem.js +1 -0
  109. package/esm/Dropdown/components/DropdownLinkItem.d.ts +1 -0
  110. package/esm/Dropdown/components/DropdownLinkItem.js +5 -2
  111. package/esm/Dropdown/components/DropdownRadioItem.d.ts +1 -0
  112. package/esm/Dropdown/components/DropdownRadioItem.js +6 -2
  113. package/esm/Dropdown/components/DropdownTitle.d.ts +1 -0
  114. package/esm/Dropdown/components/DropdownTitle.js +1 -0
  115. package/esm/Dropdown/components/DropdownToggleItem.d.ts +1 -0
  116. package/esm/Dropdown/components/DropdownToggleItem.js +6 -2
  117. package/esm/EmptyState/EmptyState.js +4 -9
  118. package/esm/MenuButton/MenuButton.d.ts +13 -11
  119. package/esm/MenuButton/MenuButton.js +15 -39
  120. package/esm/MenuButton/components/Content.d.ts +4 -0
  121. package/esm/MenuButton/components/Content.js +32 -0
  122. package/esm/MenuButton/components/DefaultTrigger.d.ts +2 -2
  123. package/esm/MenuButton/components/DefaultTrigger.js +5 -2
  124. package/esm/MenuButton/components/items/Item.d.ts +15 -0
  125. package/esm/MenuButton/components/items/{ButtonItem.js → Item.js} +13 -16
  126. package/esm/MenuButton/components/items/index.d.ts +1 -1
  127. package/esm/MenuButton/components/items/index.js +1 -1
  128. package/esm/MenuButton/index.d.ts +1 -1
  129. package/esm/MenuButton/index.js +1 -1
  130. package/esm/MenuButton/useMenuItemProps.d.ts +3 -3
  131. package/esm/MenuButton/useMenuItemProps.js +1 -1
  132. package/esm/Satellite/locale.d.ts +6 -2
  133. package/esm/Stepper/Step.d.ts +7 -0
  134. package/esm/Stepper/Step.js +110 -0
  135. package/esm/Stepper/Stepper.d.ts +42 -0
  136. package/esm/Stepper/Stepper.js +139 -0
  137. package/esm/Stepper/StepperContext.d.ts +12 -0
  138. package/esm/Stepper/StepperContext.js +9 -0
  139. package/esm/Stepper/index.d.ts +4 -0
  140. package/esm/Stepper/index.js +4 -0
  141. package/esm/Stepper/types.d.ts +26 -0
  142. package/esm/Stepper/utils.d.ts +5 -0
  143. package/esm/Stepper/utils.js +61 -0
  144. package/esm/Tag/Tag.js +3 -3
  145. package/esm/Toast/Toast.d.ts +6 -0
  146. package/esm/{Flag/Flag.js → Toast/Toast.js} +46 -62
  147. package/esm/{Flag/Flag.tailwind.d.ts → Toast/Toast.tailwind.d.ts} +2 -2
  148. package/esm/{Flag/Flag.tailwind.js → Toast/Toast.tailwind.js} +7 -7
  149. package/esm/Toast/Toasts.d.ts +21 -0
  150. package/esm/Toast/Toasts.js +93 -0
  151. package/esm/Toast/index.d.ts +4 -0
  152. package/esm/Toast/index.js +4 -0
  153. package/esm/Toast/types.d.ts +34 -0
  154. package/esm/Toast/types.js +1 -0
  155. package/esm/index.d.ts +1 -1
  156. package/esm/index.js +1 -1
  157. package/esm/styles/tailwind.config.js +1 -1
  158. package/esm/types.d.ts +3 -3
  159. package/esm/utils/getTextFromReactNode.d.ts +4 -0
  160. package/esm/utils/getTextFromReactNode.js +15 -0
  161. package/package.json +2 -1
  162. package/satellite.min.css +1 -1
  163. package/cjs/AutoComplete/components/AutocompleteContext.d.ts +0 -5
  164. package/cjs/AutoComplete/components/AutocompleteContext.js +0 -19
  165. package/cjs/Flag/Flag.d.ts +0 -11
  166. package/cjs/Flag/Flags.d.ts +0 -48
  167. package/cjs/Flag/Flags.js +0 -90
  168. package/cjs/Flag/index.d.ts +0 -4
  169. package/cjs/Flag/types.d.ts +0 -27
  170. package/cjs/MenuButton/components/items/ButtonItem.d.ts +0 -14
  171. package/esm/AutoComplete/components/AutocompleteContext.d.ts +0 -5
  172. package/esm/AutoComplete/components/AutocompleteContext.js +0 -13
  173. package/esm/Flag/Flag.d.ts +0 -11
  174. package/esm/Flag/Flags.d.ts +0 -48
  175. package/esm/Flag/Flags.js +0 -83
  176. package/esm/Flag/index.d.ts +0 -4
  177. package/esm/Flag/index.js +0 -4
  178. package/esm/Flag/types.d.ts +0 -27
  179. package/esm/MenuButton/components/items/ButtonItem.d.ts +0 -14
  180. /package/cjs/{Flag → Stepper}/types.js +0 -0
  181. /package/esm/{Flag → Stepper}/types.js +0 -0
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = exports.Stepper = void 0;
8
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
+ var _clsx = _interopRequireDefault(require("clsx"));
13
+ var _react = require("react");
14
+ var _Satellite = require("../Satellite");
15
+ var _satellitePrefixer = _interopRequireDefault(require("../styles/helpers/satellitePrefixer"));
16
+ var _Step = require("./Step");
17
+ var _StepperContext = require("./StepperContext");
18
+ var _utils = require("./utils");
19
+ var _jsxRuntime = require("react/jsx-runtime");
20
+ var _templateObject;
21
+ var _excluded = ["steps", "activeStep", "onStepChange", "size", "connectors", "locale", "className"];
22
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24
+ var DEFAULT_TAG_LOCALE = {
25
+ disabledStep: function disabledStep(stepName) {
26
+ return "".concat(stepName, " disabled");
27
+ },
28
+ activeStep: function activeStep(stepName) {
29
+ return "".concat(stepName, " active");
30
+ },
31
+ incompletedStep: function incompletedStep(stepName) {
32
+ return "".concat(stepName, " incompleted");
33
+ },
34
+ completedStep: function completedStep(stepName) {
35
+ return "".concat(stepName, " completed");
36
+ }
37
+ };
38
+ var Stepper = exports.Stepper = function Stepper(_ref) {
39
+ var steps = _ref.steps,
40
+ customActiveStep = _ref.activeStep,
41
+ _onStepChange = _ref.onStepChange,
42
+ _ref$size = _ref.size,
43
+ size = _ref$size === void 0 ? "default" : _ref$size,
44
+ _ref$connectors = _ref.connectors,
45
+ connectors = _ref$connectors === void 0 ? true : _ref$connectors,
46
+ propsLocale = _ref.locale,
47
+ className = _ref.className,
48
+ props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
49
+ if (process.env.NODE_ENV !== "production") {
50
+ var stepsNb = steps.length;
51
+ if (stepsNb < 2) {
52
+ console.warn("The Stepper component should have at least 2 steps.");
53
+ }
54
+ if (stepsNb > 6) {
55
+ console.warn("The Stepper component should not have more than 6 steps.");
56
+ }
57
+ }
58
+ var contextLocale = (0, _Satellite.useLocale)("stepper");
59
+ var locale = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_TAG_LOCALE), contextLocale), propsLocale);
60
+ var isControlled = typeof customActiveStep !== "undefined";
61
+ var _useState = (0, _react.useState)(customActiveStep || 0),
62
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
63
+ activeStep = _useState2[0],
64
+ setActiveStep = _useState2[1];
65
+ if (isControlled && activeStep !== customActiveStep) {
66
+ setActiveStep(customActiveStep);
67
+ }
68
+ var containerRef = (0, _react.useRef)(null);
69
+ var _useState3 = (0, _react.useState)(customActiveStep || 0),
70
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
71
+ focusedStep = _useState4[0],
72
+ setFocusedStep = _useState4[1];
73
+ var _useStepIndices = (0, _utils.useStepIndices)(steps, focusedStep, true),
74
+ _useStepIndices2 = (0, _slicedToArray2["default"])(_useStepIndices, 4),
75
+ getPreviousFocusStep = _useStepIndices2[0],
76
+ getNextFocusStep = _useStepIndices2[1],
77
+ getFirstFocusStep = _useStepIndices2[2],
78
+ getLastFocusStep = _useStepIndices2[3];
79
+ var focusStep = function focusStep(index) {
80
+ var _containerRef$current;
81
+ if (index === -1) return;
82
+ (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 || (_containerRef$current = _containerRef$current.querySelector("[data-step-idx='".concat(index, "']"))) === null || _containerRef$current === void 0 || _containerRef$current.focus();
83
+ setFocusedStep(index);
84
+ };
85
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_StepperContext.StepperContext.Provider, {
86
+ value: {
87
+ activeStep: activeStep,
88
+ focusedStep: focusedStep,
89
+ size: size,
90
+ connectors: connectors,
91
+ locale: locale,
92
+ onStepChange: function onStepChange(index) {
93
+ if (!isControlled) {
94
+ setActiveStep(index);
95
+ }
96
+ _onStepChange === null || _onStepChange === void 0 || _onStepChange(index);
97
+ setFocusedStep(index);
98
+ }
99
+ },
100
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("nav", _objectSpread(_objectSpread({
101
+ "aria-label": "progress"
102
+ }, props), {}, {
103
+ className: (0, _clsx["default"])(className),
104
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("ol", {
105
+ role: "presentation",
106
+ className: (0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["flex flex-col isolate"]))),
107
+ ref: containerRef,
108
+ onFocus: function onFocus() {
109
+ setFocusedStep(activeStep);
110
+ },
111
+ onKeyDown: function onKeyDown(event) {
112
+ switch (event.key) {
113
+ case "ArrowLeft":
114
+ case "ArrowUp":
115
+ {
116
+ focusStep(getPreviousFocusStep());
117
+ break;
118
+ }
119
+ case "ArrowRight":
120
+ case "ArrowDown":
121
+ {
122
+ focusStep(getNextFocusStep());
123
+ break;
124
+ }
125
+ case "Home":
126
+ {
127
+ focusStep(getFirstFocusStep());
128
+ break;
129
+ }
130
+ case "End":
131
+ {
132
+ focusStep(getLastFocusStep());
133
+ break;
134
+ }
135
+ }
136
+ },
137
+ children: steps.map(function (step, index) {
138
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Step.Step, _objectSpread({
139
+ index: index
140
+ }, step), index);
141
+ })
142
+ })
143
+ }))
144
+ });
145
+ };
146
+ var _default = exports["default"] = Stepper;
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ import type { StepperLocale, StepperSizes } from "./Stepper";
3
+ export declare type StepperContextType = {
4
+ activeStep: number;
5
+ focusedStep: number;
6
+ size: StepperSizes;
7
+ connectors: boolean;
8
+ locale: StepperLocale;
9
+ onStepChange?: (index: number) => void;
10
+ };
11
+ export declare const StepperContext: import("react").Context<StepperContextType | null>;
12
+ export declare const useStepperContext: () => StepperContextType;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useStepperContext = exports.StepperContext = void 0;
7
+ var _react = require("react");
8
+ var StepperContext = exports.StepperContext = /*#__PURE__*/(0, _react.createContext)(null);
9
+ var useStepperContext = exports.useStepperContext = function useStepperContext() {
10
+ var context = (0, _react.useContext)(StepperContext);
11
+ if (!context) {
12
+ throw new Error("useStepperContext used outside of Stepper");
13
+ }
14
+ return context;
15
+ };
@@ -0,0 +1,4 @@
1
+ export * from "./Stepper";
2
+ export * from "./types";
3
+ export * from "./utils";
4
+ export { default } from "./Stepper";
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ var _exportNames = {};
8
+ Object.defineProperty(exports, "default", {
9
+ enumerable: true,
10
+ get: function get() {
11
+ return _Stepper["default"];
12
+ }
13
+ });
14
+ var _Stepper = _interopRequireWildcard(require("./Stepper"));
15
+ Object.keys(_Stepper).forEach(function (key) {
16
+ if (key === "default" || key === "__esModule") return;
17
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
18
+ if (key in exports && exports[key] === _Stepper[key]) return;
19
+ Object.defineProperty(exports, key, {
20
+ enumerable: true,
21
+ get: function get() {
22
+ return _Stepper[key];
23
+ }
24
+ });
25
+ });
26
+ var _types = require("./types");
27
+ Object.keys(_types).forEach(function (key) {
28
+ if (key === "default" || key === "__esModule") return;
29
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
30
+ if (key in exports && exports[key] === _types[key]) return;
31
+ Object.defineProperty(exports, key, {
32
+ enumerable: true,
33
+ get: function get() {
34
+ return _types[key];
35
+ }
36
+ });
37
+ });
38
+ var _utils = require("./utils");
39
+ Object.keys(_utils).forEach(function (key) {
40
+ if (key === "default" || key === "__esModule") return;
41
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
42
+ if (key in exports && exports[key] === _utils[key]) return;
43
+ Object.defineProperty(exports, key, {
44
+ enumerable: true,
45
+ get: function get() {
46
+ return _utils[key];
47
+ }
48
+ });
49
+ });
50
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
51
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
@@ -0,0 +1,26 @@
1
+ import type { ReactNode } from "react";
2
+ import type { IconComponentType } from "../Icons";
3
+ export declare type BaseStep = {
4
+ /**
5
+ * Defines the icon to display in the step.
6
+ * If omitted, the `index + 1` of the step will be displayed instead.
7
+ * If the step is completed, a check icon will be displayed instead.
8
+ */
9
+ icon?: IconComponentType;
10
+ /**
11
+ * Defines the label to display in the step.
12
+ */
13
+ label?: ReactNode;
14
+ /**
15
+ * Defines the name to display in the step.
16
+ */
17
+ name: ReactNode;
18
+ /**
19
+ * Defines whether the step is completed.
20
+ */
21
+ completed?: boolean;
22
+ /**
23
+ * Defines whether the step is disabled.
24
+ */
25
+ disabled?: boolean;
26
+ };
@@ -0,0 +1,5 @@
1
+ import type { BaseStep } from "./types";
2
+ /**
3
+ * Returns a tuple of functions that return the previous and next step indices.
4
+ */
5
+ export declare const useStepIndices: (steps: BaseStep[], activeStep: number, loop?: boolean) => [() => number, () => number, () => number, () => number, boolean, boolean];
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useStepIndices = void 0;
7
+ var findPreviousStep = function findPreviousStep(steps, activeStep, loop) {
8
+ var stepCount = steps.length;
9
+ var startIndex = activeStep - 1;
10
+ if (loop) {
11
+ startIndex = (startIndex + stepCount) % stepCount;
12
+ }
13
+ for (var i = startIndex; i >= 0; i--) {
14
+ if (!steps[i].disabled) {
15
+ return i;
16
+ }
17
+ }
18
+ return -1;
19
+ };
20
+ var findNextStep = function findNextStep(steps, activeStep, loop) {
21
+ var stepCount = steps.length;
22
+ var endIndex = stepCount;
23
+ if (loop) {
24
+ endIndex = activeStep + stepCount;
25
+ }
26
+ for (var i = activeStep + 1; i < endIndex; i++) {
27
+ if (!steps[i % stepCount].disabled) {
28
+ return i % stepCount;
29
+ }
30
+ }
31
+ return -1;
32
+ };
33
+ var findFirstOrLastStep = function findFirstOrLastStep(steps, reverse) {
34
+ var stepCount = steps.length;
35
+ for (var i = reverse ? stepCount - 1 : 0; i >= 0 && i < stepCount; i += reverse ? -1 : 1) {
36
+ if (!steps[i].disabled) {
37
+ return i;
38
+ }
39
+ }
40
+ return -1;
41
+ };
42
+ var findFirstStep = function findFirstStep(steps) {
43
+ return findFirstOrLastStep(steps, false);
44
+ };
45
+ var findLastStep = function findLastStep(steps) {
46
+ return findFirstOrLastStep(steps, true);
47
+ };
48
+
49
+ /**
50
+ * Returns a tuple of functions that return the previous and next step indices.
51
+ */
52
+ var useStepIndices = exports.useStepIndices = function useStepIndices(steps, activeStep) {
53
+ var loop = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
54
+ var getPreviousStep = function getPreviousStep() {
55
+ return findPreviousStep(steps, activeStep, loop);
56
+ };
57
+ var getNextStep = function getNextStep() {
58
+ return findNextStep(steps, activeStep, loop);
59
+ };
60
+ var getFirstStep = function getFirstStep() {
61
+ return findFirstStep(steps);
62
+ };
63
+ var getLastStep = function getLastStep() {
64
+ return findLastStep(steps);
65
+ };
66
+ return [getPreviousStep, getNextStep, getFirstStep, getLastStep, getPreviousStep() === -1, getNextStep() === -1];
67
+ };
package/cjs/Tag/Tag.js CHANGED
@@ -67,8 +67,8 @@ var Tag = exports.Tag = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref)
67
67
  var contextLocale = (0, _Satellite.useLocale)("tag");
68
68
  var locale = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_TAG_LOCALE), contextLocale), propsLocale);
69
69
  var tagClassName = (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["tag"]))), VARIANT_CLASSNAMES[variant], className);
70
- var isInsideAutocomplete = (0, _AutoComplete.useIsInsideAutocomplete)();
71
- var tabIndexProps = isInsideAutocomplete ? {
70
+ var isInsideAutoComplete = (0, _AutoComplete.useIsInsideAutoComplete)();
71
+ var tabIndexProps = isInsideAutoComplete ? {
72
72
  tabIndex: -1
73
73
  } : {};
74
74
  var addable = Boolean(onAdd);
@@ -0,0 +1,6 @@
1
+ import type { FC, HTMLAttributes } from "react";
2
+ import type { Notification } from "./types";
3
+ export declare type ToastLocale = Notification["locale"];
4
+ export declare type ToastProps = Omit<Notification, "id" | "content" | "autoDismissAfter"> & HTMLAttributes<HTMLElement>;
5
+ export declare const Toast: FC<ToastProps>;
6
+ export default Toast;
@@ -1,15 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
- exports["default"] = exports.Flag = void 0;
8
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
8
+ exports["default"] = exports.Toast = void 0;
9
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
11
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
12
+ var ToastPrimitive = _interopRequireWildcard(require("@radix-ui/react-toast"));
11
13
  var _clsx = _interopRequireDefault(require("clsx"));
12
- var _react = require("react");
13
14
  var _reactFeather = require("react-feather");
14
15
  var _Button = require("../Button");
15
16
  var _Card = require("../Card");
@@ -18,10 +19,13 @@ var _Satellite = require("../Satellite");
18
19
  var _satellitePrefixer = _interopRequireDefault(require("../styles/helpers/satellitePrefixer"));
19
20
  var _isRenderedChild = _interopRequireDefault(require("../utils/isRenderedChild"));
20
21
  var _jsxRuntime = require("react/jsx-runtime");
21
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21;
22
+ var _excluded = ["onDismiss", "title", "icon", "loading", "variant", "locale", "children"];
23
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19;
24
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
25
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
22
26
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
27
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24
- var DEFAULT_FLAG_LOCALE = {
28
+ var DEFAULT_TOAST_LOCALE = {
25
29
  dismissText: "Dismiss"
26
30
  };
27
31
  var VARIANT_CLASSNAMES = {
@@ -40,13 +44,7 @@ var VARIANT_SPINNER_CLASSNAMES = {
40
44
  orange: (0, _satellitePrefixer["default"])(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["border-orange-500"]))),
41
45
  red: (0, _satellitePrefixer["default"])(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["border-red-500"])))
42
46
  };
43
-
44
- /**
45
- * The `Toast` component is a brief notification that providing timely feedback to users before vanishing after a short duration.
46
- *
47
- * See the [Toast documentation page](https://satellite.algolia.com/components/feedback/toast) for more information.
48
- */
49
- var Flag = exports.Flag = function Flag(_ref) {
47
+ var Toast = exports.Toast = function Toast(_ref) {
50
48
  var onDismiss = _ref.onDismiss,
51
49
  title = _ref.title,
52
50
  _ref$icon = _ref.icon,
@@ -55,68 +53,57 @@ var Flag = exports.Flag = function Flag(_ref) {
55
53
  loading = _ref$loading === void 0 ? false : _ref$loading,
56
54
  _ref$variant = _ref.variant,
57
55
  variant = _ref$variant === void 0 ? "accent" : _ref$variant,
58
- autoDismissAfter = _ref.autoDismissAfter,
59
56
  propsLocale = _ref.locale,
60
- children = _ref.children;
61
- var contextLocale = (0, _Satellite.useLocale)("flag");
62
- var locale = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_FLAG_LOCALE), contextLocale), propsLocale);
63
- var _useState = (0, _react.useState)(false),
64
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
65
- hovered = _useState2[0],
66
- setHovered = _useState2[1];
67
- var onDismissRef = (0, _react.useRef)();
68
- onDismissRef.current = onDismiss;
69
- var hasTitle = title !== undefined;
70
- (0, _react.useEffect)(function () {
71
- if (!autoDismissAfter || hovered) return;
72
- var timer = setTimeout(function () {
73
- var _onDismissRef$current;
74
- (_onDismissRef$current = onDismissRef.current) === null || _onDismissRef$current === void 0 || _onDismissRef$current.call(onDismissRef);
75
- }, autoDismissAfter);
76
- return function () {
77
- return clearTimeout(timer);
78
- };
79
- }, [autoDismissAfter, hovered]);
80
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Card.Card, {
57
+ children = _ref.children,
58
+ rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
59
+ var contextLocale = (0, _Satellite.useLocale)("toast");
60
+ var locale = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_TOAST_LOCALE), contextLocale), propsLocale);
61
+ if (process.env.NODE_ENV !== "production") {
62
+ if (typeof onDismiss === "undefined") {
63
+ console.warn("Toast: You should always include an `onDismiss` callback, this is crucial for users with limited abilities.");
64
+ }
65
+ }
66
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Card.Card, _objectSpread(_objectSpread({}, rest), {}, {
81
67
  fullBleed: true,
82
- className: (0, _satellitePrefixer["default"])(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["flag shadow-z500"]))),
68
+ className: (0, _satellitePrefixer["default"])(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["toast shadow-z500"]))),
83
69
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
84
70
  className: (0, _satellitePrefixer["default"])(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["p-4 flex"]))),
85
- onMouseEnter: function onMouseEnter() {
86
- return setHovered(true);
87
- },
88
- onMouseLeave: function onMouseLeave() {
89
- return setHovered(false);
90
- },
91
71
  children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ProgressSpinner["default"], {
92
- size: 16,
93
- className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["mt-1"]))), VARIANT_SPINNER_CLASSNAMES[variant])
72
+ size: 24,
73
+ className: VARIANT_SPINNER_CLASSNAMES[variant]
94
74
  }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(Icon, {
95
- className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["shrink-0 text-white rounded-full p-2px mt-1"]))), VARIANT_CLASSNAMES[variant]),
96
- size: 16
75
+ className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["shrink-0 text-white rounded-full p-1"]))), VARIANT_CLASSNAMES[variant]),
76
+ size: 24
97
77
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
98
- className: (0, _satellitePrefixer["default"])(_templateObject17 || (_templateObject17 = (0, _taggedTemplateLiteral2["default"])(["flex-1 ml-4 min-w-0 break-words"]))),
78
+ className: (0, _satellitePrefixer["default"])(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["flex-1 ml-4 min-w-0 break-words"]))),
99
79
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
100
- className: (0, _satellitePrefixer["default"])(_templateObject18 || (_templateObject18 = (0, _taggedTemplateLiteral2["default"])(["flex justify-between"]))),
101
- children: [hasTitle ? /*#__PURE__*/(0, _jsxRuntime.jsx)("h3", {
102
- className: (0, _satellitePrefixer["default"])(_templateObject19 || (_templateObject19 = (0, _taggedTemplateLiteral2["default"])(["overflow-hidden"]))),
103
- children: title
104
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
105
- className: (0, _satellitePrefixer["default"])(_templateObject20 || (_templateObject20 = (0, _taggedTemplateLiteral2["default"])(["min-w-0"]))),
106
- children: children
107
- }), onDismiss && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.IconButton, {
108
- icon: _reactFeather.X,
109
- title: locale.dismissText,
110
- variant: "subtle",
111
- size: "small",
112
- onClick: onDismiss
80
+ className: (0, _satellitePrefixer["default"])(_templateObject17 || (_templateObject17 = (0, _taggedTemplateLiteral2["default"])(["flex justify-between"]))),
81
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(ToastPrimitive.Title, {
82
+ asChild: true,
83
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("h3", {
84
+ className: (0, _satellitePrefixer["default"])(_templateObject18 || (_templateObject18 = (0, _taggedTemplateLiteral2["default"])(["overflow-hidden mt-0.5"]))),
85
+ children: title
86
+ })
87
+ }), onDismiss && /*#__PURE__*/(0, _jsxRuntime.jsx)(ToastPrimitive.Close, {
88
+ asChild: true,
89
+ onClick: function onClick(e) {
90
+ // Prevent the default Radix handler so that `onDismiss` is not called twice in the `Toasts` component.
91
+ e.preventDefault();
92
+ onDismiss === null || onDismiss === void 0 || onDismiss();
93
+ },
94
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.IconButton, {
95
+ icon: _reactFeather.X,
96
+ title: locale.dismissText,
97
+ variant: "subtle",
98
+ size: "small"
99
+ })
113
100
  })]
114
- }), hasTitle && (0, _isRenderedChild["default"])(children) && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
115
- className: (0, _satellitePrefixer["default"])(_templateObject21 || (_templateObject21 = (0, _taggedTemplateLiteral2["default"])(["text-grey-600 mt-2"]))),
101
+ }), (0, _isRenderedChild["default"])(children) && /*#__PURE__*/(0, _jsxRuntime.jsx)(ToastPrimitive.Description, {
102
+ className: (0, _satellitePrefixer["default"])(_templateObject19 || (_templateObject19 = (0, _taggedTemplateLiteral2["default"])(["text-grey-600 mt-2"]))),
116
103
  children: children
117
104
  })]
118
105
  })]
119
106
  })
120
- });
107
+ }));
121
108
  };
122
- var _default = exports["default"] = Flag;
109
+ var _default = exports["default"] = Toast;
@@ -1,5 +1,5 @@
1
- export = flagPlugin;
2
- declare const flagPlugin: {
1
+ export = toastPlugin;
2
+ declare const toastPlugin: {
3
3
  handler: import("tailwindcss/types/config").PluginCreator;
4
4
  config?: Partial<import("tailwindcss/types/config").Config> | undefined;
5
5
  };
@@ -2,33 +2,33 @@
2
2
 
3
3
  // @ts-check
4
4
  var plugin = require("tailwindcss/plugin");
5
- var flagPlugin = plugin(function (_ref) {
5
+ var toastPlugin = plugin(function (_ref) {
6
6
  var addComponents = _ref.addComponents;
7
7
  var TRANSITION_TIMEOUT = 500;
8
8
  addComponents({
9
- ".flag": {
9
+ ".toast": {
10
10
  width: "320px"
11
11
  }
12
12
  });
13
13
  addComponents({
14
- ".flags_item-enter": {
14
+ ".toasts_item-enter": {
15
15
  opacity: "0.01",
16
16
  transform: "translate(0, 80px)"
17
17
  },
18
- ".flags_item-enter-active": {
18
+ ".toasts_item-enter-active": {
19
19
  opacity: "1",
20
20
  transform: "translate(0, 0)",
21
21
  transition: "all ".concat(TRANSITION_TIMEOUT, "ms ease-in")
22
22
  },
23
- ".flags_item-exit": {
23
+ ".toasts_item-exit": {
24
24
  opacity: "1",
25
25
  transform: "translate(0, 0)"
26
26
  },
27
- ".flags_item-exit-active": {
27
+ ".toasts_item-exit-active": {
28
28
  opacity: "0.01",
29
29
  transform: "translate(0, 80px)",
30
30
  transition: "all ".concat(TRANSITION_TIMEOUT, "ms ease-in")
31
31
  }
32
32
  });
33
33
  });
34
- module.exports = flagPlugin;
34
+ module.exports = toastPlugin;
@@ -0,0 +1,21 @@
1
+ import type { VFC } from "react";
2
+ import type { Notification } from "./types";
3
+ export declare type ToastsLocale = {
4
+ hotkeyLabel?: string;
5
+ };
6
+ export interface ToastsProps {
7
+ /**
8
+ * Define the array of notifications.
9
+ * @example [{ id: "test", title: "Test", content: "Example" }]
10
+ */
11
+ notifications: Notification[];
12
+ /** Define the `Toasts` locale. */
13
+ locale?: ToastsLocale;
14
+ }
15
+ /**
16
+ * Toasts are brief notifications that providing timely feedback to users before vanishing after a short duration.
17
+ *
18
+ * See the [Toast documentation page](https://satellite.algolia.com/components/feedback/toast) for more information.
19
+ */
20
+ export declare const Toasts: VFC<ToastsProps>;
21
+ export default Toasts;