This commit is contained in:
CHEVALLIER Abel
2025-11-13 16:23:22 +01:00
parent de9c515a47
commit cb235644dc
34924 changed files with 3811102 additions and 0 deletions

125
node_modules/ng-zorro-antd/float-button/index.d.ts generated vendored Normal file
View File

@@ -0,0 +1,125 @@
import * as _angular_cdk_bidi from '@angular/cdk/bidi';
import * as ng_zorro_antd_float_button from 'ng-zorro-antd/float-button';
import * as _angular_core from '@angular/core';
import { TemplateRef, OnInit, ElementRef } from '@angular/core';
import { NzSizeDSType, NzShapeSCType, NzFourDirectionType } from 'ng-zorro-antd/core/types';
import { NzConfigService } from 'ng-zorro-antd/core/config';
/**
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
type NzFloatButtonType = 'primary' | 'default';
interface NzFloatButtonBadgeProps {
nzShowZero: boolean;
nzDot: boolean;
nzOverflowCount: number;
nzColor: string;
nzCount: number | TemplateRef<void>;
nzOffset: [number, number];
nzSize: NzSizeDSType;
}
type NzFloatButtonBadge = Partial<NzFloatButtonBadgeProps>;
declare class NzFloatButtonComponent {
readonly nzHref: _angular_core.InputSignal<string | null>;
readonly nzTarget: _angular_core.InputSignal<string | null>;
readonly nzType: _angular_core.InputSignal<NzFloatButtonType>;
readonly nzIcon: _angular_core.InputSignal<string | TemplateRef<void> | null>;
readonly nzDescription: _angular_core.InputSignal<string | TemplateRef<void> | null>;
readonly nzShape: _angular_core.InputSignal<NzShapeSCType>;
readonly nzBadge: _angular_core.InputSignal<Partial<ng_zorro_antd_float_button.NzFloatButtonBadgeProps> | null>;
readonly nzOnClick: _angular_core.OutputEmitterRef<boolean>;
readonly shape: _angular_core.WritableSignal<NzShapeSCType>;
protected readonly dir: _angular_core.WritableSignal<_angular_cdk_bidi.Direction>;
protected readonly class: _angular_core.Signal<string[]>;
private generateClass;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NzFloatButtonComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NzFloatButtonComponent, "nz-float-button", ["nzFloatButton"], { "nzHref": { "alias": "nzHref"; "required": false; "isSignal": true; }; "nzTarget": { "alias": "nzTarget"; "required": false; "isSignal": true; }; "nzType": { "alias": "nzType"; "required": false; "isSignal": true; }; "nzIcon": { "alias": "nzIcon"; "required": false; "isSignal": true; }; "nzDescription": { "alias": "nzDescription"; "required": false; "isSignal": true; }; "nzShape": { "alias": "nzShape"; "required": false; "isSignal": true; }; "nzBadge": { "alias": "nzBadge"; "required": false; "isSignal": true; }; }, { "nzOnClick": "nzOnClick"; }, never, never, true, never>;
}
declare class NzFloatButtonContentComponent {
readonly nzBadge: _angular_core.InputSignal<Partial<ng_zorro_antd_float_button.NzFloatButtonBadgeProps> | null>;
readonly nzIcon: _angular_core.InputSignal<string | TemplateRef<void> | null>;
readonly nzDescription: _angular_core.InputSignal<string | TemplateRef<void> | null>;
readonly nzShape: _angular_core.InputSignal<NzShapeSCType>;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NzFloatButtonContentComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NzFloatButtonContentComponent, "nz-float-button-content", ["nzFloatButtonContent"], { "nzBadge": { "alias": "nzBadge"; "required": false; "isSignal": true; }; "nzIcon": { "alias": "nzIcon"; "required": false; "isSignal": true; }; "nzDescription": { "alias": "nzDescription"; "required": false; "isSignal": true; }; "nzShape": { "alias": "nzShape"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
}
declare class NzFloatButtonTopComponent implements OnInit {
nzConfigService: NzConfigService;
private scrollSrv;
private platform;
private ngZone;
private directionality;
private destroyRef;
private document;
readonly backTop: _angular_core.Signal<ElementRef<any> | undefined>;
readonly nzVisibilityHeight: _angular_core.InputSignal<number | undefined>;
readonly nzHref: _angular_core.InputSignal<string | null>;
readonly nzType: _angular_core.InputSignal<NzFloatButtonType>;
readonly nzShape: _angular_core.InputSignal<NzShapeSCType>;
readonly nzIcon: _angular_core.InputSignal<string | TemplateRef<void> | null>;
readonly nzDescription: _angular_core.InputSignal<TemplateRef<void> | null>;
readonly nzTemplate: _angular_core.InputSignal<TemplateRef<void> | null>;
readonly nzTarget: _angular_core.InputSignal<string | HTMLElement | null>;
readonly nzDuration: _angular_core.InputSignalWithTransform<number, unknown>;
readonly nzBadge: _angular_core.InputSignal<Partial<ng_zorro_antd_float_button.NzFloatButtonBadgeProps> | null>;
readonly nzOnClick: _angular_core.OutputEmitterRef<boolean>;
private readonly visibilityHeight;
readonly shape: _angular_core.WritableSignal<NzShapeSCType>;
protected readonly dir: _angular_core.WritableSignal<_angular_cdk_bidi.Direction>;
protected readonly class: _angular_core.Signal<string[]>;
private target?;
private readonly visible;
private backTopClickSubscription;
private scrollListenerDestroy$;
constructor();
ngOnInit(): void;
private getTarget;
private handleScroll;
private registerScrollEvent;
private generateClass;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NzFloatButtonTopComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NzFloatButtonTopComponent, "nz-float-button-top", ["nzFloatButtonTop"], { "nzVisibilityHeight": { "alias": "nzVisibilityHeight"; "required": false; "isSignal": true; }; "nzHref": { "alias": "nzHref"; "required": false; "isSignal": true; }; "nzType": { "alias": "nzType"; "required": false; "isSignal": true; }; "nzShape": { "alias": "nzShape"; "required": false; "isSignal": true; }; "nzIcon": { "alias": "nzIcon"; "required": false; "isSignal": true; }; "nzDescription": { "alias": "nzDescription"; "required": false; "isSignal": true; }; "nzTemplate": { "alias": "nzTemplate"; "required": false; "isSignal": true; }; "nzTarget": { "alias": "nzTarget"; "required": false; "isSignal": true; }; "nzDuration": { "alias": "nzDuration"; "required": false; "isSignal": true; }; "nzBadge": { "alias": "nzBadge"; "required": false; "isSignal": true; }; }, { "nzOnClick": "nzOnClick"; }, never, never, true, never>;
}
declare class NzFloatButtonGroupComponent {
readonly nzFloatButtonComponents: _angular_core.Signal<readonly NzFloatButtonComponent[]>;
readonly nzFloatButtonTopComponents: _angular_core.Signal<readonly NzFloatButtonTopComponent[]>;
readonly nzHref: _angular_core.InputSignal<string | null>;
readonly nzTarget: _angular_core.InputSignal<string | null>;
readonly nzType: _angular_core.InputSignal<NzFloatButtonType>;
readonly nzIcon: _angular_core.InputSignal<string | TemplateRef<void> | null>;
readonly nzDescription: _angular_core.InputSignal<string | TemplateRef<void> | null>;
readonly nzShape: _angular_core.InputSignal<NzShapeSCType>;
readonly nzTrigger: _angular_core.InputSignal<"click" | "hover" | null>;
readonly nzOpen: _angular_core.InputSignal<boolean | null>;
readonly nzPlacement: _angular_core.InputSignal<NzFourDirectionType>;
readonly nzOnOpenChange: _angular_core.OutputEmitterRef<boolean>;
protected dir: _angular_core.WritableSignal<_angular_cdk_bidi.Direction>;
protected open: _angular_core.WritableSignal<boolean>;
protected isMenuMode: _angular_core.Signal<boolean>;
protected isControlledMode: _angular_core.Signal<boolean>;
protected class: _angular_core.Signal<string[]>;
constructor();
clickOpenMenu(): void;
hoverOpenMenu(): void;
clickCloseMenu(): void;
hoverCloseMenu(): void;
private handleEvent;
private generateClass;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NzFloatButtonGroupComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NzFloatButtonGroupComponent, "nz-float-button-group", ["nzFloatButtonGroup"], { "nzHref": { "alias": "nzHref"; "required": false; "isSignal": true; }; "nzTarget": { "alias": "nzTarget"; "required": false; "isSignal": true; }; "nzType": { "alias": "nzType"; "required": false; "isSignal": true; }; "nzIcon": { "alias": "nzIcon"; "required": false; "isSignal": true; }; "nzDescription": { "alias": "nzDescription"; "required": false; "isSignal": true; }; "nzShape": { "alias": "nzShape"; "required": false; "isSignal": true; }; "nzTrigger": { "alias": "nzTrigger"; "required": false; "isSignal": true; }; "nzOpen": { "alias": "nzOpen"; "required": false; "isSignal": true; }; "nzPlacement": { "alias": "nzPlacement"; "required": false; "isSignal": true; }; }, { "nzOnOpenChange": "nzOnOpenChange"; }, ["nzFloatButtonComponents", "nzFloatButtonTopComponents"], ["*"], true, never>;
}
declare class NzFloatButtonModule {
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NzFloatButtonModule, never>;
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<NzFloatButtonModule, never, [typeof NzFloatButtonComponent, typeof NzFloatButtonGroupComponent, typeof NzFloatButtonTopComponent, typeof NzFloatButtonContentComponent], [typeof NzFloatButtonComponent, typeof NzFloatButtonGroupComponent, typeof NzFloatButtonTopComponent, typeof NzFloatButtonContentComponent]>;
static ɵinj: _angular_core.ɵɵInjectorDeclaration<NzFloatButtonModule>;
}
export { NzFloatButtonComponent, NzFloatButtonContentComponent, NzFloatButtonGroupComponent, NzFloatButtonModule, NzFloatButtonTopComponent };
export type { NzFloatButtonBadge, NzFloatButtonBadgeProps, NzFloatButtonType };

3
node_modules/ng-zorro-antd/float-button/package.json generated vendored Normal file
View File

@@ -0,0 +1,3 @@
{
"module": "../fesm2022/ng-zorro-antd-float-button.mjs"
}

View File

@@ -0,0 +1 @@
@import './index.less';

299
node_modules/ng-zorro-antd/float-button/style/index.css generated vendored Normal file
View File

@@ -0,0 +1,299 @@
/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */
/* stylelint-disable no-duplicate-selectors */
.ant-float-btn {
position: fixed;
bottom: 48px;
z-index: 99;
display: block;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
border: none;
box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);
cursor: pointer;
inset-inline-end: 24px;
}
.ant-float-btn-hidden {
display: none;
}
.ant-float-btn-pure {
position: relative;
inset: auto;
}
.ant-float-btn:empty {
display: none;
}
.ant-float-btn .ant-badge {
width: 100%;
height: 100%;
}
.ant-float-btn .ant-badge .ant-badge-count {
top: -6px;
transform: translate(0, 0);
transform-origin: center;
inset-inline-end: -6px;
}
.ant-float-btn-body {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
transition: all 0.2s;
}
.ant-float-btn-body .ant-float-btn-content {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
min-height: 40px;
padding: 4px / 2 4px;
overflow: hidden;
text-align: center;
}
.ant-float-btn-body .ant-float-btn-content .ant-float-btn-icon {
width: 18px;
margin: auto;
font-size: 18px;
line-height: 1;
text-align: center;
}
.ant-float-btn-inner {
display: block;
width: 100%;
height: 100%;
margin: 0;
padding: 0;
list-style: none;
border: none;
}
.ant-float-btn-rtl {
direction: rtl;
}
.ant-float-btn-circle {
height: 40px;
border-radius: 50%;
}
.ant-float-btn-circle .ant-badge .ant-badge-dot {
top: 5.6px;
inset-inline-end: 5.6px;
}
.ant-float-btn-circle .ant-float-btn-inner,
.ant-float-btn-circle .ant-float-btn-body {
border-radius: 50%;
}
.ant-float-btn-square {
height: auto;
min-height: 40px;
border-radius: 2px;
}
.ant-float-btn-square .ant-badge .ant-badge-dot {
top: 1px;
inset-inline-end: 1px;
}
.ant-float-btn-square .ant-float-btn-body {
height: auto;
border-radius: 2px;
}
.ant-float-btn-default {
background-color: #fff;
transition: background-color 0.2s;
}
.ant-float-btn-default .ant-float-btn-body {
background-color: #fff;
transition: background-color 0.2s;
}
.ant-float-btn-default .ant-float-btn-body:hover {
color: rgba(0, 0, 0, 0.85);
background-color: #f5f5f5;
}
.ant-float-btn-default .ant-float-btn-body .ant-float-btn-content .ant-float-btn-icon {
color: rgba(0, 0, 0, 0.85);
}
.ant-float-btn-default .ant-float-btn-body .ant-float-btn-content .ant-float-btn-description {
display: flex;
align-items: center;
color: rgba(0, 0, 0, 0.85);
font-size: 12px;
line-height: 1.5715;
}
.ant-float-btn-default:focus {
color: rgba(0, 0, 0, 0.85);
}
.ant-float-btn-top {
padding: 0 !important;
}
.ant-float-btn-group {
position: fixed;
bottom: 48px;
z-index: 99;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
box-sizing: border-box;
min-width: 40px;
height: auto;
min-height: 40px;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.85);
font-size: 14px;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
line-height: 1.5715;
list-style: none;
border: none;
border-radius: 2px;
box-shadow: none;
inset-inline-end: 24px;
}
.ant-float-btn-group-wrap {
position: absolute;
z-index: -1;
display: flex;
align-items: center;
justify-content: center;
}
.ant-float-btn-group.ant-float-btn-group-rtl {
direction: rtl;
}
.ant-float-btn-group .ant-float-btn {
position: static;
}
.ant-float-btn-group-top > .ant-float-btn-group-wrap {
top: auto;
bottom: calc(40px + 16px);
flex-direction: column;
}
.ant-float-btn-group-top > .ant-float-btn-group-wrap::after {
position: absolute;
bottom: -16px;
width: 100%;
height: 16px;
content: '';
}
.ant-float-btn-group-bottom > .ant-float-btn-group-wrap {
top: calc(40px + 16px);
bottom: auto;
flex-direction: column;
}
.ant-float-btn-group-bottom > .ant-float-btn-group-wrap::after {
position: absolute;
top: -16px;
width: 100%;
height: 16px;
content: '';
}
.ant-float-btn-group-left > .ant-float-btn-group-wrap {
right: calc(40px + 16px);
left: auto;
flex-direction: row;
}
.ant-float-btn-group-left > .ant-float-btn-group-wrap::after {
position: absolute;
right: -16px;
width: 16px;
height: 100%;
content: '';
}
.ant-float-btn-group-right > .ant-float-btn-group-wrap {
right: auto;
left: calc(40px + 16px);
flex-direction: row;
}
.ant-float-btn-group-right > .ant-float-btn-group-wrap::after {
position: absolute;
left: -16px;
width: 16px;
height: 100%;
content: '';
}
.ant-float-btn-group-circle {
gap: 16px;
}
.ant-float-btn-group-circle .ant-float-btn-group-wrap {
gap: 16px;
}
.ant-float-btn-group-circle .ant-float-btn-body {
width: 40px;
height: 40px;
}
.ant-float-btn-group-square .ant-float-btn-square {
padding: 0;
border-radius: 0;
}
.ant-float-btn-group-square .ant-float-btn-square.ant-float-btn-group-trigger {
border-radius: 2px;
}
.ant-float-btn-group-square .ant-float-btn-square:first-child {
border-start-start-radius: 2px;
border-start-end-radius: 2px;
}
.ant-float-btn-group-square .ant-float-btn-square:last-child {
border-end-start-radius: 2px;
border-end-end-radius: 2px;
}
.ant-float-btn-group-square .ant-float-btn-square:not(:last-child) {
border-bottom: 1px solid #d9d9d9;
}
.ant-float-btn-group-square .ant-float-btn-square .ant-badge .ant-badge-count {
top: -10px;
inset-inline-end: -10px;
}
.ant-float-btn-group-square .ant-float-btn-group-wrap {
border-radius: 2px;
box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);
}
.ant-float-btn-group-square .ant-float-btn-group-wrap .ant-float-btn-square {
padding: 4px;
border-radius: 0;
box-shadow: none;
}
.ant-float-btn-group-square .ant-float-btn-group-wrap .ant-float-btn-square .ant-float-btn-body {
width: 32px;
height: 32px;
}
.ant-float-btn-group-top > .ant-float-btn-group-wrap > .ant-float-btn-square:first-child,
.ant-float-btn-group-bottom > .ant-float-btn-group-wrap > .ant-float-btn-square:first-child {
border-start-start-radius: 2px;
border-start-end-radius: 2px;
}
.ant-float-btn-group-top > .ant-float-btn-group-wrap > .ant-float-btn-square:last-child,
.ant-float-btn-group-bottom > .ant-float-btn-group-wrap > .ant-float-btn-square:last-child {
border-end-start-radius: 2px;
border-end-end-radius: 2px;
}
.ant-float-btn-group-top > .ant-float-btn-group-wrap > .ant-float-btn-square:not(:last-child),
.ant-float-btn-group-bottom > .ant-float-btn-group-wrap > .ant-float-btn-square:not(:last-child) {
border-bottom: 1px solid #d9d9d9;
}
.ant-float-btn-group-left > .ant-float-btn-group-wrap > .ant-float-btn-square:first-child,
.ant-float-btn-group-right > .ant-float-btn-group-wrap > .ant-float-btn-square:first-child {
border-start-start-radius: 2px;
border-end-start-radius: 2px;
}
.ant-float-btn-group-left > .ant-float-btn-group-wrap > .ant-float-btn-square:last-child,
.ant-float-btn-group-right > .ant-float-btn-group-wrap > .ant-float-btn-square:last-child {
border-start-end-radius: 2px;
border-end-end-radius: 2px;
}
.ant-float-btn-group-left > .ant-float-btn-group-wrap > .ant-float-btn-square:not(:last-child),
.ant-float-btn-group-right > .ant-float-btn-group-wrap > .ant-float-btn-square:not(:last-child) {
border-inline-end: 1px solid #d9d9d9;
border-bottom: none;
}
.ant-float-btn-group-circle-shadow {
box-shadow: none;
}
.ant-float-btn-group-square-shadow {
box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);
}
.ant-float-btn-group-square-shadow .ant-float-btn-square {
padding: 4px;
box-shadow: none;
}
.ant-float-btn-group-square-shadow .ant-float-btn-square .ant-float-btn-body {
width: 32px;
height: 32px;
}

View File

@@ -0,0 +1,378 @@
@import '../../style/themes/index';
@import '../../style/mixins/index';
@float-btn-prefix-cls: ~'@{ant-prefix}-float-btn';
@float-btn-group-prefix-cls: ~'@{ant-prefix}-float-btn-group';
// patch variables
@badge-offset: @padding-xss * 1.5;
@dot-offset-in-circle: 5.6px;
@dot-offset-in-square: 1px;
@float-button-size: 40px;
@float-button-body-size: @float-button-size - (@padding-xss * 2);
@float-button-body-padding: @padding-xss;
@float-button-inset-inline-end: 24px;
@float-button-inset-block-end: @float-button-inset-inline-end * 2;
@float-button-icon-size: @font-size-sm * 1.5;
.@{float-btn-prefix-cls} {
position: fixed;
bottom: @float-button-inset-block-end;
z-index: 99;
display: block;
align-items: center;
justify-content: center;
width: @float-button-size;
height: @float-button-size;
border: none;
box-shadow: @shadow-2;
cursor: pointer;
inset-inline-end: @float-button-inset-inline-end;
&-hidden {
display: none;
}
&-pure {
position: relative;
inset: auto;
}
&:empty {
display: none;
}
.@{ant-prefix}-badge {
width: 100%;
height: 100%;
.@{ant-prefix}-badge-count {
top: -@badge-offset;
transform: translate(0, 0);
transform-origin: center;
inset-inline-end: -@badge-offset;
}
}
&-body {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
transition: all 0.2s;
.@{float-btn-prefix-cls}-content {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
min-height: @float-button-size;
padding: @float-button-body-padding / 2 @float-button-body-padding;
overflow: hidden;
text-align: center;
.@{float-btn-prefix-cls}-icon {
width: @float-button-icon-size;
margin: auto;
font-size: @float-button-icon-size;
line-height: 1;
text-align: center;
}
}
}
}
.@{float-btn-prefix-cls}-inner {
display: block;
width: 100%;
height: 100%;
margin: 0;
padding: 0;
list-style: none;
border: none;
}
.@{float-btn-prefix-cls}-rtl {
direction: rtl;
}
.@{float-btn-prefix-cls}-circle {
height: @float-button-size;
border-radius: 50%;
.@{ant-prefix}-badge {
.@{ant-prefix}-badge-dot {
top: @dot-offset-in-circle;
inset-inline-end: @dot-offset-in-circle;
}
}
.ant-float-btn-inner, .@{float-btn-prefix-cls}-body {
border-radius: 50%;
}
}
.@{float-btn-prefix-cls}-square {
height: auto;
min-height: @float-button-size;
border-radius: @border-radius-base;
.@{ant-prefix}-badge {
.@{ant-prefix}-badge-dot {
top: @dot-offset-in-square;
inset-inline-end: @dot-offset-in-square;
}
}
.@{float-btn-prefix-cls}-body {
height: auto;
border-radius: @border-radius-base;
}
}
.@{float-btn-prefix-cls}-default {
background-color: @component-background;
transition: background-color 0.2s;
.@{float-btn-prefix-cls}-body {
background-color: @component-background;
transition: background-color 0.2s;
&:hover {
color: @text-color;
background-color: @background-color-base;
}
.@{float-btn-prefix-cls}-content {
.@{float-btn-prefix-cls}-icon {
color: @text-color;
}
.@{float-btn-prefix-cls}-description {
display: flex;
align-items: center;
color: @text-color;
font-size: @font-size-sm;
line-height: @line-height-base;
}
}
}
&:focus {
color: @text-color;
}
}
.@{float-btn-prefix-cls}-top {
padding: 0 !important;
}
.@{float-btn-group-prefix-cls} {
position: fixed;
bottom: @float-button-inset-block-end;
z-index: 99;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
box-sizing: border-box;
min-width: @float-button-size;
height: auto;
min-height: @float-button-size;
margin: 0;
padding: 0;
color: @text-color;
font-size: @font-size-base;
font-family: @font-family;
line-height: @line-height-base;
list-style: none;
border: none;
border-radius: @border-radius-base;
box-shadow: none;
inset-inline-end: @float-button-inset-inline-end;
&-wrap {
position: absolute;
z-index: -1;
display: flex;
align-items: center;
justify-content: center;
}
&&-rtl {
direction: rtl;
}
.@{float-btn-prefix-cls} {
position: static;
}
}
.@{float-btn-group-prefix-cls}-top > .@{float-btn-group-prefix-cls}-wrap {
top: auto;
bottom: calc(@float-button-size + @margin-md);
flex-direction: column;
&::after {
position: absolute;
bottom: -@margin-md;
width: 100%;
height: @margin-md;
content: '';
}
}
.@{float-btn-group-prefix-cls}-bottom > .@{float-btn-group-prefix-cls}-wrap {
top: calc(@float-button-size + @margin-md);
bottom: auto;
flex-direction: column;
&::after {
position: absolute;
top: -@margin-md;
width: 100%;
height: @margin-md;
content: '';
}
}
.@{float-btn-group-prefix-cls}-left > .@{float-btn-group-prefix-cls}-wrap {
right: calc(@float-button-size + @margin-md);
left: auto;
flex-direction: row;
&::after {
position: absolute;
right: -@margin-md;
width: @margin-md;
height: 100%;
content: '';
}
}
.@{float-btn-group-prefix-cls}-right > .@{float-btn-group-prefix-cls}-wrap {
right: auto;
left: calc(@float-button-size + @margin-md);
flex-direction: row;
&::after {
position: absolute;
left: -@margin-md;
width: @margin-md;
height: 100%;
content: '';
}
}
.@{float-btn-group-prefix-cls}-circle {
gap: @margin-md;
.@{float-btn-group-prefix-cls}-wrap {
gap: @margin-md;
}
.@{float-btn-prefix-cls}-body {
width: @float-button-size;
height: @float-button-size;
}
}
.@{float-btn-group-prefix-cls}-square {
.@{float-btn-prefix-cls}-square {
padding: 0;
border-radius: 0;
&.@{float-btn-group-prefix-cls}-trigger {
border-radius: @border-radius-base;
}
&:first-child {
border-start-start-radius: @border-radius-base;
border-start-end-radius: @border-radius-base;
}
&:last-child {
border-end-start-radius: @border-radius-base;
border-end-end-radius: @border-radius-base;
}
&:not(:last-child) {
border-bottom: 1px solid @border-color-base;
}
.@{ant-prefix}-badge {
.@{ant-prefix}-badge-count {
top: -(@float-button-body-padding + @badge-offset);
inset-inline-end: -(@float-button-body-padding + @badge-offset);
}
}
}
.@{float-btn-group-prefix-cls}-wrap {
border-radius: @border-radius-base;
box-shadow: @shadow-2;
.@{float-btn-prefix-cls}-square {
padding: @float-button-body-padding;
border-radius: 0;
box-shadow: none;
.@{float-btn-prefix-cls}-body {
width: @float-button-body-size;
height: @float-button-body-size;
}
}
}
}
.@{float-btn-group-prefix-cls}-top > .@{float-btn-group-prefix-cls}-wrap, .@{float-btn-group-prefix-cls}-bottom > .@{float-btn-group-prefix-cls}-wrap {
> .@{float-btn-prefix-cls}-square {
&:first-child {
border-start-start-radius: @border-radius-base;
border-start-end-radius: @border-radius-base;
}
&:last-child {
border-end-start-radius: @border-radius-base;
border-end-end-radius: @border-radius-base;
}
&:not(:last-child) {
border-bottom: 1px solid @border-color-base;
}
}
}
.@{float-btn-group-prefix-cls}-left > .@{float-btn-group-prefix-cls}-wrap, .@{float-btn-group-prefix-cls}-right > .@{float-btn-group-prefix-cls}-wrap {
> .@{float-btn-prefix-cls}-square {
&:first-child {
border-start-start-radius: @border-radius-base;
border-end-start-radius: @border-radius-base;
}
&:last-child {
border-start-end-radius: @border-radius-base;
border-end-end-radius: @border-radius-base;
}
&:not(:last-child) {
border-inline-end: 1px solid @border-color-base;
border-bottom: none;
}
}
}
.@{float-btn-group-prefix-cls}-circle-shadow {
box-shadow: none;
}
.@{float-btn-group-prefix-cls}-square-shadow {
box-shadow: @shadow-2;
.@{float-btn-prefix-cls}-square {
padding: @float-button-body-padding;
box-shadow: none;
.@{float-btn-prefix-cls}-body {
width: @float-button-body-size;
height: @float-button-body-size;
}
}
}

File diff suppressed because one or more lines are too long