@shoper/phoenix_design_system 1.18.10-0 → 1.18.10-2

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 (38) hide show
  1. package/build/cjs/packages/phoenix/src/components/accordion/accordion.js +28 -6
  2. package/build/cjs/packages/phoenix/src/components/accordion/accordion.js.map +1 -1
  3. package/build/cjs/packages/phoenix/src/components/accordion/accordion_constants.js +5 -0
  4. package/build/cjs/packages/phoenix/src/components/accordion/accordion_constants.js.map +1 -1
  5. package/build/cjs/packages/phoenix/src/components/accordion/accordion_content.js +151 -2
  6. package/build/cjs/packages/phoenix/src/components/accordion/accordion_content.js.map +1 -1
  7. package/build/cjs/packages/phoenix/src/components/accordion/accordion_group.js +171 -47
  8. package/build/cjs/packages/phoenix/src/components/accordion/accordion_group.js.map +1 -1
  9. package/build/cjs/packages/phoenix/src/components/accordion/accordion_toggler.js +57 -1
  10. package/build/cjs/packages/phoenix/src/components/accordion/accordion_toggler.js.map +1 -1
  11. package/build/cjs/packages/phoenix/src/index.js +6 -5
  12. package/build/cjs/packages/phoenix/src/index.js.map +1 -1
  13. package/build/cjs/packages/utilities/build/esm/packages/utilities/src/feature_flag_utils.js +26 -0
  14. package/build/cjs/packages/utilities/build/esm/packages/utilities/src/feature_flag_utils.js.map +1 -0
  15. package/build/cjs/packages/utilities/build/esm/packages/utilities/src/json_utils.js +25 -0
  16. package/build/cjs/packages/utilities/build/esm/packages/utilities/src/json_utils.js.map +1 -0
  17. package/build/esm/packages/phoenix/src/components/accordion/accordion.d.ts +6 -1
  18. package/build/esm/packages/phoenix/src/components/accordion/accordion.js +29 -7
  19. package/build/esm/packages/phoenix/src/components/accordion/accordion.js.map +1 -1
  20. package/build/esm/packages/phoenix/src/components/accordion/accordion_constants.d.ts +4 -0
  21. package/build/esm/packages/phoenix/src/components/accordion/accordion_constants.js +5 -1
  22. package/build/esm/packages/phoenix/src/components/accordion/accordion_constants.js.map +1 -1
  23. package/build/esm/packages/phoenix/src/components/accordion/accordion_content.d.ts +24 -0
  24. package/build/esm/packages/phoenix/src/components/accordion/accordion_content.js +151 -2
  25. package/build/esm/packages/phoenix/src/components/accordion/accordion_content.js.map +1 -1
  26. package/build/esm/packages/phoenix/src/components/accordion/accordion_group.d.ts +17 -3
  27. package/build/esm/packages/phoenix/src/components/accordion/accordion_group.js +172 -48
  28. package/build/esm/packages/phoenix/src/components/accordion/accordion_group.js.map +1 -1
  29. package/build/esm/packages/phoenix/src/components/accordion/accordion_toggler.d.ts +9 -0
  30. package/build/esm/packages/phoenix/src/components/accordion/accordion_toggler.js +57 -1
  31. package/build/esm/packages/phoenix/src/components/accordion/accordion_toggler.js.map +1 -1
  32. package/build/esm/packages/phoenix/src/components/accordion/accordion_types.d.ts +10 -0
  33. package/build/esm/packages/phoenix/src/index.js +2 -2
  34. package/build/esm/packages/utilities/build/esm/packages/utilities/src/feature_flag_utils.js +22 -0
  35. package/build/esm/packages/utilities/build/esm/packages/utilities/src/feature_flag_utils.js.map +1 -0
  36. package/build/esm/packages/utilities/build/esm/packages/utilities/src/json_utils.js +21 -0
  37. package/build/esm/packages/utilities/build/esm/packages/utilities/src/json_utils.js.map +1 -0
  38. package/package.json +2 -2
@@ -78,8 +78,8 @@ var textarea_control = require('./components/form/textarea/textarea_control.js')
78
78
  var accordion_constants = require('./components/accordion/accordion_constants.js');
79
79
  var accordion = require('./components/accordion/accordion.js');
80
80
  var accordion_group = require('./components/accordion/accordion_group.js');
81
- var accordion_toggler = require('./components/accordion/accordion_toggler.js');
82
81
  var accordion_content = require('./components/accordion/accordion_content.js');
82
+ var accordion_toggler = require('./components/accordion/accordion_toggler.js');
83
83
  var dropdown_close = require('./components/dropdown/dropdown_close.js');
84
84
  var toggle_button_group = require('./components/groups/toggle_button_group/toggle_button_group.js');
85
85
  var toggle_button = require('./components/groups/toggle_button_group/toggle_button.js');
@@ -468,6 +468,7 @@ Object.defineProperty(exports, 'HTextareaControl', {
468
468
  }
469
469
  });
470
470
  exports.ACCORDION_ANIMATION_DURATION = accordion_constants.ACCORDION_ANIMATION_DURATION;
471
+ exports.ACCORDION_CONTEXTS = accordion_constants.ACCORDION_CONTEXTS;
471
472
  exports.ACCORDION_CSS_CLASSES = accordion_constants.ACCORDION_CSS_CLASSES;
472
473
  exports.ACCORDION_EVENTS = accordion_constants.ACCORDION_EVENTS;
473
474
  exports.ACCORDION_MODE = accordion_constants.ACCORDION_MODE;
@@ -483,16 +484,16 @@ Object.defineProperty(exports, 'HAccordionGroup', {
483
484
  return accordion_group.HAccordionGroup;
484
485
  }
485
486
  });
486
- Object.defineProperty(exports, 'HAccordionToggler', {
487
+ Object.defineProperty(exports, 'HAccordionContent', {
487
488
  enumerable: true,
488
489
  get: function () {
489
- return accordion_toggler.HAccordionToggler;
490
+ return accordion_content.HAccordionContent;
490
491
  }
491
492
  });
492
- Object.defineProperty(exports, 'HAccordionContent', {
493
+ Object.defineProperty(exports, 'HAccordionToggler', {
493
494
  enumerable: true,
494
495
  get: function () {
495
- return accordion_content.HAccordionContent;
496
+ return accordion_toggler.HAccordionToggler;
496
497
  }
497
498
  });
498
499
  Object.defineProperty(exports, 'HDropdownClose', {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,26 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var json_utils = require('./json_utils.js');
6
+
7
+ class FeatureFlagUtils {
8
+ static _initialize() {
9
+ if (this._flags !== null)
10
+ return;
11
+ const $script = document.getElementById('featureFlags');
12
+ this._flags = $script ? this._toObjectFromJsonScriptTag($script) : null;
13
+ }
14
+ static _toObjectFromJsonScriptTag(scriptTag) {
15
+ const scriptContent = scriptTag.textContent;
16
+ return json_utils.JsonUtils.fromJson(scriptContent) || {};
17
+ }
18
+ static isEnabled(flagName) {
19
+ this._initialize();
20
+ return !!this._flags[flagName];
21
+ }
22
+ }
23
+ FeatureFlagUtils._flags = null;
24
+
25
+ exports.FeatureFlagUtils = FeatureFlagUtils;
26
+ //# sourceMappingURL=feature_flag_utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ class JsonUtils {
6
+ static toJson(value) {
7
+ try {
8
+ return JSON.stringify(value);
9
+ }
10
+ catch (error) {
11
+ console.error(error);
12
+ }
13
+ }
14
+ static fromJson(value) {
15
+ try {
16
+ return JSON.parse(value);
17
+ }
18
+ catch (error) {
19
+ console.error(error);
20
+ }
21
+ }
22
+ }
23
+
24
+ exports.JsonUtils = JsonUtils;
25
+ //# sourceMappingURL=json_utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -3,8 +3,13 @@ import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element/pho
3
3
  export declare class HAccordion extends PhoenixLightLitElement implements IAccordion {
4
4
  disabled: boolean;
5
5
  mode: TAccordionMode;
6
- updated(): void;
6
+ private _accordionSubject;
7
+ private _accordionContext;
8
+ private _isDevAccordionOptimizationFlagEnabled;
9
+ constructor();
7
10
  enable(): void;
8
11
  disable(): void;
12
+ updated(): void;
9
13
  notify(): void;
14
+ private _getProps;
10
15
  }
@@ -2,16 +2,23 @@ import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.
2
2
  import { property } from 'lit/decorators';
3
3
  import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
4
4
  import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
5
- import { ACCORDION_MODE, ACCORDION_EVENTS } from './accordion_constants.js';
5
+ import { BehaviorSubject } from '../../core/classes/behavior_subject/behavior_subject.js';
6
+ import { ContextProviderController } from '../../core/context/context_provider_controller.js';
7
+ import { ACCORDION_MODE, ACCORDION_CONTEXTS, ACCORDION_EVENTS } from './accordion_constants.js';
8
+ import { FeatureFlagUtils } from '../../../../utilities/build/esm/packages/utilities/src/feature_flag_utils.js';
6
9
 
7
10
  let HAccordion = class HAccordion extends PhoenixLightLitElement {
8
11
  constructor() {
9
- super(...arguments);
12
+ super();
10
13
  this.disabled = false;
11
14
  this.mode = ACCORDION_MODE.multi;
12
- }
13
- updated() {
14
- this.notify();
15
+ this._isDevAccordionOptimizationFlagEnabled = FeatureFlagUtils.isEnabled('dev_accordion_optimization');
16
+ if (!this._isDevAccordionOptimizationFlagEnabled) {
17
+ this._accordionSubject = new BehaviorSubject(this._getProps());
18
+ this._accordionContext = new ContextProviderController(this);
19
+ this._accordionContext.provide(ACCORDION_CONTEXTS.accordionProps, this._accordionSubject);
20
+ this.setAttribute('role', 'none');
21
+ }
15
22
  }
16
23
  enable() {
17
24
  this.disabled = false;
@@ -19,8 +26,22 @@ let HAccordion = class HAccordion extends PhoenixLightLitElement {
19
26
  disable() {
20
27
  this.disabled = true;
21
28
  }
29
+ updated() {
30
+ this.notify();
31
+ }
22
32
  notify() {
23
- this.dispatchEvent(new Event(ACCORDION_EVENTS.update));
33
+ if (this._isDevAccordionOptimizationFlagEnabled) {
34
+ this.dispatchEvent(new Event(ACCORDION_EVENTS.update));
35
+ }
36
+ else {
37
+ this._accordionSubject.notify(this._getProps());
38
+ }
39
+ }
40
+ _getProps() {
41
+ return {
42
+ disabled: this.disabled,
43
+ mode: this.mode
44
+ };
24
45
  }
25
46
  };
26
47
  __decorate([
@@ -32,7 +53,8 @@ __decorate([
32
53
  __metadata("design:type", String)
33
54
  ], HAccordion.prototype, "mode", void 0);
34
55
  HAccordion = __decorate([
35
- phoenixCustomElement('h-accordion')
56
+ phoenixCustomElement('h-accordion'),
57
+ __metadata("design:paramtypes", [])
36
58
  ], HAccordion);
37
59
 
38
60
  export { HAccordion };
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -2,6 +2,10 @@ export declare const ACCORDION_EVENTS: {
2
2
  readonly toggle: "toggle";
3
3
  readonly update: "updateAccordion";
4
4
  };
5
+ export declare const ACCORDION_CONTEXTS: {
6
+ accordionProps: string;
7
+ accordionGroupProps: string;
8
+ };
5
9
  export declare const ACCORDION_CSS_CLASSES: {
6
10
  readonly open: "accordion__details_open";
7
11
  };
@@ -2,6 +2,10 @@ const ACCORDION_EVENTS = {
2
2
  toggle: 'toggle',
3
3
  update: 'updateAccordion'
4
4
  };
5
+ const ACCORDION_CONTEXTS = {
6
+ accordionProps: 'accordionPropsSubject',
7
+ accordionGroupProps: 'accordionGroupPropsSubject'
8
+ };
5
9
  const ACCORDION_CSS_CLASSES = {
6
10
  open: 'accordion__details_open'
7
11
  };
@@ -11,5 +15,5 @@ const ACCORDION_MODE = {
11
15
  };
12
16
  const ACCORDION_ANIMATION_DURATION = 400;
13
17
 
14
- export { ACCORDION_ANIMATION_DURATION, ACCORDION_CSS_CLASSES, ACCORDION_EVENTS, ACCORDION_MODE };
18
+ export { ACCORDION_ANIMATION_DURATION, ACCORDION_CONTEXTS, ACCORDION_CSS_CLASSES, ACCORDION_EVENTS, ACCORDION_MODE };
15
19
  //# sourceMappingURL=accordion_constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -1,5 +1,29 @@
1
1
  import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element/phoenix_light_lit_element";
2
+ import { PropertyValues } from 'lit';
2
3
  export declare class HAccordionContent extends PhoenixLightLitElement {
4
+ transitionName: string;
5
+ private _transitionController;
6
+ private _contextConsumer;
7
+ private _accordionGroupProps;
8
+ private _accordionGroupPropsObserver;
9
+ private _originalHeight;
10
+ private _resizeDebounceTimer;
11
+ private _mutationDebounceTimer;
12
+ private _mutationObserver;
13
+ private _boundHandleTransitionEnd;
14
+ private _isDevAccordionOptimizationFlagEnabled;
3
15
  constructor();
4
16
  connectedCallback(): void;
17
+ firstUpdated(props: PropertyValues): void;
18
+ private _handleResize;
19
+ private _setStylingOptions;
20
+ private _subscribeObserver;
21
+ private _handleMutation;
22
+ private _setOriginalHeightValue;
23
+ private _expand;
24
+ private _handleTransitionEnd;
25
+ private _collapse;
26
+ private _setHeight;
27
+ private _setAttributes;
28
+ disconnectedCallback(): void;
5
29
  }
@@ -1,17 +1,166 @@
1
1
  import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.js';
2
+ import 'lit';
3
+ import { property } from 'lit/decorators';
4
+ import { UiDomUtils } from '@dreamcommerce/utilities';
2
5
  import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
3
6
  import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
7
+ import { Observer } from '../../core/classes/observer/observer.js';
8
+ import { ContextConsumerController } from '../../core/context/context_consumer_controller.js';
9
+ import { ACCORDION_CONTEXTS } from './accordion_constants.js';
10
+ import { FeatureFlagUtils } from '../../../../utilities/build/esm/packages/utilities/src/feature_flag_utils.js';
11
+ import { HAccordion } from './accordion.js';
12
+ import { TransitionController } from '../../controllers/transition_controller/transition_controller.js';
4
13
 
14
+ const RESIZE_DEBOUNCE_MS = 150;
15
+ const MUTATION_DEBOUNCE_MS = 100;
5
16
  let HAccordionContent = class HAccordionContent extends PhoenixLightLitElement {
6
17
  constructor() {
7
18
  super();
8
- this.slot = this.hasAttribute('slot') ? this.slot : 'content';
19
+ this.transitionName = 'accordion-toggle';
20
+ this._resizeDebounceTimer = null;
21
+ this._mutationDebounceTimer = null;
22
+ this._mutationObserver = null;
23
+ this._handleResize = () => {
24
+ if (this._resizeDebounceTimer !== null) {
25
+ window.cancelAnimationFrame(this._resizeDebounceTimer);
26
+ }
27
+ this._resizeDebounceTimer = window.requestAnimationFrame(() => {
28
+ setTimeout(() => {
29
+ this._setStylingOptions();
30
+ }, RESIZE_DEBOUNCE_MS);
31
+ });
32
+ };
33
+ this._setStylingOptions = () => {
34
+ requestAnimationFrame(() => {
35
+ const previousDisplay = this.style.display;
36
+ this.style.setProperty('display', 'block', 'important');
37
+ this.style.height = 'auto';
38
+ requestAnimationFrame(() => {
39
+ this._setOriginalHeightValue();
40
+ this.style.display = previousDisplay;
41
+ this.style.height = this.hidden ? '0px' : this._originalHeight;
42
+ });
43
+ });
44
+ };
45
+ this._handleMutation = () => {
46
+ if (this._mutationDebounceTimer !== null) {
47
+ window.clearTimeout(this._mutationDebounceTimer);
48
+ }
49
+ this._mutationDebounceTimer = window.setTimeout(() => {
50
+ requestAnimationFrame(() => {
51
+ this.style.height = 'auto';
52
+ requestAnimationFrame(() => {
53
+ this._setOriginalHeightValue();
54
+ if (this.hidden) {
55
+ this.style.height = '0px';
56
+ }
57
+ else {
58
+ this.style.height = this._originalHeight;
59
+ }
60
+ });
61
+ });
62
+ }, MUTATION_DEBOUNCE_MS);
63
+ };
64
+ this._setOriginalHeightValue = () => {
65
+ const newHeight = this.getBoundingClientRect().height;
66
+ if (newHeight !== 0 || this.children.length === 0) {
67
+ this._originalHeight = `${newHeight}px`;
68
+ }
69
+ };
70
+ this._expand = () => {
71
+ this._setHeight(this._originalHeight);
72
+ };
73
+ this._handleTransitionEnd = (e) => {
74
+ if (this._isDevAccordionOptimizationFlagEnabled)
75
+ return;
76
+ if (e.propertyName !== 'height' || e.target !== this) {
77
+ return;
78
+ }
79
+ if (!this.hidden && this.style.height !== '0px') {
80
+ this.style.height = 'auto';
81
+ }
82
+ };
83
+ this._collapse = () => {
84
+ const currentHeight = this.getBoundingClientRect().height;
85
+ this._setHeight(`${currentHeight}px`);
86
+ requestAnimationFrame(() => {
87
+ requestAnimationFrame(() => {
88
+ this._setHeight('0px');
89
+ });
90
+ });
91
+ };
92
+ this._isDevAccordionOptimizationFlagEnabled = FeatureFlagUtils.isEnabled('dev_accordion_optimization');
93
+ if (this._isDevAccordionOptimizationFlagEnabled) {
94
+ if (this.parentElement instanceof HAccordion) {
95
+ this.slot = this.hasAttribute('slot') ? this.slot : 'content';
96
+ }
97
+ else {
98
+ const contentToSlot = UiDomUtils.findParentByCondition(this, ($el) => $el.parentElement instanceof HAccordion);
99
+ contentToSlot === null || contentToSlot === void 0 ? void 0 : contentToSlot.setAttribute('slot', 'content');
100
+ }
101
+ }
102
+ else {
103
+ this.setAttribute('role', 'region');
104
+ this._boundHandleTransitionEnd = this._handleTransitionEnd.bind(this);
105
+ }
9
106
  }
10
107
  connectedCallback() {
11
108
  super.connectedCallback();
12
- this.classList.add('accordion-content');
109
+ if (!this._isDevAccordionOptimizationFlagEnabled) {
110
+ this._contextConsumer = new ContextConsumerController(this);
111
+ this._transitionController = new TransitionController(this, this.transitionName);
112
+ this._subscribeObserver();
113
+ window.addEventListener('resize', this._handleResize, { passive: true });
114
+ this.addEventListener('transitionend', this._boundHandleTransitionEnd);
115
+ }
116
+ if (this._isDevAccordionOptimizationFlagEnabled) {
117
+ this.classList.add('accordion-content');
118
+ }
119
+ }
120
+ firstUpdated(props) {
121
+ super.firstUpdated(props);
122
+ if (!this._isDevAccordionOptimizationFlagEnabled) {
123
+ this._setStylingOptions();
124
+ }
125
+ }
126
+ async _subscribeObserver() {
127
+ this._accordionGroupProps = await this._contextConsumer.consumeAsync(ACCORDION_CONTEXTS.accordionGroupProps);
128
+ this._accordionGroupPropsObserver = new Observer((accordionProps) => {
129
+ this._setAttributes(accordionProps);
130
+ accordionProps.opened ? this._transitionController.show(this._expand) : this._transitionController.hide(this._collapse);
131
+ });
132
+ this._accordionGroupProps.subscribe(this._accordionGroupPropsObserver);
133
+ this._mutationObserver = new MutationObserver(this._handleMutation);
134
+ this._mutationObserver.observe(this, { childList: true, subtree: true });
135
+ }
136
+ _setHeight(height) {
137
+ this.style.height = height;
138
+ }
139
+ _setAttributes({ regionId, controlsId }) {
140
+ this.setAttribute('id', controlsId);
141
+ this.setAttribute('labelledby', regionId);
142
+ }
143
+ disconnectedCallback() {
144
+ var _a, _b;
145
+ super.disconnectedCallback();
146
+ if (!this._isDevAccordionOptimizationFlagEnabled) {
147
+ (_a = this._accordionGroupProps) === null || _a === void 0 ? void 0 : _a.unsubscribe(this._accordionGroupPropsObserver);
148
+ (_b = this._mutationObserver) === null || _b === void 0 ? void 0 : _b.disconnect();
149
+ window.removeEventListener('resize', this._handleResize);
150
+ this.removeEventListener('transitionend', this._boundHandleTransitionEnd);
151
+ if (this._resizeDebounceTimer !== null) {
152
+ window.cancelAnimationFrame(this._resizeDebounceTimer);
153
+ }
154
+ if (this._mutationDebounceTimer !== null) {
155
+ window.clearTimeout(this._mutationDebounceTimer);
156
+ }
157
+ }
13
158
  }
14
159
  };
160
+ __decorate([
161
+ property(),
162
+ __metadata("design:type", Object)
163
+ ], HAccordionContent.prototype, "transitionName", void 0);
15
164
  HAccordionContent = __decorate([
16
165
  phoenixCustomElement('h-accordion-content'),
17
166
  __metadata("design:paramtypes", [])
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -4,23 +4,37 @@ import { PropertyValues } from 'lit';
4
4
  export declare class HAccordionGroup extends PhoenixLightLitElement implements IAccordionGroup, IAccordion {
5
5
  opened: boolean;
6
6
  private _isDisabled;
7
+ private _regionId;
8
+ private _controlsId;
7
9
  private _mode;
10
+ private _accordionGroupPropsSubject;
11
+ private _accordionGroupContext;
12
+ private _accordionContextConsumer;
13
+ private _accordionProps;
14
+ private _accordionPropsObserver;
8
15
  private _$parentAccordion;
9
16
  private _detailsRef;
10
17
  private _togglerId;
18
+ private _isDevAccordionOptimizationFlagEnabled;
19
+ constructor();
11
20
  connectedCallback(): void;
12
21
  firstUpdated(props: PropertyValues): void;
22
+ private _subscribeObserver;
13
23
  disconnectedCallback(): void;
14
24
  private _syncWithParentAccordion;
15
- private _handleSingleModeConstraint;
16
- toggle(): void;
17
25
  show(): void;
18
26
  hide(): void;
19
- private _hideOtherDetailsGroups;
20
27
  private _dispatchToggleEvent;
28
+ toggle(): void;
29
+ private _handleSingleModeConstraint;
30
+ private _hideOtherDetailsGroups;
21
31
  enable(): void;
22
32
  disable(): void;
33
+ private _accordionToggle;
34
+ private _closeOtherAccordionGroups;
23
35
  notify(): void;
36
+ protected updated(_changedProperties: Map<string, unknown>): void;
37
+ private _getProps;
24
38
  private _summaryClickHandler;
25
39
  protected render(): unknown;
26
40
  }