@pingux/astro 1.2.1 → 1.3.2-alpha.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 (118) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/lib/cjs/components/AccordionGridGroup/AccordionGridGroup.js +8 -2
  3. package/lib/cjs/components/AccordionGridItem/AccordionGridItemBody.js +5 -2
  4. package/lib/cjs/components/AccordionGridItem/AccordionGridItemHeader.js +8 -3
  5. package/lib/cjs/components/ArrayField/ArrayField.js +213 -0
  6. package/lib/cjs/components/ArrayField/ArrayField.stories.js +223 -0
  7. package/lib/cjs/components/ArrayField/ArrayField.test.js +208 -0
  8. package/lib/cjs/components/ArrayField/ArrayFieldDeleteButton.js +61 -0
  9. package/lib/cjs/components/ArrayField/index.js +27 -0
  10. package/lib/cjs/components/CheckboxField/CheckboxField.js +4 -1
  11. package/lib/cjs/components/CodeView/CodeView.js +3 -3
  12. package/lib/cjs/components/Input/Input.js +3 -11
  13. package/lib/cjs/components/Input/Input.test.js +14 -2
  14. package/lib/cjs/components/ListView/ListView.stories.js +3 -0
  15. package/lib/cjs/components/Loader/Loader.stories.js +3 -3
  16. package/lib/cjs/components/Modal/Modal.js +3 -0
  17. package/lib/cjs/components/Modal/Modal.stories.js +11 -66
  18. package/lib/cjs/components/MultivaluesField/MultivaluesField.js +20 -10
  19. package/lib/cjs/components/MultivaluesField/MultivaluesField.test.js +74 -0
  20. package/lib/cjs/components/NavBar/NavBar.js +30 -4
  21. package/lib/cjs/components/NavBar/NavBar.stories.js +70 -463
  22. package/lib/cjs/components/NavBar/NavBar.test.js +51 -1
  23. package/lib/cjs/components/NavBarSection/NavBarItem.js +137 -0
  24. package/lib/cjs/components/NavBarSection/NavBarItemButton.js +96 -0
  25. package/lib/cjs/components/NavBarSection/NavBarItemHeader.js +1 -1
  26. package/lib/cjs/components/NavBarSection/NavBarItemLink.js +98 -0
  27. package/lib/cjs/components/NavBarSection/NavBarSection.js +10 -8
  28. package/lib/cjs/components/NavBarSection/index.js +28 -1
  29. package/lib/cjs/components/NumberField/NumberField.js +30 -10
  30. package/lib/cjs/components/NumberField/NumberField.test.js +7 -0
  31. package/lib/cjs/components/PageHeader/PageHeader.js +3 -0
  32. package/lib/cjs/components/PageHeader/PageHeader.stories.js +6 -1
  33. package/lib/cjs/components/RadioGroupField/RadioGroupField.js +9 -5
  34. package/lib/cjs/components/SelectField/SelectField.stories.js +3 -55
  35. package/lib/cjs/components/SelectFieldBase/SelectFieldBase.js +8 -1
  36. package/lib/cjs/components/Tabs/Tabs.stories.js +1 -15
  37. package/lib/cjs/context/NavBarContext/index.js +20 -0
  38. package/lib/cjs/hooks/index.js +9 -0
  39. package/lib/cjs/hooks/useField/useField.js +2 -2
  40. package/lib/cjs/hooks/useNavBarPress/index.js +18 -0
  41. package/lib/cjs/hooks/useNavBarPress/useNavBarPress.js +38 -0
  42. package/lib/cjs/hooks/useNavBarPress/useNavBarPress.test.js +42 -0
  43. package/lib/cjs/index.js +80 -58
  44. package/lib/cjs/styles/forms/checkbox.js +0 -1
  45. package/lib/cjs/styles/forms/input.js +1 -1
  46. package/lib/cjs/styles/forms/label.js +3 -0
  47. package/lib/cjs/styles/forms/radio.js +1 -1
  48. package/lib/cjs/styles/forms/switch.js +3 -1
  49. package/lib/cjs/styles/variants/accordion.js +39 -7
  50. package/lib/cjs/styles/variants/boxes.js +5 -25
  51. package/lib/cjs/styles/variants/buttons.js +7 -1
  52. package/lib/cjs/styles/variants/codeView.js +91 -0
  53. package/lib/cjs/styles/variants/navBar.js +68 -0
  54. package/lib/cjs/styles/variants/separator.js +2 -1
  55. package/lib/cjs/styles/variants/text.js +3 -1
  56. package/lib/cjs/styles/variants/variants.js +3 -0
  57. package/lib/components/AccordionGridGroup/AccordionGridGroup.js +7 -2
  58. package/lib/components/AccordionGridItem/AccordionGridItemBody.js +4 -2
  59. package/lib/components/AccordionGridItem/AccordionGridItemHeader.js +9 -4
  60. package/lib/components/ArrayField/ArrayField.js +179 -0
  61. package/lib/components/ArrayField/ArrayField.stories.js +196 -0
  62. package/lib/components/ArrayField/ArrayField.test.js +185 -0
  63. package/lib/components/ArrayField/ArrayFieldDeleteButton.js +43 -0
  64. package/lib/components/ArrayField/index.js +2 -0
  65. package/lib/components/CheckboxField/CheckboxField.js +4 -1
  66. package/lib/components/CodeView/CodeView.js +2 -2
  67. package/lib/components/Input/Input.js +2 -10
  68. package/lib/components/Input/Input.test.js +11 -2
  69. package/lib/components/ListView/ListView.stories.js +3 -0
  70. package/lib/components/Loader/Loader.stories.js +1 -1
  71. package/lib/components/Modal/Modal.js +4 -1
  72. package/lib/components/Modal/Modal.stories.js +10 -59
  73. package/lib/components/MultivaluesField/MultivaluesField.js +19 -9
  74. package/lib/components/MultivaluesField/MultivaluesField.test.js +52 -0
  75. package/lib/components/NavBar/NavBar.js +25 -4
  76. package/lib/components/NavBar/NavBar.stories.js +71 -462
  77. package/lib/components/NavBar/NavBar.test.js +39 -2
  78. package/lib/components/NavBarSection/NavBarItem.js +111 -0
  79. package/lib/components/NavBarSection/NavBarItemButton.js +69 -0
  80. package/lib/components/NavBarSection/NavBarItemHeader.js +1 -1
  81. package/lib/components/NavBarSection/NavBarItemLink.js +71 -0
  82. package/lib/components/NavBarSection/NavBarSection.js +9 -8
  83. package/lib/components/NavBarSection/index.js +4 -1
  84. package/lib/components/NumberField/NumberField.js +32 -12
  85. package/lib/components/NumberField/NumberField.test.js +5 -0
  86. package/lib/components/PageHeader/PageHeader.js +2 -0
  87. package/lib/components/PageHeader/PageHeader.stories.js +5 -1
  88. package/lib/components/RadioGroupField/RadioGroupField.js +9 -5
  89. package/lib/components/SelectField/SelectField.stories.js +2 -50
  90. package/lib/components/SelectFieldBase/SelectFieldBase.js +8 -1
  91. package/lib/components/Tabs/Tabs.stories.js +0 -11
  92. package/lib/context/NavBarContext/index.js +5 -0
  93. package/lib/hooks/index.js +1 -0
  94. package/lib/hooks/useField/useField.js +2 -2
  95. package/lib/hooks/useNavBarPress/index.js +1 -0
  96. package/lib/hooks/useNavBarPress/useNavBarPress.js +27 -0
  97. package/lib/hooks/useNavBarPress/useNavBarPress.test.js +36 -0
  98. package/lib/index.js +2 -0
  99. package/lib/styles/forms/checkbox.js +0 -1
  100. package/lib/styles/forms/input.js +1 -1
  101. package/lib/styles/forms/label.js +3 -0
  102. package/lib/styles/forms/radio.js +1 -1
  103. package/lib/styles/forms/switch.js +3 -1
  104. package/lib/styles/variants/accordion.js +26 -5
  105. package/lib/styles/variants/boxes.js +5 -25
  106. package/lib/styles/variants/buttons.js +7 -1
  107. package/lib/styles/variants/codeView.js +91 -0
  108. package/lib/styles/variants/navBar.js +46 -0
  109. package/lib/styles/variants/separator.js +2 -1
  110. package/lib/styles/variants/text.js +3 -1
  111. package/lib/styles/variants/variants.js +2 -0
  112. package/package.json +3 -1
  113. package/lib/cjs/layouts/ListLayout.stories.js +0 -895
  114. package/lib/cjs/layouts/SchemaFormLayout.stories.js +0 -139
  115. package/lib/cjs/recipes/ArrayField.stories.js +0 -169
  116. package/lib/layouts/ListLayout.stories.js +0 -866
  117. package/lib/layouts/SchemaFormLayout.stories.js +0 -107
  118. package/lib/recipes/ArrayField.stories.js +0 -134
@@ -10,7 +10,7 @@ _Object$defineProperty(exports, "__esModule", {
10
10
  value: true
11
11
  });
12
12
 
13
- exports.WithoutStatusIndicator = exports.AsyncLoading = exports.DynamicItems = exports.HelperText = exports.NoOptionsAvailable = exports.DisabledOptions = exports.DisabledField = exports.WithNoneOption = exports.Controlled = exports.LeftLabel = exports.FloatLabel = exports.WithCustomHeight = exports.WithSections = exports.Default = exports["default"] = void 0;
13
+ exports.WithoutStatusIndicator = exports.AsyncLoading = exports.DynamicItems = exports.HelperText = exports.NoOptionsAvailable = exports.DisabledOptions = exports.DisabledField = exports.WithNoneOption = exports.Controlled = exports.FloatLabel = exports.WithCustomHeight = exports.WithSections = exports.Default = exports["default"] = void 0;
14
14
 
15
15
  var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs3/regenerator"));
16
16
 
@@ -42,8 +42,6 @@ var _statuses = _interopRequireDefault(require("../../utils/devUtils/constants/s
42
42
 
43
43
  var _constants = require("../Label/constants");
44
44
 
45
- var _Box = _interopRequireDefault(require("../Box"));
46
-
47
45
  var _react2 = require("@emotion/react");
48
46
 
49
47
  var _context, _context2;
@@ -239,55 +237,6 @@ var FloatLabel = function FloatLabel() {
239
237
 
240
238
  exports.FloatLabel = FloatLabel;
241
239
 
242
- var LeftLabel = function LeftLabel() {
243
- return (0, _react2.jsx)(_Box["default"], {
244
- gap: "xl",
245
- width: "100%"
246
- }, (0, _react2.jsx)(_index.SelectField, {
247
- helperText: "Here is some helpful text...",
248
- label: "Example Label",
249
- labelMode: "left"
250
- }, (0, _react2.jsx)(_index.Item, {
251
- key: "red"
252
- }, "Red"), (0, _react2.jsx)(_index.Item, {
253
- key: "blue"
254
- }, "Blue"), (0, _react2.jsx)(_index.Item, {
255
- key: "yellow"
256
- }, "Yellow")), (0, _react2.jsx)(_index.SelectField, {
257
- label: "Example Label that is much longer than the previous one",
258
- labelMode: "left"
259
- }, (0, _react2.jsx)(_index.Item, {
260
- key: "red"
261
- }, "Red"), (0, _react2.jsx)(_index.Item, {
262
- key: "blue"
263
- }, "Blue"), (0, _react2.jsx)(_index.Item, {
264
- key: "yellow"
265
- }, "Yellow")), (0, _react2.jsx)(_index.SelectField, {
266
- label: "Example label with set width",
267
- labelMode: "left",
268
- containerProps: {
269
- sx: {
270
- gridTemplateColumns: '120px auto'
271
- }
272
- }
273
- }, (0, _react2.jsx)(_index.Item, {
274
- key: "red"
275
- }, "Red"), (0, _react2.jsx)(_index.Item, {
276
- key: "blue"
277
- }, "Blue"), (0, _react2.jsx)(_index.Item, {
278
- key: "yellow"
279
- }, "Yellow")));
280
- };
281
-
282
- exports.LeftLabel = LeftLabel;
283
- LeftLabel.parameters = {
284
- docs: {
285
- description: {
286
- story: 'Users are able to override the default 40% column width when using left label by providing a new gridTemplatesColumn value, as shown in the example below.'
287
- }
288
- }
289
- };
290
-
291
240
  var Controlled = function Controlled() {
292
241
  var _useState = (0, _react.useState)('yellow'),
293
242
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
@@ -355,7 +304,7 @@ var DisabledOptions = function DisabledOptions() {
355
304
  key: "red"
356
305
  }, "Red"), (0, _react2.jsx)(_index.Item, {
357
306
  key: "blue"
358
- }, "Blue (disabled)"), (0, _react2.jsx)(_index.Item, {
307
+ }, "Blue"), (0, _react2.jsx)(_index.Item, {
359
308
  key: "yellow"
360
309
  }, "Yellow"));
361
310
  };
@@ -365,8 +314,7 @@ exports.DisabledOptions = DisabledOptions;
365
314
  var NoOptionsAvailable = function NoOptionsAvailable() {
366
315
  return (0, _react2.jsx)(_index.SelectField, {
367
316
  label: "Select an option...",
368
- isDisabled: true,
369
- defaultText: "No options available"
317
+ placeholder: "No options available"
370
318
  });
371
319
  };
372
320
 
@@ -80,6 +80,7 @@ var SelectFieldBase = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
80
80
  name = props.name,
81
81
  placeholder = props.placeholder,
82
82
  status = props.status,
83
+ slots = props.slots,
83
84
  columnStyleProps = props.columnStyleProps,
84
85
  fieldContainerProps = props.fieldContainerProps,
85
86
  fieldControlProps = props.fieldControlProps,
@@ -114,7 +115,7 @@ var SelectFieldBase = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
114
115
  sx: state.isOpen ? {
115
116
  transform: 'rotate(180deg)'
116
117
  } : null
117
- }))));
118
+ }))), slots === null || slots === void 0 ? void 0 : slots.inContainer);
118
119
  return (0, _react2.jsx)(_Box["default"], (0, _extends2["default"])({
119
120
  ref: ref,
120
121
  variant: "forms.input.wrapper"
@@ -181,6 +182,12 @@ SelectFieldBase.propTypes = {
181
182
  })
182
183
  }),
183
184
 
185
+ /** Provides a way to insert markup in specified places. */
186
+ slots: _propTypes["default"].shape({
187
+ /** The given node will be inserted into the field container. */
188
+ inContainer: _propTypes["default"].node
189
+ }),
190
+
184
191
  /** Control for interaction with SelectField */
185
192
  trigger: _propTypes["default"].node,
186
193
 
@@ -10,7 +10,7 @@ _Object$defineProperty(exports, "__esModule", {
10
10
  value: true
11
11
  });
12
12
 
13
- exports.ContentSlots = exports.TabPanelProps = exports.Orientation = exports.CustomTabLine = exports.DisabledAllTabs = exports.DisabledSingleTab = exports.Centered = exports.WithTooltips = exports.WithIcon = exports.Controlled = exports.Uncontrolled = exports["default"] = void 0;
13
+ exports.ContentSlots = exports.TabPanelProps = exports.CustomTabLine = exports.DisabledAllTabs = exports.DisabledSingleTab = exports.Centered = exports.WithTooltips = exports.WithIcon = exports.Controlled = exports.Uncontrolled = exports["default"] = void 0;
14
14
 
15
15
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
16
16
 
@@ -212,20 +212,6 @@ var CustomTabLine = function CustomTabLine() {
212
212
 
213
213
  exports.CustomTabLine = CustomTabLine;
214
214
 
215
- var Orientation = function Orientation() {
216
- return (0, _react2.jsx)(_Tabs["default"], {
217
- orientation: "vertical",
218
- items: tabs
219
- }, function (item) {
220
- return (0, _react2.jsx)(_Tab["default"], {
221
- key: item.name,
222
- title: item.name
223
- }, item.children);
224
- });
225
- };
226
-
227
- exports.Orientation = Orientation;
228
-
229
215
  var TabPanelProps = function TabPanelProps() {
230
216
  return (0, _react2.jsx)(_Tabs["default"], {
231
217
  tabPanelProps: {
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
4
+
5
+ _Object$defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+
9
+ exports.useNavBarContext = exports.NavBarContext = void 0;
10
+
11
+ var _react = require("react");
12
+
13
+ var NavBarContext = /*#__PURE__*/(0, _react.createContext)({});
14
+ exports.NavBarContext = NavBarContext;
15
+
16
+ var useNavBarContext = function useNavBarContext() {
17
+ return (0, _react.useContext)(NavBarContext);
18
+ };
19
+
20
+ exports.useNavBarContext = useNavBarContext;
@@ -64,6 +64,13 @@ _Object$defineProperty(exports, "usePropWarning", {
64
64
  }
65
65
  });
66
66
 
67
+ _Object$defineProperty(exports, "useNavBarPress", {
68
+ enumerable: true,
69
+ get: function get() {
70
+ return _useNavBarPress["default"];
71
+ }
72
+ });
73
+
67
74
  _Object$defineProperty(exports, "useRockerButton", {
68
75
  enumerable: true,
69
76
  get: function get() {
@@ -108,6 +115,8 @@ var _useOverlayPanelState = _interopRequireDefault(require("./useOverlayPanelSta
108
115
 
109
116
  var _usePropWarning = _interopRequireDefault(require("./usePropWarning"));
110
117
 
118
+ var _useNavBarPress = _interopRequireDefault(require("./useNavBarPress"));
119
+
111
120
  var _useRockerButton = _interopRequireDefault(require("./useRockerButton"));
112
121
 
113
122
  var _useSelectField = _interopRequireDefault(require("./useSelectField"));
@@ -186,8 +186,8 @@ var useField = function useField() {
186
186
  }),
187
187
  focusWithinProps = _useFocusWithin.focusWithinProps;
188
188
 
189
- var isFloatLabel = labelMode === _constants.modes.FLOAT;
190
- var isLeftLabel = labelMode === _constants.modes.LEFT;
189
+ var isFloatLabel = labelMode === _constants.modes.FLOAT || (labelProps === null || labelProps === void 0 ? void 0 : labelProps.labelMode) === _constants.modes.FLOAT;
190
+ var isLeftLabel = labelMode === _constants.modes.LEFT || (labelProps === null || labelProps === void 0 ? void 0 : labelProps.labelMode) === _constants.modes.LEFT;
191
191
  var isFloatLabelActive = isFloatLabel && (hasValue || hasFocusWithin || (containerProps === null || containerProps === void 0 ? void 0 : containerProps.isFloatLabelActive));
192
192
 
193
193
  var _useStatusClasses2 = (0, _hooks.useStatusClasses)(containerProps === null || containerProps === void 0 ? void 0 : containerProps.className, {
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
+
5
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
6
+
7
+ _Object$defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+
11
+ _Object$defineProperty(exports, "default", {
12
+ enumerable: true,
13
+ get: function get() {
14
+ return _useNavBarPress["default"];
15
+ }
16
+ });
17
+
18
+ var _useNavBarPress = _interopRequireDefault(require("./useNavBarPress"));
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
4
+
5
+ _Object$defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+
9
+ exports["default"] = void 0;
10
+
11
+ /**
12
+ * A custom hook that will call an onPressCallback function, if the function is provided.
13
+ * @param {Object} params The accepted parameters object
14
+ * @param {string} props.key The unique identifier that is assigned to the element being pressed
15
+ * @param {Object} state The state object tracking selected keys
16
+ * @param {function} state.setSelectedKeys The function that sets the selected keys
17
+ * @callback props.onPressCallback The callback that will be called only if provided
18
+ */
19
+ var useNavBarPress = function useNavBarPress(_ref, state) {
20
+ var key = _ref.key,
21
+ onPressCallback = _ref.onPressCallback;
22
+ var setSelectedKeys = state.setSelectedKeys;
23
+
24
+ var onNavPress = function onNavPress() {
25
+ setSelectedKeys(key);
26
+
27
+ if (onPressCallback) {
28
+ onPressCallback();
29
+ }
30
+ };
31
+
32
+ return {
33
+ onNavPress: onNavPress
34
+ };
35
+ };
36
+
37
+ var _default = useNavBarPress;
38
+ exports["default"] = _default;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
+
5
+ var _reactHooks = require("@testing-library/react-hooks");
6
+
7
+ var _ = _interopRequireDefault(require("./"));
8
+
9
+ var key = 'testKey';
10
+ test('using the onPress prop works as a callback', function () {
11
+ var onPress = jest.fn();
12
+ var setSelectedKeys = jest.fn();
13
+
14
+ var _renderHook = (0, _reactHooks.renderHook)(function () {
15
+ return (0, _["default"])({
16
+ key: key,
17
+ onPressCallback: onPress
18
+ }, {
19
+ setSelectedKeys: setSelectedKeys
20
+ });
21
+ }),
22
+ result = _renderHook.result;
23
+
24
+ result.current.onNavPress();
25
+ expect(onPress).toHaveBeenCalled();
26
+ });
27
+ test('if no onPress prop there is no callback', function () {
28
+ var onPress = jest.fn();
29
+ var setSelectedKeys = jest.fn();
30
+
31
+ var _renderHook2 = (0, _reactHooks.renderHook)(function () {
32
+ return (0, _["default"])({
33
+ key: key
34
+ }, {
35
+ setSelectedKeys: setSelectedKeys
36
+ });
37
+ }),
38
+ result = _renderHook2.result;
39
+
40
+ result.current.onNavPress();
41
+ expect(onPress).not.toHaveBeenCalled();
42
+ });