@hashicorp/design-system-components
Version:
Helios Design System Components
57 lines (56 loc) • 2.84 kB
TypeScript
/**
* Copyright IBM Corp. 2021, 2025
* SPDX-License-Identifier: MPL-2.0
*/
import Component from '@glimmer/component';
import type { WithBoundArgs } from '@glint/template';
import HdsFormError from '../error/index';
import HdsFormFileInputBase from '../file-input/base';
import HdsFormHelperText from '../helper-text/index';
import HdsFormLabel from '../label/index';
import HdsFormMaskedInputBase from '../masked-input/base';
import HdsFormSelectBase from '../select/base';
import HdsFormSuperSelectMultipleBase from '../super-select/multiple/base';
import HdsFormSuperSelectSingleBase from '../super-select/single/base';
import HdsFormTextareaBase from '../textarea/base';
import HdsFormTextInputBase from '../text-input/base';
import type HdsIntlService from '../../../../services/hds-intl.ts';
export interface HdsFormKeyValueInputsFieldSignature {
Args: {
extraAriaDescribedBy?: string;
id?: string;
isInvalid?: boolean;
isOptional?: boolean;
isRequired?: boolean;
onInsert?: () => void;
onRemove?: () => void;
rowIndex: number;
width?: string;
};
Blocks: {
default?: [
{
Label?: WithBoundArgs<typeof HdsFormLabel, 'contextualClass' | 'controlId' | 'hiddenText' | 'isOptional' | 'isRequired'>;
HelperText?: WithBoundArgs<typeof HdsFormHelperText, 'contextualClass' | 'controlId' | 'onInsert'>;
FileInput?: WithBoundArgs<typeof HdsFormFileInputBase, 'ariaDescribedBy' | 'id'>;
MaskedInput?: WithBoundArgs<typeof HdsFormMaskedInputBase, 'ariaDescribedBy' | 'id' | 'isInvalid'>;
Select?: WithBoundArgs<typeof HdsFormSelectBase, 'ariaDescribedBy' | 'id' | 'isInvalid'>;
SuperSelectSingle?: WithBoundArgs<typeof HdsFormSuperSelectSingleBase, 'ariaDescribedBy' | 'ariaLabelledBy' | 'isInvalid' | 'triggerId'>;
SuperSelectMultiple?: WithBoundArgs<typeof HdsFormSuperSelectMultipleBase, 'ariaDescribedBy' | 'ariaLabelledBy' | 'isInvalid' | 'triggerId'>;
TextInput?: WithBoundArgs<typeof HdsFormTextInputBase, 'ariaDescribedBy' | 'id' | 'isInvalid'>;
Textarea?: WithBoundArgs<typeof HdsFormTextareaBase, 'ariaDescribedBy' | 'id' | 'isInvalid'>;
Error?: WithBoundArgs<typeof HdsFormError, 'contextualClass' | 'controlId' | 'onInsert' | 'onRemove'>;
}
];
};
Element: HTMLDivElement;
}
export default class HdsFormKeyValueInputsField extends Component<HdsFormKeyValueInputsFieldSignature> {
readonly hdsIntl: HdsIntlService;
private _onInsert;
get id(): string;
get labelHiddenText(): string;
get labelIdPrefix(): string;
appendDescriptor: (element: HTMLElement) => void;
removeDescriptor: (element: HTMLElement) => void;
}