@spectrum-web-components/overlay 0.30.0 → 0.30.1-overlay.30
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.
- package/package.json +50 -21
- package/sp-overlay.d.ts +6 -0
- package/sp-overlay.dev.js +5 -0
- package/{active-overlay.dev.js.map → sp-overlay.dev.js.map} +3 -3
- package/sp-overlay.js +2 -0
- package/{active-overlay.js.map → sp-overlay.js.map} +4 -4
- package/src/Overlay.d.ts +28 -0
- package/src/Overlay.dev.js +87 -0
- package/src/Overlay.dev.js.map +7 -0
- package/src/Overlay.js +2 -0
- package/src/Overlay.js.map +7 -0
- package/src/OverlayBase.d.ts +117 -0
- package/src/OverlayBase.dev.js +681 -0
- package/src/OverlayBase.dev.js.map +7 -0
- package/src/OverlayBase.js +17 -0
- package/src/OverlayBase.js.map +7 -0
- package/src/OverlayDialog.d.ts +8 -0
- package/src/OverlayDialog.dev.js +150 -0
- package/src/OverlayDialog.dev.js.map +7 -0
- package/src/OverlayDialog.js +2 -0
- package/src/OverlayDialog.js.map +7 -0
- package/src/OverlayNoPopover.d.ts +8 -0
- package/src/OverlayNoPopover.dev.js +120 -0
- package/src/OverlayNoPopover.dev.js.map +7 -0
- package/src/OverlayNoPopover.js +2 -0
- package/src/OverlayNoPopover.js.map +7 -0
- package/src/OverlayPopover.d.ts +8 -0
- package/src/OverlayPopover.dev.js +167 -0
- package/src/OverlayPopover.dev.js.map +7 -0
- package/src/OverlayPopover.js +2 -0
- package/src/OverlayPopover.js.map +7 -0
- package/src/OverlayStack.d.ts +24 -0
- package/src/OverlayStack.dev.js +125 -0
- package/src/OverlayStack.dev.js.map +7 -0
- package/src/OverlayStack.js +2 -0
- package/src/OverlayStack.js.map +7 -0
- package/src/OverlayTrigger.d.ts +19 -31
- package/src/OverlayTrigger.dev.js +116 -245
- package/src/OverlayTrigger.dev.js.map +3 -3
- package/src/OverlayTrigger.js +52 -22
- package/src/OverlayTrigger.js.map +3 -3
- package/src/PlacementController.d.ts +36 -0
- package/src/PlacementController.dev.js +193 -0
- package/src/PlacementController.dev.js.map +7 -0
- package/src/PlacementController.js +2 -0
- package/src/PlacementController.js.map +7 -0
- package/src/VirtualTrigger.dev.js +0 -2
- package/src/VirtualTrigger.dev.js.map +2 -2
- package/src/VirtualTrigger.js +1 -1
- package/src/VirtualTrigger.js.map +3 -3
- package/src/fullSizePlugin.d.ts +12 -0
- package/src/fullSizePlugin.dev.js +39 -0
- package/src/fullSizePlugin.dev.js.map +7 -0
- package/src/fullSizePlugin.js +2 -0
- package/src/fullSizePlugin.js.map +7 -0
- package/src/index.d.ts +2 -3
- package/src/index.dev.js +2 -3
- package/src/index.dev.js.map +2 -2
- package/src/index.js +1 -1
- package/src/index.js.map +2 -2
- package/src/loader.d.ts +2 -2
- package/src/loader.dev.js +2 -19
- package/src/loader.dev.js.map +2 -2
- package/src/loader.js +1 -1
- package/src/loader.js.map +3 -3
- package/src/overlay-base.css.dev.js +9 -0
- package/src/overlay-base.css.dev.js.map +7 -0
- package/src/overlay-base.css.js +6 -0
- package/src/overlay-base.css.js.map +7 -0
- package/src/overlay-trigger.css.dev.js +1 -1
- package/src/overlay-trigger.css.dev.js.map +1 -1
- package/src/overlay-trigger.css.js +1 -1
- package/src/overlay-trigger.css.js.map +1 -1
- package/src/overlay-types.d.ts +3 -3
- package/src/overlay-types.dev.js +1 -0
- package/src/overlay-types.dev.js.map +3 -3
- package/src/overlay-types.js +1 -1
- package/src/overlay-types.js.map +3 -3
- package/src/placement.d.ts +21 -0
- package/src/placement.dev.js +111 -0
- package/src/placement.dev.js.map +7 -0
- package/src/placement.js +2 -0
- package/src/placement.js.map +7 -0
- package/src/topLayerOverTransforms.d.ts +22 -0
- package/src/topLayerOverTransforms.dev.js +165 -0
- package/src/topLayerOverTransforms.dev.js.map +7 -0
- package/src/topLayerOverTransforms.js +2 -0
- package/src/topLayerOverTransforms.js.map +7 -0
- package/stories/overlay-element.stories.js +230 -0
- package/stories/overlay-element.stories.js.map +7 -0
- package/stories/overlay-story-components.js +9 -8
- package/stories/overlay-story-components.js.map +2 -2
- package/stories/overlay.stories.js +672 -646
- package/stories/overlay.stories.js.map +2 -2
- package/sync/overlay-trigger.d.ts +4 -0
- package/sync/overlay-trigger.dev.js +1 -4
- package/sync/overlay-trigger.dev.js.map +2 -2
- package/sync/overlay-trigger.js +1 -1
- package/sync/overlay-trigger.js.map +3 -3
- package/test/benchmark/basic-test.js +1 -1
- package/test/benchmark/basic-test.js.map +1 -1
- package/test/index.js +422 -375
- package/test/index.js.map +3 -3
- package/test/overlay-element.test-vrt.js +5 -0
- package/test/overlay-element.test-vrt.js.map +7 -0
- package/test/overlay-element.test.js +664 -0
- package/test/overlay-element.test.js.map +7 -0
- package/test/overlay-lifecycle.test.js +34 -106
- package/test/overlay-lifecycle.test.js.map +2 -2
- package/test/overlay-trigger-click.test.js +11 -5
- package/test/overlay-trigger-click.test.js.map +2 -2
- package/test/overlay-trigger-extended.test.js +1 -6
- package/test/overlay-trigger-extended.test.js.map +2 -2
- package/test/overlay-trigger-hover-click.test.js +22 -22
- package/test/overlay-trigger-hover-click.test.js.map +2 -2
- package/test/overlay-trigger-hover.test.js +40 -34
- package/test/overlay-trigger-hover.test.js.map +2 -2
- package/test/overlay-trigger-longpress.test.js +98 -80
- package/test/overlay-trigger-longpress.test.js.map +2 -2
- package/test/overlay-trigger-sync.test.js +1 -1
- package/test/overlay-trigger-sync.test.js.map +2 -2
- package/test/overlay-trigger.test.js +1 -1
- package/test/overlay-trigger.test.js.map +2 -2
- package/test/overlay-update.test.js +4 -4
- package/test/overlay-update.test.js.map +2 -2
- package/test/overlay.test.js +237 -235
- package/test/overlay.test.js.map +3 -3
- package/active-overlay.d.ts +0 -6
- package/active-overlay.dev.js +0 -5
- package/active-overlay.js +0 -2
- package/custom-elements.json +0 -1203
- package/src/ActiveOverlay.d.ts +0 -84
- package/src/ActiveOverlay.dev.js +0 -517
- package/src/ActiveOverlay.dev.js.map +0 -7
- package/src/ActiveOverlay.js +0 -16
- package/src/ActiveOverlay.js.map +0 -7
- package/src/active-overlay.css.dev.js +0 -13
- package/src/active-overlay.css.dev.js.map +0 -7
- package/src/active-overlay.css.js +0 -10
- package/src/active-overlay.css.js.map +0 -7
- package/src/overlay-stack.d.ts +0 -50
- package/src/overlay-stack.dev.js +0 -514
- package/src/overlay-stack.dev.js.map +0 -7
- package/src/overlay-stack.js +0 -33
- package/src/overlay-stack.js.map +0 -7
- package/src/overlay-utils.d.ts +0 -3
- package/src/overlay-utils.dev.js +0 -31
- package/src/overlay-utils.dev.js.map +0 -7
- package/src/overlay-utils.js +0 -2
- package/src/overlay-utils.js.map +0 -7
- package/src/overlay.d.ts +0 -59
- package/src/overlay.dev.js +0 -127
- package/src/overlay.dev.js.map +0 -7
- package/src/overlay.js +0 -2
- package/src/overlay.js.map +0 -7
- /package/src/{active-overlay.css.d.ts → overlay-base.css.d.ts} +0 -0
package/src/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";export*from"./
|
|
1
|
+
"use strict";export*from"./Overlay.js";export*from"./OverlayTrigger.js";export*from"./overlay-types.js";export*from"./VirtualTrigger.js";export*from"./loader.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["index.ts"],
|
|
4
|
-
"sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\nexport * from './
|
|
5
|
-
"mappings": "aAWA,WAAc,eACd,WAAc,sBACd,WAAc,qBACd,WAAc,
|
|
4
|
+
"sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\nexport * from './Overlay.js';\nexport * from './OverlayTrigger.js';\nexport * from './overlay-types.js';\nexport * from './VirtualTrigger.js';\nexport * from './loader.js';\n"],
|
|
5
|
+
"mappings": "aAWA,WAAc,eACd,WAAc,sBACd,WAAc,qBACd,WAAc,sBACd,WAAc",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/src/loader.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
export declare const openOverlay:
|
|
1
|
+
import { Overlay } from './Overlay.js';
|
|
2
|
+
export declare const openOverlay: typeof Overlay.open;
|
package/src/loader.dev.js
CHANGED
|
@@ -1,21 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var ignoreDeprecations = window.__swc.ignoreWarningLevels.deprecation;
|
|
5
|
-
}
|
|
6
|
-
const { Overlay } = await import("@spectrum-web-components/overlay/src/overlay.js");
|
|
7
|
-
if (true) {
|
|
8
|
-
if (
|
|
9
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
10
|
-
// @ts-ignore
|
|
11
|
-
ignoreDeprecations && !window.__swc.ignoreWarningLevels.deprecation
|
|
12
|
-
) {
|
|
13
|
-
window.__swc.ignoreWarningLevels.deprecation = ignoreDeprecations;
|
|
14
|
-
requestAnimationFrame(() => {
|
|
15
|
-
window.__swc.ignoreWarningLevels.deprecation = false;
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
return Overlay.open(target, interaction, content, options);
|
|
20
|
-
};
|
|
2
|
+
import { Overlay } from "./Overlay.dev.js";
|
|
3
|
+
export const openOverlay = Overlay.open;
|
|
21
4
|
//# sourceMappingURL=loader.dev.js.map
|
package/src/loader.dev.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["loader.ts"],
|
|
4
|
-
"sourcesContent": ["/*\nCopyright
|
|
5
|
-
"mappings": ";
|
|
4
|
+
"sourcesContent": ["/*\nCopyright 2023 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport { Overlay } from './Overlay.dev.js'\n\nexport const openOverlay = Overlay.open;\n"],
|
|
5
|
+
"mappings": ";AAYA,SAAS,eAAe;AAEjB,aAAM,cAAc,QAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/src/loader.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";import{Overlay as o}from"./Overlay.js";export const openOverlay=o.open;
|
|
2
2
|
//# sourceMappingURL=loader.js.map
|
package/src/loader.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["loader.ts"],
|
|
4
|
-
"sourcesContent": ["/*\nCopyright
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["
|
|
4
|
+
"sourcesContent": ["/*\nCopyright 2023 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport { Overlay } from './Overlay.js';\n\nexport const openOverlay = Overlay.open;\n"],
|
|
5
|
+
"mappings": "aAYA,OAAS,WAAAA,MAAe,eAEjB,aAAM,YAAcA,EAAQ",
|
|
6
|
+
"names": ["Overlay"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
import { css } from "@spectrum-web-components/base";
|
|
3
|
+
const styles = css`
|
|
4
|
+
:host{--swc-overlay-animation-distance:var(
|
|
5
|
+
--spectrum-picker-m-texticon-popover-offset-y,var(--spectrum-global-dimension-size-75)
|
|
6
|
+
)}dialog{background:none;border:0;box-sizing:border-box;display:flex;margin:0;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);max-width:calc(100vw - 16px);opacity:1!important;overflow:visible;padding:0;position:fixed}:host(:not([open])) dialog{left:0;pointer-events:none;top:0;transform:translate(-999em,-999em)}dialog::backdrop{display:none}dialog>div{width:100%}::slotted(sp-popover){position:static}dialog[actual-placement*=top]{margin-top:var(--swc-overlay-animation-distance);padding-block:var(--swc-overlay-animation-distance)}dialog[actual-placement*=right]{margin-left:calc(var(--swc-overlay-animation-distance)*-1);padding-inline:var(--swc-overlay-animation-distance)}dialog[actual-placement*=bottom]{margin-top:calc(var(--swc-overlay-animation-distance)*-1);padding-block:var(--swc-overlay-animation-distance)}dialog[actual-placement*=left]{margin-left:var(--swc-overlay-animation-distance);padding-inline:var(--swc-overlay-animation-distance)}slot[name=longpress-describedby-descriptor]{display:none}@supports selector(:open){dialog{opacity:0}dialog:open{opacity:1}}@supports selector(:popover-open){dialog{opacity:0}dialog:popover-open{opacity:1}}@supports (not selector(:open)) and (not selector(:popover-open)){:host:not([open]) dialog{pointer-events:none}dialog[actual-placement]{z-index:var(--swc-overlay-z-index)}}
|
|
7
|
+
`;
|
|
8
|
+
export default styles;
|
|
9
|
+
//# sourceMappingURL=overlay-base.css.dev.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["overlay-base.css.ts"],
|
|
4
|
+
"sourcesContent": ["/*\nCopyright 2023 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\nimport { css } from '@spectrum-web-components/base';\nconst styles = css`\n:host{--swc-overlay-animation-distance:var(\n--spectrum-picker-m-texticon-popover-offset-y,var(--spectrum-global-dimension-size-75)\n)}dialog{background:none;border:0;box-sizing:border-box;display:flex;margin:0;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);max-width:calc(100vw - 16px);opacity:1!important;overflow:visible;padding:0;position:fixed}:host(:not([open])) dialog{left:0;pointer-events:none;top:0;transform:translate(-999em,-999em)}dialog::backdrop{display:none}dialog>div{width:100%}::slotted(sp-popover){position:static}dialog[actual-placement*=top]{margin-top:var(--swc-overlay-animation-distance);padding-block:var(--swc-overlay-animation-distance)}dialog[actual-placement*=right]{margin-left:calc(var(--swc-overlay-animation-distance)*-1);padding-inline:var(--swc-overlay-animation-distance)}dialog[actual-placement*=bottom]{margin-top:calc(var(--swc-overlay-animation-distance)*-1);padding-block:var(--swc-overlay-animation-distance)}dialog[actual-placement*=left]{margin-left:var(--swc-overlay-animation-distance);padding-inline:var(--swc-overlay-animation-distance)}slot[name=longpress-describedby-descriptor]{display:none}@supports selector(:open){dialog{opacity:0}dialog:open{opacity:1}}@supports selector(:popover-open){dialog{opacity:0}dialog:popover-open{opacity:1}}@supports (not selector(:open)) and (not selector(:popover-open)){:host:not([open]) dialog{pointer-events:none}dialog[actual-placement]{z-index:var(--swc-overlay-z-index)}}\n`;\nexport default styles;"],
|
|
5
|
+
"mappings": ";AAWA,SAAS,WAAW;AACpB,MAAM,SAAS;AAAA;AAAA;AAAA;AAAA;AAKf,eAAe;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";import{css as a}from"@spectrum-web-components/base";const o=a`
|
|
2
|
+
:host{--swc-overlay-animation-distance:var(
|
|
3
|
+
--spectrum-picker-m-texticon-popover-offset-y,var(--spectrum-global-dimension-size-75)
|
|
4
|
+
)}dialog{background:none;border:0;box-sizing:border-box;display:flex;margin:0;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);max-width:calc(100vw - 16px);opacity:1!important;overflow:visible;padding:0;position:fixed}:host(:not([open])) dialog{left:0;pointer-events:none;top:0;transform:translate(-999em,-999em)}dialog::backdrop{display:none}dialog>div{width:100%}::slotted(sp-popover){position:static}dialog[actual-placement*=top]{margin-top:var(--swc-overlay-animation-distance);padding-block:var(--swc-overlay-animation-distance)}dialog[actual-placement*=right]{margin-left:calc(var(--swc-overlay-animation-distance)*-1);padding-inline:var(--swc-overlay-animation-distance)}dialog[actual-placement*=bottom]{margin-top:calc(var(--swc-overlay-animation-distance)*-1);padding-block:var(--swc-overlay-animation-distance)}dialog[actual-placement*=left]{margin-left:var(--swc-overlay-animation-distance);padding-inline:var(--swc-overlay-animation-distance)}slot[name=longpress-describedby-descriptor]{display:none}@supports selector(:open){dialog{opacity:0}dialog:open{opacity:1}}@supports selector(:popover-open){dialog{opacity:0}dialog:popover-open{opacity:1}}@supports (not selector(:open)) and (not selector(:popover-open)){:host:not([open]) dialog{pointer-events:none}dialog[actual-placement]{z-index:var(--swc-overlay-z-index)}}
|
|
5
|
+
`;export default o;
|
|
6
|
+
//# sourceMappingURL=overlay-base.css.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["overlay-base.css.ts"],
|
|
4
|
+
"sourcesContent": ["/*\nCopyright 2023 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\nimport { css } from '@spectrum-web-components/base';\nconst styles = css`\n:host{--swc-overlay-animation-distance:var(\n--spectrum-picker-m-texticon-popover-offset-y,var(--spectrum-global-dimension-size-75)\n)}dialog{background:none;border:0;box-sizing:border-box;display:flex;margin:0;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);max-width:calc(100vw - 16px);opacity:1!important;overflow:visible;padding:0;position:fixed}:host(:not([open])) dialog{left:0;pointer-events:none;top:0;transform:translate(-999em,-999em)}dialog::backdrop{display:none}dialog>div{width:100%}::slotted(sp-popover){position:static}dialog[actual-placement*=top]{margin-top:var(--swc-overlay-animation-distance);padding-block:var(--swc-overlay-animation-distance)}dialog[actual-placement*=right]{margin-left:calc(var(--swc-overlay-animation-distance)*-1);padding-inline:var(--swc-overlay-animation-distance)}dialog[actual-placement*=bottom]{margin-top:calc(var(--swc-overlay-animation-distance)*-1);padding-block:var(--swc-overlay-animation-distance)}dialog[actual-placement*=left]{margin-left:var(--swc-overlay-animation-distance);padding-inline:var(--swc-overlay-animation-distance)}slot[name=longpress-describedby-descriptor]{display:none}@supports selector(:open){dialog{opacity:0}dialog:open{opacity:1}}@supports selector(:popover-open){dialog{opacity:0}dialog:popover-open{opacity:1}}@supports (not selector(:open)) and (not selector(:popover-open)){:host:not([open]) dialog{pointer-events:none}dialog[actual-placement]{z-index:var(--swc-overlay-z-index)}}\n`;\nexport default styles;"],
|
|
5
|
+
"mappings": "aAWA,OAAS,OAAAA,MAAW,gCACpB,MAAMC,EAASD;AAAA;AAAA;AAAA;AAAA,EAKf,eAAeC",
|
|
6
|
+
"names": ["css", "styles"]
|
|
7
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
import { css } from "@spectrum-web-components/base";
|
|
3
3
|
const styles = css`
|
|
4
|
-
:host([disabled]) ::slotted([slot=trigger]){pointer-events:none}
|
|
4
|
+
:host([disabled]) ::slotted([slot=trigger]){pointer-events:none}
|
|
5
5
|
`;
|
|
6
6
|
export default styles;
|
|
7
7
|
//# sourceMappingURL=overlay-trigger.css.dev.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["overlay-trigger.css.ts"],
|
|
4
|
-
"sourcesContent": ["/*\nCopyright 2023 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\nimport { css } from '@spectrum-web-components/base';\nconst styles = css`\n:host([disabled]) ::slotted([slot=trigger]){pointer-events:none}
|
|
4
|
+
"sourcesContent": ["/*\nCopyright 2023 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\nimport { css } from '@spectrum-web-components/base';\nconst styles = css`\n:host([disabled]) ::slotted([slot=trigger]){pointer-events:none}\n`;\nexport default styles;"],
|
|
5
5
|
"mappings": ";AAWA,SAAS,WAAW;AACpB,MAAM,SAAS;AAAA;AAAA;AAGf,eAAe;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
"use strict";import{css as t}from"@spectrum-web-components/base";const e=t`
|
|
2
|
-
:host([disabled]) ::slotted([slot=trigger]){pointer-events:none}
|
|
2
|
+
:host([disabled]) ::slotted([slot=trigger]){pointer-events:none}
|
|
3
3
|
`;export default e;
|
|
4
4
|
//# sourceMappingURL=overlay-trigger.css.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["overlay-trigger.css.ts"],
|
|
4
|
-
"sourcesContent": ["/*\nCopyright 2023 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\nimport { css } from '@spectrum-web-components/base';\nconst styles = css`\n:host([disabled]) ::slotted([slot=trigger]){pointer-events:none}
|
|
4
|
+
"sourcesContent": ["/*\nCopyright 2023 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\nimport { css } from '@spectrum-web-components/base';\nconst styles = css`\n:host([disabled]) ::slotted([slot=trigger]){pointer-events:none}\n`;\nexport default styles;"],
|
|
5
5
|
"mappings": "aAWA,OAAS,OAAAA,MAAW,gCACpB,MAAMC,EAASD;AAAA;AAAA,EAGf,eAAeC",
|
|
6
6
|
"names": ["css", "styles"]
|
|
7
7
|
}
|
package/src/overlay-types.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { ThemeData } from '@spectrum-web-components/theme/src/Theme.js';
|
|
2
|
-
import type { Placement
|
|
2
|
+
import type { Placement } from '@floating-ui/dom';
|
|
3
3
|
import type { VirtualTrigger } from './VirtualTrigger.js';
|
|
4
|
+
export { Placement };
|
|
4
5
|
export declare type TriggerInteractions = 'click' | 'longpress' | 'hover' | 'custom' | 'replace' | 'inline' | 'modal';
|
|
5
6
|
export declare type OverlayTriggerInteractions = Extract<TriggerInteractions, 'inline' | 'modal' | 'replace'>;
|
|
6
7
|
export interface OverlayOpenDetail {
|
|
@@ -35,13 +36,12 @@ export interface OverlayDisplayQueryDetail {
|
|
|
35
36
|
overlayRootElement?: HTMLElement;
|
|
36
37
|
overlayContentTipElement?: HTMLElement;
|
|
37
38
|
}
|
|
38
|
-
export declare type Placement = FloatingUIPlacement | 'none';
|
|
39
39
|
export declare type OverlayOptions = {
|
|
40
40
|
root?: HTMLElement;
|
|
41
41
|
delayed?: boolean;
|
|
42
42
|
placement?: Placement;
|
|
43
43
|
offset?: number;
|
|
44
|
-
receivesFocus?: 'auto';
|
|
44
|
+
receivesFocus?: 'true' | 'false' | 'auto';
|
|
45
45
|
notImmediatelyClosable?: boolean;
|
|
46
46
|
abortPromise?: Promise<boolean>;
|
|
47
47
|
virtualTrigger?: VirtualTrigger;
|
package/src/overlay-types.dev.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": [],
|
|
4
|
-
"sourcesContent": [],
|
|
5
|
-
"mappings": "",
|
|
3
|
+
"sources": ["overlay-types.ts"],
|
|
4
|
+
"sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport type { ThemeData } from '@spectrum-web-components/theme/src/Theme.js';\nimport type { Placement } from '@floating-ui/dom';\nimport type { VirtualTrigger } from './VirtualTrigger.dev.js'\n\nexport { Placement };\n\nexport type TriggerInteractions =\n | 'click'\n | 'longpress'\n | 'hover'\n | 'custom'\n | 'replace'\n | 'inline'\n | 'modal';\n\nexport type OverlayTriggerInteractions = Extract<\n TriggerInteractions,\n 'inline' | 'modal' | 'replace'\n>;\n\nexport interface OverlayOpenDetail {\n content: HTMLElement;\n contentTip?: HTMLElement;\n delayed: boolean;\n offset: number;\n skidding?: number;\n placement?: Placement;\n receivesFocus?: 'auto';\n virtualTrigger?: VirtualTrigger;\n trigger: HTMLElement;\n root?: HTMLElement;\n interaction: TriggerInteractions;\n theme: ThemeData;\n notImmediatelyClosable?: boolean;\n abortPromise?: Promise<boolean>;\n}\n\nexport interface OverlayOpenCloseDetail {\n interaction: TriggerInteractions;\n reason?: 'external-click';\n}\n\nexport interface OverlayCloseReasonDetail {\n reason?: 'external-click';\n}\n\n/**\n * Used, via an event, to query details about how an element should be shown in\n * an overlay\n */\nexport interface OverlayDisplayQueryDetail {\n overlayRootName?: string;\n overlayRootElement?: HTMLElement;\n overlayContentTipElement?: HTMLElement;\n}\n\nexport type OverlayOptions = {\n root?: HTMLElement;\n delayed?: boolean;\n placement?: Placement;\n offset?: number;\n receivesFocus?: 'true' | 'false' | 'auto';\n notImmediatelyClosable?: boolean;\n abortPromise?: Promise<boolean>;\n virtualTrigger?: VirtualTrigger;\n};\n\ndeclare global {\n interface GlobalEventHandlersEventMap {\n 'sp-overlay-query': CustomEvent<OverlayDisplayQueryDetail>;\n 'sp-open': CustomEvent<OverlayOpenCloseDetail>;\n 'sp-close': CustomEvent<OverlayOpenCloseDetail>;\n }\n}\n"],
|
|
5
|
+
"mappings": ";AAgBA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/src/overlay-types.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";export{};
|
|
2
2
|
//# sourceMappingURL=overlay-types.js.map
|
package/src/overlay-types.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": [],
|
|
4
|
-
"sourcesContent": [],
|
|
5
|
-
"mappings": "",
|
|
3
|
+
"sources": ["overlay-types.ts"],
|
|
4
|
+
"sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport type { ThemeData } from '@spectrum-web-components/theme/src/Theme.js';\nimport type { Placement } from '@floating-ui/dom';\nimport type { VirtualTrigger } from './VirtualTrigger.js';\n\nexport { Placement };\n\nexport type TriggerInteractions =\n | 'click'\n | 'longpress'\n | 'hover'\n | 'custom'\n | 'replace'\n | 'inline'\n | 'modal';\n\nexport type OverlayTriggerInteractions = Extract<\n TriggerInteractions,\n 'inline' | 'modal' | 'replace'\n>;\n\nexport interface OverlayOpenDetail {\n content: HTMLElement;\n contentTip?: HTMLElement;\n delayed: boolean;\n offset: number;\n skidding?: number;\n placement?: Placement;\n receivesFocus?: 'auto';\n virtualTrigger?: VirtualTrigger;\n trigger: HTMLElement;\n root?: HTMLElement;\n interaction: TriggerInteractions;\n theme: ThemeData;\n notImmediatelyClosable?: boolean;\n abortPromise?: Promise<boolean>;\n}\n\nexport interface OverlayOpenCloseDetail {\n interaction: TriggerInteractions;\n reason?: 'external-click';\n}\n\nexport interface OverlayCloseReasonDetail {\n reason?: 'external-click';\n}\n\n/**\n * Used, via an event, to query details about how an element should be shown in\n * an overlay\n */\nexport interface OverlayDisplayQueryDetail {\n overlayRootName?: string;\n overlayRootElement?: HTMLElement;\n overlayContentTipElement?: HTMLElement;\n}\n\nexport type OverlayOptions = {\n root?: HTMLElement;\n delayed?: boolean;\n placement?: Placement;\n offset?: number;\n receivesFocus?: 'true' | 'false' | 'auto';\n notImmediatelyClosable?: boolean;\n abortPromise?: Promise<boolean>;\n virtualTrigger?: VirtualTrigger;\n};\n\ndeclare global {\n interface GlobalEventHandlersEventMap {\n 'sp-overlay-query': CustomEvent<OverlayDisplayQueryDetail>;\n 'sp-open': CustomEvent<OverlayOpenCloseDetail>;\n 'sp-close': CustomEvent<OverlayOpenCloseDetail>;\n }\n}\n"],
|
|
5
|
+
"mappings": "aAgBA",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Placement } from '@floating-ui/dom';
|
|
2
|
+
import type { VirtualTrigger } from './VirtualTrigger.js';
|
|
3
|
+
declare type OverlayOptions = {
|
|
4
|
+
abortPromise?: Promise<boolean>;
|
|
5
|
+
delayed?: boolean;
|
|
6
|
+
offset?: number | [number, number];
|
|
7
|
+
placement: Placement;
|
|
8
|
+
notImmediatelyClosable?: boolean;
|
|
9
|
+
receivesFocus?: 'auto';
|
|
10
|
+
root?: HTMLElement;
|
|
11
|
+
trigger: HTMLElement | VirtualTrigger;
|
|
12
|
+
type?: 'modal' | 'page' | 'hint' | 'auto' | 'manual';
|
|
13
|
+
};
|
|
14
|
+
declare type OverlayData = {
|
|
15
|
+
initialHeight?: number;
|
|
16
|
+
isConstrained?: boolean;
|
|
17
|
+
elements?: HTMLElement[];
|
|
18
|
+
tipElement?: HTMLElement;
|
|
19
|
+
};
|
|
20
|
+
export declare const updateOverlayPosition: (target: HTMLElement, options: OverlayOptions, overlayData: OverlayData) => Promise<void>;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
import {
|
|
3
|
+
arrow,
|
|
4
|
+
computePosition,
|
|
5
|
+
flip,
|
|
6
|
+
offset,
|
|
7
|
+
shift,
|
|
8
|
+
size
|
|
9
|
+
} from "@floating-ui/dom";
|
|
10
|
+
import { topLayerOverTransforms } from "./topLayerOverTransforms.dev.js";
|
|
11
|
+
function roundByDPR(num) {
|
|
12
|
+
if (typeof num === "undefined")
|
|
13
|
+
return 0;
|
|
14
|
+
const dpr = window.devicePixelRatio || 1;
|
|
15
|
+
return Math.round(num * dpr) / dpr || -1e4;
|
|
16
|
+
}
|
|
17
|
+
const REQUIRED_DISTANCE_TO_EDGE = 8;
|
|
18
|
+
const MIN_OVERLAY_HEIGHT = 100;
|
|
19
|
+
const getFallbackPlacements = (placement) => {
|
|
20
|
+
var _a;
|
|
21
|
+
const fallbacks = {
|
|
22
|
+
left: ["right", "bottom", "top"],
|
|
23
|
+
"left-start": ["right-start", "bottom", "top"],
|
|
24
|
+
"left-end": ["right-end", "bottom", "top"],
|
|
25
|
+
right: ["left", "bottom", "top"],
|
|
26
|
+
"right-start": ["left-start", "bottom", "top"],
|
|
27
|
+
"right-end": ["left-end", "bottom", "top"],
|
|
28
|
+
top: ["bottom", "left", "right"],
|
|
29
|
+
"top-start": ["bottom-start", "left", "right"],
|
|
30
|
+
"top-end": ["bottom-end", "left", "right"],
|
|
31
|
+
bottom: ["top", "left", "right"],
|
|
32
|
+
"bottom-start": ["top-start", "left", "right"],
|
|
33
|
+
"bottom-end": ["top-end", "left", "right"]
|
|
34
|
+
};
|
|
35
|
+
return (_a = fallbacks[placement]) != null ? _a : [placement];
|
|
36
|
+
};
|
|
37
|
+
export const updateOverlayPosition = async (target, options, overlayData) => {
|
|
38
|
+
var _a;
|
|
39
|
+
await (document.fonts ? document.fonts.ready : Promise.resolve());
|
|
40
|
+
const flipMiddleware = !(options.trigger instanceof HTMLElement) ? flip({
|
|
41
|
+
padding: REQUIRED_DISTANCE_TO_EDGE,
|
|
42
|
+
fallbackPlacements: getFallbackPlacements(options.placement)
|
|
43
|
+
}) : flip({
|
|
44
|
+
padding: REQUIRED_DISTANCE_TO_EDGE
|
|
45
|
+
});
|
|
46
|
+
const mainAxis = Array.isArray(options == null ? void 0 : options.offset) ? options == null ? void 0 : options.offset[0] : (options == null ? void 0 : options.offset) || 0;
|
|
47
|
+
const crossAxis = Array.isArray(options == null ? void 0 : options.offset) ? (options == null ? void 0 : options.offset[1]) || 0 : 0;
|
|
48
|
+
const middleware = [
|
|
49
|
+
offset({
|
|
50
|
+
mainAxis,
|
|
51
|
+
crossAxis
|
|
52
|
+
}),
|
|
53
|
+
shift({ padding: REQUIRED_DISTANCE_TO_EDGE }),
|
|
54
|
+
flipMiddleware,
|
|
55
|
+
size({
|
|
56
|
+
padding: REQUIRED_DISTANCE_TO_EDGE,
|
|
57
|
+
apply: ({
|
|
58
|
+
availableWidth,
|
|
59
|
+
availableHeight,
|
|
60
|
+
rects: { floating }
|
|
61
|
+
}) => {
|
|
62
|
+
const maxHeight = Math.max(
|
|
63
|
+
MIN_OVERLAY_HEIGHT,
|
|
64
|
+
Math.floor(availableHeight)
|
|
65
|
+
);
|
|
66
|
+
const actualHeight = floating.height;
|
|
67
|
+
overlayData.initialHeight = !overlayData.isConstrained ? actualHeight : overlayData.initialHeight || actualHeight;
|
|
68
|
+
overlayData.isConstrained = actualHeight < overlayData.initialHeight || maxHeight <= actualHeight;
|
|
69
|
+
const appliedHeight = overlayData.isConstrained ? `${maxHeight}px` : "";
|
|
70
|
+
Object.assign(target.style, {
|
|
71
|
+
maxWidth: `${Math.floor(availableWidth)}px`,
|
|
72
|
+
maxHeight: appliedHeight,
|
|
73
|
+
height: appliedHeight
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
}),
|
|
77
|
+
...overlayData.tipElement ? [arrow({ element: overlayData.tipElement })] : [],
|
|
78
|
+
topLayerOverTransforms()
|
|
79
|
+
];
|
|
80
|
+
const { x, y, placement, middlewareData } = await computePosition(
|
|
81
|
+
options.trigger,
|
|
82
|
+
target,
|
|
83
|
+
{
|
|
84
|
+
placement: options.placement,
|
|
85
|
+
middleware,
|
|
86
|
+
strategy: "fixed"
|
|
87
|
+
}
|
|
88
|
+
);
|
|
89
|
+
Object.assign(target.style, {
|
|
90
|
+
top: "0px",
|
|
91
|
+
left: "0px",
|
|
92
|
+
transform: `translate(${roundByDPR(x)}px, ${roundByDPR(y)}px)`
|
|
93
|
+
});
|
|
94
|
+
if (placement !== target.getAttribute("actual-placement")) {
|
|
95
|
+
target.setAttribute("actual-placement", placement);
|
|
96
|
+
(_a = overlayData.elements) == null ? void 0 : _a.forEach((element) => {
|
|
97
|
+
element.setAttribute("placement", placement);
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
if (overlayData.tipElement && middlewareData.arrow) {
|
|
101
|
+
const { x: arrowX, y: arrowY } = middlewareData.arrow;
|
|
102
|
+
Object.assign(overlayData.tipElement.style, {
|
|
103
|
+
top: placement.startsWith("right") || placement.startsWith("left") ? "0px" : "",
|
|
104
|
+
left: placement.startsWith("bottom") || placement.startsWith("top") ? "0px" : "",
|
|
105
|
+
transform: `translate(${roundByDPR(arrowX)}px, ${roundByDPR(
|
|
106
|
+
arrowY
|
|
107
|
+
)}px)`
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
//# sourceMappingURL=placement.dev.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["placement.ts"],
|
|
4
|
+
"sourcesContent": ["/*\nCopyright 2022 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport {\n arrow,\n computePosition,\n flip,\n offset,\n Placement,\n shift,\n size,\n} from '@floating-ui/dom';\nimport type { VirtualTrigger } from './VirtualTrigger.dev.js'\nimport { topLayerOverTransforms } from './topLayerOverTransforms.dev.js'\n\ntype OverlayOptions = {\n abortPromise?: Promise<boolean>;\n delayed?: boolean;\n offset?: number | [number, number]; // supporting multi-axis\n placement: Placement;\n notImmediatelyClosable?: boolean; // rename or place behind other API options\n receivesFocus?: 'auto';\n root?: HTMLElement;\n trigger: HTMLElement | VirtualTrigger;\n type?: 'modal' | 'page' | 'hint' | 'auto' | 'manual';\n};\n\ntype OverlayData = {\n initialHeight?: number;\n isConstrained?: boolean;\n elements?: HTMLElement[];\n tipElement?: HTMLElement;\n};\n\nfunction roundByDPR(num?: number): number {\n if (typeof num === 'undefined') return 0;\n const dpr = window.devicePixelRatio || 1;\n return Math.round(num * dpr) / dpr || -10000;\n}\n\n// See: https://spectrum.adobe.com/page/popover/#Container-padding\nconst REQUIRED_DISTANCE_TO_EDGE = 8;\n// See: https://github.com/adobe/spectrum-web-components/issues/910\nconst MIN_OVERLAY_HEIGHT = 100;\n\nconst getFallbackPlacements = (placement: Placement): Placement[] => {\n const fallbacks: Record<Placement, Placement[]> = {\n left: ['right', 'bottom', 'top'],\n 'left-start': ['right-start', 'bottom', 'top'],\n 'left-end': ['right-end', 'bottom', 'top'],\n right: ['left', 'bottom', 'top'],\n 'right-start': ['left-start', 'bottom', 'top'],\n 'right-end': ['left-end', 'bottom', 'top'],\n top: ['bottom', 'left', 'right'],\n 'top-start': ['bottom-start', 'left', 'right'],\n 'top-end': ['bottom-end', 'left', 'right'],\n bottom: ['top', 'left', 'right'],\n 'bottom-start': ['top-start', 'left', 'right'],\n 'bottom-end': ['top-end', 'left', 'right'],\n };\n return fallbacks[placement] ?? [placement];\n};\n\nexport const updateOverlayPosition = async (\n target: HTMLElement,\n options: OverlayOptions,\n overlayData: OverlayData\n): Promise<void> => {\n await (document.fonts ? document.fonts.ready : Promise.resolve());\n\n const flipMiddleware = !(options.trigger instanceof HTMLElement)\n ? flip({\n padding: REQUIRED_DISTANCE_TO_EDGE,\n fallbackPlacements: getFallbackPlacements(options.placement),\n })\n : flip({\n padding: REQUIRED_DISTANCE_TO_EDGE,\n });\n\n const mainAxis = Array.isArray(options?.offset)\n ? options?.offset[0]\n : options?.offset || 0;\n const crossAxis = Array.isArray(options?.offset)\n ? options?.offset[1] || 0\n : 0;\n\n const middleware = [\n offset({\n mainAxis,\n crossAxis,\n }),\n shift({ padding: REQUIRED_DISTANCE_TO_EDGE }),\n flipMiddleware,\n size({\n padding: REQUIRED_DISTANCE_TO_EDGE,\n apply: ({\n availableWidth,\n availableHeight,\n rects: { floating },\n }) => {\n const maxHeight = Math.max(\n MIN_OVERLAY_HEIGHT,\n Math.floor(availableHeight)\n );\n const actualHeight = floating.height;\n overlayData.initialHeight =\n !overlayData.isConstrained /* && !this.virtualTrigger */\n ? actualHeight\n : overlayData.initialHeight || actualHeight;\n overlayData.isConstrained =\n actualHeight < overlayData.initialHeight ||\n maxHeight <= actualHeight;\n const appliedHeight = overlayData.isConstrained\n ? `${maxHeight}px`\n : '';\n Object.assign(target.style, {\n maxWidth: `${Math.floor(availableWidth)}px`,\n maxHeight: appliedHeight,\n height: appliedHeight,\n });\n },\n }),\n ...(overlayData.tipElement\n ? [arrow({ element: overlayData.tipElement })]\n : []),\n topLayerOverTransforms(),\n ];\n const { x, y, placement, middlewareData } = await computePosition(\n options.trigger,\n target,\n {\n placement: options.placement,\n middleware,\n strategy: 'fixed',\n }\n );\n\n Object.assign(target.style, {\n top: '0px',\n left: '0px',\n transform: `translate(${roundByDPR(x)}px, ${roundByDPR(y)}px)`,\n });\n\n if (placement !== target.getAttribute('actual-placement')) {\n target.setAttribute('actual-placement', placement);\n overlayData.elements?.forEach((element) => {\n element.setAttribute('placement', placement);\n });\n }\n\n if (overlayData.tipElement && middlewareData.arrow) {\n const { x: arrowX, y: arrowY } = middlewareData.arrow;\n\n Object.assign(overlayData.tipElement.style, {\n top:\n placement.startsWith('right') || placement.startsWith('left')\n ? '0px'\n : '',\n left:\n placement.startsWith('bottom') || placement.startsWith('top')\n ? '0px'\n : '',\n transform: `translate(${roundByDPR(arrowX)}px, ${roundByDPR(\n arrowY\n )}px)`,\n });\n }\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/src/placement.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";import{arrow as H,computePosition as P,flip as g,offset as O,shift as T,size as w}from"@floating-ui/dom";import{topLayerOverTransforms as M}from"./topLayerOverTransforms.js";function n(r){if(typeof r=="undefined")return 0;const t=window.devicePixelRatio||1;return Math.round(r*t)/t||-1e4}const m=8,A=100,L=r=>{var e;return(e={left:["right","bottom","top"],"left-start":["right-start","bottom","top"],"left-end":["right-end","bottom","top"],right:["left","bottom","top"],"right-start":["left-start","bottom","top"],"right-end":["left-end","bottom","top"],top:["bottom","left","right"],"top-start":["bottom-start","left","right"],"top-end":["bottom-end","left","right"],bottom:["top","left","right"],"bottom-start":["top-start","left","right"],"bottom-end":["top-end","left","right"]}[r])!=null?e:[r]};export const updateOverlayPosition=async(r,t,e)=>{var f;await(document.fonts?document.fonts.ready:Promise.resolve());const h=t.trigger instanceof HTMLElement?g({padding:m}):g({padding:m,fallbackPlacements:L(t.placement)}),b=Array.isArray(t==null?void 0:t.offset)?t==null?void 0:t.offset[0]:(t==null?void 0:t.offset)||0,p=Array.isArray(t==null?void 0:t.offset)&&(t==null?void 0:t.offset[1])||0,u=[O({mainAxis:b,crossAxis:p}),T({padding:m}),h,w({padding:m,apply:({availableWidth:i,availableHeight:s,rects:{floating:y}})=>{const c=Math.max(A,Math.floor(s)),l=y.height;e.initialHeight=e.isConstrained&&e.initialHeight||l,e.isConstrained=l<e.initialHeight||c<=l;const d=e.isConstrained?`${c}px`:"";Object.assign(r.style,{maxWidth:`${Math.floor(i)}px`,maxHeight:d,height:d})}}),...e.tipElement?[H({element:e.tipElement})]:[],M()],{x,y:E,placement:a,middlewareData:o}=await P(t.trigger,r,{placement:t.placement,middleware:u,strategy:"fixed"});if(Object.assign(r.style,{top:"0px",left:"0px",transform:`translate(${n(x)}px, ${n(E)}px)`}),a!==r.getAttribute("actual-placement")&&(r.setAttribute("actual-placement",a),(f=e.elements)==null||f.forEach(i=>{i.setAttribute("placement",a)})),e.tipElement&&o.arrow){const{x:i,y:s}=o.arrow;Object.assign(e.tipElement.style,{top:a.startsWith("right")||a.startsWith("left")?"0px":"",left:a.startsWith("bottom")||a.startsWith("top")?"0px":"",transform:`translate(${n(i)}px, ${n(s)}px)`})}};
|
|
2
|
+
//# sourceMappingURL=placement.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["placement.ts"],
|
|
4
|
+
"sourcesContent": ["/*\nCopyright 2022 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport {\n arrow,\n computePosition,\n flip,\n offset,\n Placement,\n shift,\n size,\n} from '@floating-ui/dom';\nimport type { VirtualTrigger } from './VirtualTrigger.js';\nimport { topLayerOverTransforms } from './topLayerOverTransforms.js';\n\ntype OverlayOptions = {\n abortPromise?: Promise<boolean>;\n delayed?: boolean;\n offset?: number | [number, number]; // supporting multi-axis\n placement: Placement;\n notImmediatelyClosable?: boolean; // rename or place behind other API options\n receivesFocus?: 'auto';\n root?: HTMLElement;\n trigger: HTMLElement | VirtualTrigger;\n type?: 'modal' | 'page' | 'hint' | 'auto' | 'manual';\n};\n\ntype OverlayData = {\n initialHeight?: number;\n isConstrained?: boolean;\n elements?: HTMLElement[];\n tipElement?: HTMLElement;\n};\n\nfunction roundByDPR(num?: number): number {\n if (typeof num === 'undefined') return 0;\n const dpr = window.devicePixelRatio || 1;\n return Math.round(num * dpr) / dpr || -10000;\n}\n\n// See: https://spectrum.adobe.com/page/popover/#Container-padding\nconst REQUIRED_DISTANCE_TO_EDGE = 8;\n// See: https://github.com/adobe/spectrum-web-components/issues/910\nconst MIN_OVERLAY_HEIGHT = 100;\n\nconst getFallbackPlacements = (placement: Placement): Placement[] => {\n const fallbacks: Record<Placement, Placement[]> = {\n left: ['right', 'bottom', 'top'],\n 'left-start': ['right-start', 'bottom', 'top'],\n 'left-end': ['right-end', 'bottom', 'top'],\n right: ['left', 'bottom', 'top'],\n 'right-start': ['left-start', 'bottom', 'top'],\n 'right-end': ['left-end', 'bottom', 'top'],\n top: ['bottom', 'left', 'right'],\n 'top-start': ['bottom-start', 'left', 'right'],\n 'top-end': ['bottom-end', 'left', 'right'],\n bottom: ['top', 'left', 'right'],\n 'bottom-start': ['top-start', 'left', 'right'],\n 'bottom-end': ['top-end', 'left', 'right'],\n };\n return fallbacks[placement] ?? [placement];\n};\n\nexport const updateOverlayPosition = async (\n target: HTMLElement,\n options: OverlayOptions,\n overlayData: OverlayData\n): Promise<void> => {\n await (document.fonts ? document.fonts.ready : Promise.resolve());\n\n const flipMiddleware = !(options.trigger instanceof HTMLElement)\n ? flip({\n padding: REQUIRED_DISTANCE_TO_EDGE,\n fallbackPlacements: getFallbackPlacements(options.placement),\n })\n : flip({\n padding: REQUIRED_DISTANCE_TO_EDGE,\n });\n\n const mainAxis = Array.isArray(options?.offset)\n ? options?.offset[0]\n : options?.offset || 0;\n const crossAxis = Array.isArray(options?.offset)\n ? options?.offset[1] || 0\n : 0;\n\n const middleware = [\n offset({\n mainAxis,\n crossAxis,\n }),\n shift({ padding: REQUIRED_DISTANCE_TO_EDGE }),\n flipMiddleware,\n size({\n padding: REQUIRED_DISTANCE_TO_EDGE,\n apply: ({\n availableWidth,\n availableHeight,\n rects: { floating },\n }) => {\n const maxHeight = Math.max(\n MIN_OVERLAY_HEIGHT,\n Math.floor(availableHeight)\n );\n const actualHeight = floating.height;\n overlayData.initialHeight =\n !overlayData.isConstrained /* && !this.virtualTrigger */\n ? actualHeight\n : overlayData.initialHeight || actualHeight;\n overlayData.isConstrained =\n actualHeight < overlayData.initialHeight ||\n maxHeight <= actualHeight;\n const appliedHeight = overlayData.isConstrained\n ? `${maxHeight}px`\n : '';\n Object.assign(target.style, {\n maxWidth: `${Math.floor(availableWidth)}px`,\n maxHeight: appliedHeight,\n height: appliedHeight,\n });\n },\n }),\n ...(overlayData.tipElement\n ? [arrow({ element: overlayData.tipElement })]\n : []),\n topLayerOverTransforms(),\n ];\n const { x, y, placement, middlewareData } = await computePosition(\n options.trigger,\n target,\n {\n placement: options.placement,\n middleware,\n strategy: 'fixed',\n }\n );\n\n Object.assign(target.style, {\n top: '0px',\n left: '0px',\n transform: `translate(${roundByDPR(x)}px, ${roundByDPR(y)}px)`,\n });\n\n if (placement !== target.getAttribute('actual-placement')) {\n target.setAttribute('actual-placement', placement);\n overlayData.elements?.forEach((element) => {\n element.setAttribute('placement', placement);\n });\n }\n\n if (overlayData.tipElement && middlewareData.arrow) {\n const { x: arrowX, y: arrowY } = middlewareData.arrow;\n\n Object.assign(overlayData.tipElement.style, {\n top:\n placement.startsWith('right') || placement.startsWith('left')\n ? '0px'\n : '',\n left:\n placement.startsWith('bottom') || placement.startsWith('top')\n ? '0px'\n : '',\n transform: `translate(${roundByDPR(arrowX)}px, ${roundByDPR(\n arrowY\n )}px)`,\n });\n }\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["arrow", "computePosition", "flip", "offset", "shift", "size", "topLayerOverTransforms", "roundByDPR", "num", "dpr", "REQUIRED_DISTANCE_TO_EDGE", "MIN_OVERLAY_HEIGHT", "getFallbackPlacements", "placement", "_a", "target", "options", "overlayData", "flipMiddleware", "mainAxis", "crossAxis", "middleware", "availableWidth", "availableHeight", "floating", "maxHeight", "actualHeight", "appliedHeight", "y", "middlewareData", "element", "arrowX", "arrowY"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { MiddlewareArguments } from '@floating-ui/dom';
|
|
2
|
+
export declare const topLayerOverTransforms: () => {
|
|
3
|
+
name: string;
|
|
4
|
+
fn(middlewareArguments: MiddlewareArguments): Promise<{
|
|
5
|
+
x: number;
|
|
6
|
+
y: number;
|
|
7
|
+
data: {
|
|
8
|
+
x: number;
|
|
9
|
+
y: number;
|
|
10
|
+
};
|
|
11
|
+
}>;
|
|
12
|
+
};
|
|
13
|
+
export declare function isLastTraversableNode(node: Node): boolean;
|
|
14
|
+
export declare function getUAString(): string;
|
|
15
|
+
export declare function getParentNode(node: Node): Node;
|
|
16
|
+
export declare function getNodeName(node: Node | Window): string;
|
|
17
|
+
export declare function getDocumentElement(node: Node | Window): HTMLElement;
|
|
18
|
+
export declare function isNode(value: any): value is Node;
|
|
19
|
+
export declare function isWindow(value: any): value is Window;
|
|
20
|
+
export declare function getWindow(node: Node | Window): Window;
|
|
21
|
+
export declare function isShadowRoot(node: Node): node is ShadowRoot;
|
|
22
|
+
export declare function isHTMLElement(value: any): value is HTMLElement;
|