@plaudit/gutenberg-api-extensions 2.18.2 → 2.18.3

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.
@@ -8,30 +8,48 @@ export function ProperLinkControl(props) {
8
8
  const [areAdvancedSettingsVisible, setAreAdvancedSettingsVisible] = useState(false);
9
9
  const advancedSettingsRef = useRef(null);
10
10
  useEffect(() => {
11
- if (!advancedSettingsRef.current) {
11
+ const advancedSettingsElement = advancedSettingsRef.current;
12
+ if (!advancedSettingsElement) {
13
+ return () => { };
14
+ }
15
+ const transitionListener = (evt) => {
16
+ if (evt.propertyName === 'max-height' && evt.target === advancedSettingsElement) {
17
+ if (advancedSettingsElement.style.maxHeight === '0px') {
18
+ advancedSettingsElement.style.display = 'none';
19
+ }
20
+ else {
21
+ advancedSettingsElement.style.maxHeight = '';
22
+ }
23
+ }
24
+ };
25
+ advancedSettingsElement.addEventListener('transitionend', transitionListener);
26
+ return () => advancedSettingsElement.addEventListener('transitionend', transitionListener);
27
+ }, [advancedSettingsRef]);
28
+ useEffect(() => {
29
+ const advancedSettingsElement = advancedSettingsRef.current;
30
+ if (!advancedSettingsElement) {
12
31
  return;
13
32
  }
14
33
  if (areAdvancedSettingsVisible) {
15
- advancedSettingsRef.current.style.maxHeight = `${advancedSettingsRef.current.scrollHeight}px`;
16
- advancedSettingsRef.current.style.marginTop = "8px";
34
+ advancedSettingsElement.style.display = '';
35
+ advancedSettingsElement.style.maxHeight = advancedSettingsElement.scrollHeight + "px";
17
36
  }
18
37
  else {
19
- advancedSettingsRef.current.style.maxHeight = "0";
20
- advancedSettingsRef.current.style.marginTop = "0";
38
+ advancedSettingsElement.style.maxHeight = advancedSettingsElement.scrollHeight + "px";
39
+ // We have to use window.requestAnimationFrame in order to force the maxHeight to be treated as "recalculated".
40
+ // Unless something else on the page goes horribly wrong, there shouldn't be any actual painting done as part of updating the max height.
41
+ window.requestAnimationFrame(() => advancedSettingsElement.style.maxHeight = "0px");
21
42
  }
22
43
  }, [areAdvancedSettingsVisible, advancedSettingsRef]);
23
44
  return React.createElement(BaseControl, { id: `plaudit-gutenberg-extensions-link-property-wrapper-${Math.round(Math.random() * 10000 + 1)}`, label: props.label, help: props.help },
24
45
  React.createElement(LinkControl, { ...linkControlProps, value: value, onChange: onChange, onRemove: onRemove ?? (() => onChange(undefined)), settings: [], renderControlBottom: () => (value?.url && settings?.length && React.createElement(React.Fragment, null,
25
- React.createElement(Button, { variant: "tertiary", onClick: () => setAreAdvancedSettingsVisible(!areAdvancedSettingsVisible), icon: areAdvancedSettingsVisible ? chevronUp : chevronDown, iconPosition: "right" }, "Advanced"),
26
- React.createElement("div", { ref: advancedSettingsRef, style: { transition: "max-height 200ms ease-in-out", overflow: "hidden" } }, ...settings.map(setting => React.createElement(ProperLinkControlSetting, { setting: setting, onChange: onChange, value: value }))))) || "" }));
46
+ React.createElement(Button, { variant: "tertiary", onClick: () => setAreAdvancedSettingsVisible(!areAdvancedSettingsVisible), icon: areAdvancedSettingsVisible ? chevronUp : chevronDown, iconPosition: "right", text: "Advanced" }),
47
+ React.createElement("div", { ref: advancedSettingsRef, style: { display: "none", transition: "max-height 200ms ease-in-out", overflow: "hidden" } }, ...settings.map(setting => React.createElement(ProperLinkControlSetting, { setting: setting, onChange: onChange, value: value }))))) || "" }));
27
48
  }
28
49
  ProperLinkControl.DEFAULT_LINK_SETTINGS = LinkControl.DEFAULT_LINK_SETTINGS;
29
50
  function ProperLinkControlSetting({ value, onChange, setting }) {
30
- if (setting.type === 'text') {
31
- return React.createElement(TextControl, { value: value?.[setting.id] ?? setting.default ?? '', label: setting.title, onChange: v => onChange({ ...value, [setting.id]: v }) });
32
- }
33
- else {
34
- return React.createElement(ToggleControl, { checked: value?.[setting.id] ?? setting.default ?? false, label: setting.title, onChange: v => onChange({ ...value, [setting.id]: v }) });
35
- }
51
+ return React.createElement("div", { style: { marginTop: "8px" } }, setting.type === 'text'
52
+ ? React.createElement(TextControl, { style: { marginTop: "8px" }, value: value?.[setting.id] ?? setting.default ?? '', label: setting.title, onChange: v => onChange({ ...value, [setting.id]: v }) })
53
+ : React.createElement(ToggleControl, { style: { marginTop: "8px" }, checked: value?.[setting.id] ?? setting.default ?? false, label: setting.title, onChange: v => onChange({ ...value, [setting.id]: v }) }));
36
54
  }
37
55
  //# sourceMappingURL=ProperLinkControl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProperLinkControl.js","sourceRoot":"","sources":["../../src/controls/ProperLinkControl.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProperLinkControl.js","sourceRoot":"","sources":["../../src/controls/ProperLinkControl.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plaudit/gutenberg-api-extensions",
3
- "version": "2.18.2",
3
+ "version": "2.18.3",
4
4
  "scripts": {
5
5
  "prepublishOnly": "rm -rf build && mkdir build && tsc",
6
6
  "build": "tsc",