@pingux/astro 1.1.1-alpha.3 → 1.2.0-alpha.1

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 (43) hide show
  1. package/lib/cjs/components/Breadcrumbs/BreadcrumbItem.js +3 -0
  2. package/lib/cjs/components/Breadcrumbs/Breadcrumbs.js +24 -14
  3. package/lib/cjs/components/Breadcrumbs/Breadcrumbs.test.js +9 -0
  4. package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.js +338 -0
  5. package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.stories.js +295 -0
  6. package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.test.js +287 -0
  7. package/lib/cjs/components/EnvironmentBreadcrumb/index.js +18 -0
  8. package/lib/cjs/components/Link/Link.js +15 -4
  9. package/lib/cjs/components/Link/Link.stories.js +10 -0
  10. package/lib/cjs/index.js +10 -0
  11. package/lib/cjs/styles/theme.js +1 -0
  12. package/lib/cjs/styles/variants/boxes.js +13 -0
  13. package/lib/cjs/styles/variants/buttons.js +23 -0
  14. package/lib/cjs/styles/variants/index.js +11 -1
  15. package/lib/cjs/styles/variants/links.js +67 -0
  16. package/lib/cjs/styles/variants/text.js +9 -0
  17. package/lib/cjs/styles/variants/variants.js +2 -2
  18. package/lib/cjs/utils/devUtils/constants/animals.js +11 -0
  19. package/lib/cjs/utils/devUtils/constants/firstNames.js +11 -0
  20. package/lib/cjs/utils/devUtils/createMockData.js +96 -0
  21. package/lib/components/Breadcrumbs/BreadcrumbItem.js +4 -1
  22. package/lib/components/Breadcrumbs/Breadcrumbs.js +24 -15
  23. package/lib/components/Breadcrumbs/Breadcrumbs.test.js +9 -0
  24. package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.js +296 -0
  25. package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.stories.js +256 -0
  26. package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.test.js +246 -0
  27. package/lib/components/EnvironmentBreadcrumb/index.js +1 -0
  28. package/lib/components/Link/Link.js +16 -5
  29. package/lib/components/Link/Link.stories.js +8 -0
  30. package/lib/index.js +1 -0
  31. package/lib/styles/theme.js +2 -1
  32. package/lib/styles/variants/boxes.js +13 -0
  33. package/lib/styles/variants/buttons.js +23 -0
  34. package/lib/styles/variants/index.js +1 -0
  35. package/lib/styles/variants/links.js +46 -0
  36. package/lib/styles/variants/text.js +9 -0
  37. package/lib/styles/variants/variants.js +2 -2
  38. package/lib/utils/devUtils/constants/animals.js +1 -0
  39. package/lib/utils/devUtils/constants/firstNames.js +1 -0
  40. package/lib/utils/devUtils/createMockData.js +68 -0
  41. package/package.json +1 -1
  42. package/lib/cjs/styles/variants/link.js +0 -27
  43. package/lib/styles/variants/link.js +0 -17
package/lib/cjs/index.js CHANGED
@@ -34,6 +34,7 @@ var _exportNames = {
34
34
  ComboBoxField: true,
35
35
  CopyText: true,
36
36
  ColorField: true,
37
+ EnvironmentBreadcrumb: true,
37
38
  FieldHelperText: true,
38
39
  FileInputField: true,
39
40
  HelpHint: true,
@@ -214,6 +215,13 @@ _Object$defineProperty(exports, "ColorField", {
214
215
  }
215
216
  });
216
217
 
218
+ _Object$defineProperty(exports, "EnvironmentBreadcrumb", {
219
+ enumerable: true,
220
+ get: function get() {
221
+ return _EnvironmentBreadcrumb["default"];
222
+ }
223
+ });
224
+
217
225
  _Object$defineProperty(exports, "FieldHelperText", {
218
226
  enumerable: true,
219
227
  get: function get() {
@@ -817,6 +825,8 @@ var _CopyText = _interopRequireDefault(require("./components/CopyText"));
817
825
 
818
826
  var _ColorField = _interopRequireDefault(require("./components/ColorField"));
819
827
 
828
+ var _EnvironmentBreadcrumb = _interopRequireDefault(require("./components/EnvironmentBreadcrumb"));
829
+
820
830
  var _FieldHelperText = _interopRequireWildcard(require("./components/FieldHelperText"));
821
831
 
822
832
  _forEachInstanceProperty(_context14 = _Object$keys(_FieldHelperText)).call(_context14, function (key) {
@@ -75,6 +75,7 @@ var _default = {
75
75
  images: _variants.images,
76
76
  buttons: _variants.buttons,
77
77
  textColors: _text.textColors,
78
+ links: _variants.links,
78
79
  variants: _variants.variants
79
80
  };
80
81
  exports["default"] = _default;
@@ -274,6 +274,18 @@ var datePicker = {
274
274
  }
275
275
  }
276
276
  };
277
+
278
+ var environmentChip = _objectSpread(_objectSpread({}, chip), {}, {
279
+ alignSelf: 'center',
280
+ height: '17px',
281
+ minWidth: 'fit-content',
282
+ ml: 8,
283
+ '& span': {
284
+ fontSize: 'xs',
285
+ lineHeight: 1
286
+ }
287
+ });
288
+
277
289
  var fileInputFieldWrapper = {
278
290
  display: 'flex',
279
291
  border: '1px dashed',
@@ -302,6 +314,7 @@ var _default = {
302
314
  chip: chip,
303
315
  copy: copy,
304
316
  datePicker: datePicker,
317
+ environmentChip: environmentChip,
305
318
  expandableRow: expandableRow,
306
319
  inputInContainerSlot: inputInContainerSlot,
307
320
  fileInputFieldWrapper: fileInputFieldWrapper,
@@ -485,6 +485,28 @@ var expandableRow = {
485
485
  }
486
486
  }
487
487
  };
488
+ var environmentBreadcrumb = {
489
+ current: _objectSpread(_objectSpread({}, text), {}, {
490
+ color: 'neutral.30',
491
+ fontSize: 'md',
492
+ fontWeight: 1,
493
+ '&.is-hovered, &.is-focused': {
494
+ color: 'active',
495
+ textDecoration: 'none',
496
+ boxShadow: 'none'
497
+ },
498
+ '&.is-pressed': {
499
+ color: 'accent.20',
500
+ textDecoration: 'none'
501
+ }
502
+ }),
503
+ selectItem: _objectSpread(_objectSpread({}, text), {}, {
504
+ color: 'neutral.10',
505
+ fontSize: 'md',
506
+ fontWeight: 0,
507
+ justifyContent: 'start'
508
+ })
509
+ };
488
510
  var fileInputField = {
489
511
  background: 'none',
490
512
  cursor: 'pointer',
@@ -551,6 +573,7 @@ var _default = {
551
573
  '&.is-pressed': _objectSpread({}, defaultActive),
552
574
  '&.is-focused': _objectSpread({}, defaultFocus)
553
575
  }),
576
+ environmentBreadcrumb: environmentBreadcrumb,
554
577
  expandableRow: expandableRow,
555
578
  fileInputField: fileInputField,
556
579
  iconButton: iconButton,
@@ -17,7 +17,8 @@ _Object$defineProperty(exports, "__esModule", {
17
17
  var _exportNames = {
18
18
  variants: true,
19
19
  buttons: true,
20
- images: true
20
+ images: true,
21
+ links: true
21
22
  };
22
23
 
23
24
  _Object$defineProperty(exports, "variants", {
@@ -41,12 +42,21 @@ _Object$defineProperty(exports, "images", {
41
42
  }
42
43
  });
43
44
 
45
+ _Object$defineProperty(exports, "links", {
46
+ enumerable: true,
47
+ get: function get() {
48
+ return _links["default"];
49
+ }
50
+ });
51
+
44
52
  var _variants = _interopRequireDefault(require("./variants"));
45
53
 
46
54
  var _buttons = _interopRequireDefault(require("./buttons"));
47
55
 
48
56
  var _images = _interopRequireDefault(require("./images"));
49
57
 
58
+ var _links = _interopRequireDefault(require("./links"));
59
+
50
60
  var _text = require("./text");
51
61
 
52
62
  _forEachInstanceProperty(_context = _Object$keys(_text)).call(_context, function (key) {
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
+
5
+ var _Object$defineProperty2 = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
6
+
7
+ _Object$defineProperty2(exports, "__esModule", {
8
+ value: true
9
+ });
10
+
11
+ exports["default"] = void 0;
12
+
13
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/define-property"));
14
+
15
+ var _defineProperties = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/define-properties"));
16
+
17
+ var _getOwnPropertyDescriptors = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors"));
18
+
19
+ var _forEach = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/for-each"));
20
+
21
+ var _getOwnPropertyDescriptor = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor"));
22
+
23
+ var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
24
+
25
+ var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
26
+
27
+ var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
28
+
29
+ var _defineProperty3 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
30
+
31
+ function ownKeys(object, enumerableOnly) { var keys = (0, _keys["default"])(object); if (_getOwnPropertySymbols["default"]) { var symbols = (0, _getOwnPropertySymbols["default"])(object); if (enumerableOnly) symbols = (0, _filter["default"])(symbols).call(symbols, function (sym) { return (0, _getOwnPropertyDescriptor["default"])(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
32
+
33
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { var _context; (0, _forEach["default"])(_context = ownKeys(Object(source), true)).call(_context, function (key) { (0, _defineProperty3["default"])(target, key, source[key]); }); } else if (_getOwnPropertyDescriptors["default"]) { (0, _defineProperties["default"])(target, (0, _getOwnPropertyDescriptors["default"])(source)); } else { var _context2; (0, _forEach["default"])(_context2 = ownKeys(Object(source))).call(_context2, function (key) { (0, _defineProperty2["default"])(target, key, (0, _getOwnPropertyDescriptor["default"])(source, key)); }); } } return target; }
34
+
35
+ var app = {
36
+ color: 'active',
37
+ fontFamily: 'standard',
38
+ fontSize: 'md',
39
+ textDecoration: 'none',
40
+ outline: 'none',
41
+ '&.is-hovered': {
42
+ textDecoration: 'underline'
43
+ },
44
+ '&.is-focused': {
45
+ textDecoration: 'underline'
46
+ },
47
+ '&.is-pressed': {
48
+ color: 'accent.40',
49
+ textDecoration: 'underline'
50
+ },
51
+ '&.is-disabled': {
52
+ pointerEvents: 'none'
53
+ }
54
+ };
55
+
56
+ var web = _objectSpread(_objectSpread({}, app), {}, {
57
+ textDecoration: 'underline',
58
+ '&:visited': {
59
+ color: 'decorative.7'
60
+ }
61
+ });
62
+
63
+ var _default = {
64
+ app: app,
65
+ web: web
66
+ };
67
+ exports["default"] = _default;
@@ -139,6 +139,14 @@ var expandableRow = {
139
139
  }
140
140
  }
141
141
  };
142
+
143
+ var environmentBreadcrumb = _objectSpread(_objectSpread({}, base), {}, {
144
+ fontSize: 'sm',
145
+ fontWeight: 3,
146
+ color: 'secondary',
147
+ textTransform: 'capitalize'
148
+ });
149
+
142
150
  var navBarSubtitle = {
143
151
  fontWeight: 3,
144
152
  fontSize: '11px',
@@ -175,6 +183,7 @@ var text = {
175
183
  textTransform: 'uppercase',
176
184
  fontFamily: 'standard'
177
185
  }),
186
+ environmentBreadcrumb: environmentBreadcrumb,
178
187
  fieldHelperText: fieldHelperText,
179
188
  inputValue: {
180
189
  fontWeight: 1,
@@ -40,7 +40,7 @@ var _images = _interopRequireDefault(require("./images"));
40
40
 
41
41
  var _imageUpload = _interopRequireDefault(require("./imageUpload"));
42
42
 
43
- var _link = _interopRequireDefault(require("./link"));
43
+ var _links = _interopRequireDefault(require("./links"));
44
44
 
45
45
  var _listBox = _interopRequireDefault(require("./listBox"));
46
46
 
@@ -83,7 +83,7 @@ var _default = _objectSpread(_objectSpread({
83
83
  images: _images["default"],
84
84
  imageUpload: _imageUpload["default"],
85
85
  loader: _loader["default"],
86
- link: _link["default"],
86
+ links: _links["default"],
87
87
  listBox: _listBox["default"],
88
88
  menu: _menu["default"],
89
89
  menuItem: _menuItem["default"],
@@ -0,0 +1,11 @@
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
+ var _default = ['Aardvark', 'Albatross', 'Alligator', 'Alpaca', 'Ant', 'Anteater', 'Antelope', 'Ape', 'Armadillo', 'Donkey', 'Baboon', 'Badger', 'Barracuda', 'Bat', 'Bear', 'Beaver', 'Bee', 'Bison', 'Boar', 'Buffalo', 'Butterfly', 'Camel', 'Capybara', 'Caribou', 'Cassowary', 'Cat', 'Caterpillar', 'Cattle', 'Chamois', 'Cheetah', 'Chicken', 'Chimpanzee', 'Chinchilla', 'Chough', 'Clam', 'Cobra', 'Cockroach', 'Cod', 'Cormorant', 'Coyote', 'Crab', 'Crane', 'Crocodile', 'Crow', 'Curlew', 'Deer', 'Dinosaur', 'Dog', 'Dogfish', 'Dolphin', 'Dotterel', 'Dove', 'Dragonfly', 'Duck', 'Dugong', 'Dunlin', 'Eagle', 'Echidna', 'Eel', 'Eland', 'Elephant', 'Elk', 'Emu', 'Falcon', 'Ferret', 'Finch', 'Fish', 'Flamingo', 'Fly', 'Fox', 'Frog', 'Gaur', 'Gazelle', 'Gerbil', 'Giraffe', 'Gnat', 'Gnu', 'Goat', 'Goldfinch', 'Goldfish', 'Goose', 'Gorilla', 'Goshawk', 'Grasshopper', 'Grouse', 'Guanaco', 'Gull', 'Hamster', 'Hare', 'Hawk', 'Hedgehog', 'Heron', 'Herring', 'Hippopotamus', 'Hornet', 'Horse', 'Human', 'Hummingbird', 'Hyena', 'Ibex', 'Ibis', 'Jackal', 'Jaguar', 'Jay', 'Jellyfish', 'Kangaroo', 'Kingfisher', 'Koala', 'Kookabura', 'Kouprey', 'Kudu', 'Lapwing', 'Lark', 'Lemur', 'Leopard', 'Lion', 'Llama', 'Lobster', 'Locust', 'Loris', 'Louse', 'Lyrebird', 'Magpie', 'Mallard', 'Manatee', 'Mandrill', 'Mantis', 'Marten', 'Meerkat', 'Mink', 'Mole', 'Mongoose', 'Monkey', 'Moose', 'Mosquito', 'Mouse', 'Mule', 'Narwhal', 'Newt', 'Nightingale', 'Octopus', 'Okapi', 'Opossum', 'Oryx', 'Ostrich', 'Otter', 'Owl', 'Oyster', 'Panther', 'Parrot', 'Partridge', 'Peafowl', 'Pelican', 'Penguin', 'Pheasant', 'Pig', 'Pigeon', 'Pony', 'Porcupine', 'Porpoise', 'Quail', 'Quelea', 'Quetzal', 'Rabbit', 'Raccoon', 'Rail', 'Ram', 'Rat', 'Raven', 'Red deer', 'Red panda', 'Reindeer', 'Rhinoceros', 'Rook', 'Salamander', 'Salmon', 'Sand Dollar', 'Sandpiper', 'Sardine', 'Scorpion', 'Seahorse', 'Seal', 'Shark', 'Sheep', 'Shrew', 'Skunk', 'Snail', 'Snake', 'Sparrow', 'Spider', 'Spoonbill', 'Squid', 'Squirrel', 'Starling', 'Stingray', 'Stinkbug', 'Stork', 'Swallow', 'Swan', 'Tapir', 'Tarsier', 'Termite', 'Tiger', 'Toad', 'Trout', 'Turkey', 'Turtle', 'Viper', 'Vulture', 'Wallaby', 'Walrus', 'Wasp', 'Weasel', 'Whale', 'Wildcat', 'Wolf', 'Wolverine', 'Wombat', 'Woodcock', 'Woodpecker', 'Worm', 'Wren', 'Yak', 'Zebra'];
11
+ exports["default"] = _default;
@@ -0,0 +1,11 @@
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
+ var _default = ['Michael', 'Christopher', 'Jessica', 'Matthew', 'Ashley', 'Jennifer', 'Joshua', 'Amanda', 'Daniel', 'David', 'James', 'Robert', 'John', 'Joseph', 'Andrew', 'Ryan', 'Brandon', 'Jason', 'Justin', 'Sarah', 'William', 'Jonathan', 'Stephanie', 'Brian', 'Nicole', 'Nicholas', 'Anthony', 'Heather', 'Eric', 'Elizabeth', 'Adam', 'Megan', 'Melissa', 'Kevin', 'Steven', 'Thomas', 'Timothy', 'Christina', 'Kyle', 'Rachel', 'Laura', 'Lauren', 'Amber', 'Brittany', 'Danielle', 'Richard', 'Kimberly', 'Jeffrey', 'Amy', 'Crystal', 'Michelle', 'Tiffany', 'Jeremy', 'Benjamin', 'Mark', 'Emily', 'Aaron', 'Charles', 'Rebecca', 'Jacob', 'Stephen', 'Patrick', 'Sean', 'Erin', 'Zachary', 'Jamie', 'Kelly', 'Samantha', 'Nathan', 'Sara', 'Dustin', 'Paul', 'Angela', 'Tyler', 'Scott', 'Katherine', 'Andrea', 'Gregory', 'Erica', 'Mary', 'Travis', 'Lisa', 'Kenneth', 'Bryan', 'Lindsey', 'Kristen', 'Jose', 'Alexander', 'Jesse', 'Katie', 'Lindsay', 'Shannon', 'Vanessa', 'Courtney', 'Christine', 'Alicia', 'Cody', 'Allison', 'Bradley', 'Samuel'];
11
+ exports["default"] = _default;
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
+
5
+ var _Object$defineProperty2 = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
6
+
7
+ _Object$defineProperty2(exports, "__esModule", {
8
+ value: true
9
+ });
10
+
11
+ exports["default"] = void 0;
12
+
13
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/define-property"));
14
+
15
+ var _defineProperties = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/define-properties"));
16
+
17
+ var _getOwnPropertyDescriptors = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors"));
18
+
19
+ var _forEach = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/for-each"));
20
+
21
+ var _getOwnPropertyDescriptor = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor"));
22
+
23
+ var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
24
+
25
+ var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
26
+
27
+ var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
28
+
29
+ var _fill = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/fill"));
30
+
31
+ var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
32
+
33
+ var _reduce = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/reduce"));
34
+
35
+ var _defineProperty3 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
36
+
37
+ var _entries = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/entries"));
38
+
39
+ var _uuid = require("uuid");
40
+
41
+ var _animals = _interopRequireDefault(require("./constants/animals"));
42
+
43
+ var _firstNames = _interopRequireDefault(require("./constants/firstNames"));
44
+
45
+ function ownKeys(object, enumerableOnly) { var keys = (0, _keys["default"])(object); if (_getOwnPropertySymbols["default"]) { var symbols = (0, _getOwnPropertySymbols["default"])(object); if (enumerableOnly) symbols = (0, _filter["default"])(symbols).call(symbols, function (sym) { return (0, _getOwnPropertyDescriptor["default"])(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
46
+
47
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { var _context3; (0, _forEach["default"])(_context3 = ownKeys(Object(source), true)).call(_context3, function (key) { (0, _defineProperty3["default"])(target, key, source[key]); }); } else if (_getOwnPropertyDescriptors["default"]) { (0, _defineProperties["default"])(target, (0, _getOwnPropertyDescriptors["default"])(source)); } else { var _context4; (0, _forEach["default"])(_context4 = ownKeys(Object(source))).call(_context4, function (key) { (0, _defineProperty2["default"])(target, key, (0, _getOwnPropertyDescriptor["default"])(source, key)); }); } } return target; }
48
+
49
+ function createMockData(length, objectScheme) {
50
+ var mockDataBase = {
51
+ animal: _animals["default"],
52
+ firstName: _firstNames["default"]
53
+ };
54
+ var itemsNumber = {
55
+ animal: 0,
56
+ firstName: 0
57
+ };
58
+
59
+ var getPropValue = function getPropValue(valueType) {
60
+ if (valueType === 'id') {
61
+ return (0, _uuid.v4)();
62
+ }
63
+
64
+ var valueNumber = itemsNumber[valueType];
65
+ var propValue = mockDataBase[valueType][valueNumber];
66
+ itemsNumber[valueType] += 1;
67
+ return propValue;
68
+ };
69
+
70
+ var generateObject = function generateObject() {
71
+ var entries = (0, _entries["default"])(objectScheme);
72
+
73
+ var reducer = function reducer(previousValue, currentValue) {
74
+ var fieldName = currentValue[0];
75
+ var fieldValue = getPropValue(currentValue[1]);
76
+ return _objectSpread(_objectSpread({}, previousValue), {}, (0, _defineProperty3["default"])({}, fieldName, fieldValue));
77
+ };
78
+
79
+ return (0, _reduce["default"])(entries).call(entries, reducer, {});
80
+ };
81
+
82
+ var generateDataArr = function generateDataArr() {
83
+ var _context, _context2;
84
+
85
+ return (0, _map["default"])(_context = (0, _fill["default"])(_context2 = Array(length)).call(_context2, undefined)).call(_context, function () {
86
+ return generateObject();
87
+ });
88
+ };
89
+
90
+ return generateDataArr();
91
+ }
92
+
93
+ var _default = createMockData; // usage(delete this comment as soon as we used this function in a few stories so we have examples):
94
+ // const mockData = createMockData(100, { name: 'animal', id: 'id' });
95
+
96
+ exports["default"] = _default;
@@ -14,7 +14,7 @@ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (
14
14
 
15
15
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { var _context2; _forEachInstanceProperty(_context2 = ownKeys(Object(source), true)).call(_context2, function (key) { _defineProperty(target, key, source[key]); }); } else if (_Object$getOwnPropertyDescriptors) { _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)); } else { var _context3; _forEachInstanceProperty(_context3 = ownKeys(Object(source))).call(_context3, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } } return target; }
16
16
 
17
- import React, { forwardRef, useCallback, useImperativeHandle, useMemo, useRef } from 'react';
17
+ import React, { forwardRef, Fragment, useCallback, useImperativeHandle, useMemo, useRef } from 'react';
18
18
  import { useBreadcrumbItem } from '@react-aria/breadcrumbs';
19
19
  import PropTypes from 'prop-types';
20
20
  import { mergeProps } from '@react-aria/utils';
@@ -54,6 +54,9 @@ var BreadcrumbItem = /*#__PURE__*/forwardRef(function (props, ref) {
54
54
  case 'Text':
55
55
  return Text;
56
56
 
57
+ case 'Fragment':
58
+ return Fragment;
59
+
57
60
  default:
58
61
  return elementType;
59
62
  }
@@ -1,7 +1,9 @@
1
- import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
2
1
  import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
2
+ import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
3
+ import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
4
+ import _Array$isArray from "@babel/runtime-corejs3/core-js-stable/array/is-array";
3
5
  import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
4
- import React, { forwardRef, useRef, useImperativeHandle, Fragment } from 'react';
6
+ import React, { forwardRef, useRef, useImperativeHandle, Fragment, useCallback } from 'react';
5
7
  import { useBreadcrumbs } from '@react-aria/breadcrumbs';
6
8
  import PropTypes from 'prop-types';
7
9
  import { mergeProps } from '@react-aria/utils';
@@ -21,7 +23,12 @@ var Breadcrumbs = /*#__PURE__*/forwardRef(function (props, ref) {
21
23
  icon = props.icon,
22
24
  iconProps = props.iconProps,
23
25
  onAction = props.onAction,
24
- others = _objectWithoutProperties(props, ["children", "icon", "iconProps", "onAction"]);
26
+ others = _objectWithoutProperties(props, ["children", "icon", "iconProps", "onAction"]); // the following filters undefined values passed as a child
27
+
28
+
29
+ var filteredChildren = _Array$isArray(children) ? _filterInstanceProperty(children).call(children, function (child) {
30
+ return child;
31
+ }) : children;
25
32
 
26
33
  var _useBreadcrumbs = useBreadcrumbs(props),
27
34
  wrapperProps = _useBreadcrumbs.navProps;
@@ -33,26 +40,28 @@ var Breadcrumbs = /*#__PURE__*/forwardRef(function (props, ref) {
33
40
  useImperativeHandle(ref, function () {
34
41
  return breadcrumbsRef.current;
35
42
  });
36
- return ___EmotionJSX(Box, _extends({
37
- ref: breadcrumbsRef,
38
- display: "flex",
39
- flexDirection: "row",
40
- alignItems: "center",
41
- sx: {
42
- overflow: 'auto'
43
- }
44
- }, mergeProps(wrapperProps, others)), _mapInstanceProperty(children).call(children, function (child, idx) {
43
+ var createBreadcrumb = useCallback(function (child, idx) {
44
+ var isCurrentItem = _Array$isArray(filteredChildren) && filteredChildren.length > 1 ? idx === children.length - 1 : true;
45
45
  return ___EmotionJSX(Fragment, {
46
46
  key: "fragment-".concat(child.key)
47
47
  }, ___EmotionJSX(BreadcrumbItem, _extends({
48
48
  "data-id": child['data-id'],
49
- isCurrent: idx === children.length - 1,
49
+ isCurrent: isCurrentItem,
50
50
  onAction: onAction,
51
51
  actionKey: child.key
52
- }, child.props), child.props.children), icon && idx !== children.length - 1 && ___EmotionJSX(Icon, _extends({
52
+ }, child.props), child.props.children), icon && !isCurrentItem && ___EmotionJSX(Icon, _extends({
53
53
  icon: icon
54
54
  }, iconProps)));
55
- }));
55
+ }, [children.length, filteredChildren, icon, iconProps, onAction]);
56
+ return ___EmotionJSX(Box, _extends({
57
+ ref: breadcrumbsRef,
58
+ display: "flex",
59
+ flexDirection: "row",
60
+ alignItems: "center",
61
+ sx: {
62
+ overflow: 'auto'
63
+ }
64
+ }, mergeProps(wrapperProps, others)), _Array$isArray(filteredChildren) ? _mapInstanceProperty(filteredChildren).call(filteredChildren, createBreadcrumb) : createBreadcrumb(children));
56
65
  });
57
66
  Breadcrumbs.propTypes = {
58
67
  /** The icon to render in between each node. */
@@ -89,4 +89,13 @@ test('Item accepts a data-id and the data-id can be found in the DOM', function
89
89
  var item = screen.getByText(testItemsArr[0]);
90
90
  expect(item).toBeInTheDocument();
91
91
  expect(item).toHaveAttribute('data-id', testItemsArr[0]);
92
+ });
93
+ test('will render correctly with single child item', function () {
94
+ render(___EmotionJSX(Breadcrumbs, mergeProps(defaultProps), ___EmotionJSX(Item, {
95
+ key: testItemsArr[0],
96
+ "data-id": testItemsArr[0],
97
+ isCurrent: true
98
+ }, testItemsArr[0])));
99
+ expect(screen.getByTestId(testId)).toBeInTheDocument();
100
+ expect(screen.getByText(testItemsArr[0])).toBeInTheDocument();
92
101
  });