@bitforgehq/ui 0.3.0
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/CHANGELOG.md +3665 -0
- package/LICENSE +21 -0
- package/README.md +175 -0
- package/ai/MANIFEST.index.json +383 -0
- package/ai/MANIFEST.json +7528 -0
- package/ai/REFERENCE.index.json +1461 -0
- package/ai/REFERENCE.json +7213 -0
- package/ai/UI_GUIDE.md +1159 -0
- package/ai/components/action-bar.md +209 -0
- package/ai/components/action-sheet.md +526 -0
- package/ai/components/alert-dialog.md +509 -0
- package/ai/components/alert.md +376 -0
- package/ai/components/avatar.md +146 -0
- package/ai/components/back-button.md +286 -0
- package/ai/components/badge.md +171 -0
- package/ai/components/button.md +431 -0
- package/ai/components/card.md +303 -0
- package/ai/components/checkbox.md +418 -0
- package/ai/components/chip-group.md +205 -0
- package/ai/components/chip.md +300 -0
- package/ai/components/content.md +474 -0
- package/ai/components/desktop-toast.md +420 -0
- package/ai/components/dialog.md +962 -0
- package/ai/components/empty-state.md +146 -0
- package/ai/components/field.md +319 -0
- package/ai/components/header.md +809 -0
- package/ai/components/icon-button.md +221 -0
- package/ai/components/icon.md +176 -0
- package/ai/components/input.md +455 -0
- package/ai/components/list-item.md +326 -0
- package/ai/components/list.md +178 -0
- package/ai/components/menu-button.md +377 -0
- package/ai/components/menu.md +661 -0
- package/ai/components/modal.md +613 -0
- package/ai/components/number-input.md +423 -0
- package/ai/components/page.md +299 -0
- package/ai/components/progress.md +215 -0
- package/ai/components/radio-group.md +432 -0
- package/ai/components/refresher.md +377 -0
- package/ai/components/segmented.md +517 -0
- package/ai/components/select.md +510 -0
- package/ai/components/sheet.md +845 -0
- package/ai/components/spinner.md +171 -0
- package/ai/components/stack-outlet.md +661 -0
- package/ai/components/tab-bar.md +427 -0
- package/ai/components/tab.md +295 -0
- package/ai/components/tabs.md +408 -0
- package/ai/components/textarea.md +371 -0
- package/ai/components/toast.md +522 -0
- package/ai/components/toggle.md +387 -0
- package/ai/reference/bf-action-directive.md +21 -0
- package/ai/reference/bf-action-sheet-action-role.md +27 -0
- package/ai/reference/bf-action-sheet-action.md +28 -0
- package/ai/reference/bf-action-sheet-options.md +28 -0
- package/ai/reference/bf-action-sheet-service.md +33 -0
- package/ai/reference/bf-alert-dialog-button-role.md +27 -0
- package/ai/reference/bf-alert-dialog-button.md +27 -0
- package/ai/reference/bf-alert-dialog-options.md +29 -0
- package/ai/reference/bf-alert-dialog-service.md +34 -0
- package/ai/reference/bf-alert-variant.md +28 -0
- package/ai/reference/bf-autocapitalize.md +30 -0
- package/ai/reference/bf-avatar-size.md +27 -0
- package/ai/reference/bf-avatar-variant.md +28 -0
- package/ai/reference/bf-back-at-root.md +28 -0
- package/ai/reference/bf-back-button-service.md +40 -0
- package/ai/reference/bf-badge-variant.md +29 -0
- package/ai/reference/bf-button-size.md +29 -0
- package/ai/reference/bf-button-type.md +28 -0
- package/ai/reference/bf-button-variant.md +29 -0
- package/ai/reference/bf-card-padding.md +26 -0
- package/ai/reference/bf-card-variant.md +28 -0
- package/ai/reference/bf-chip-group-mode.md +27 -0
- package/ai/reference/bf-chip-variant.md +26 -0
- package/ai/reference/bf-compare-with.md +24 -0
- package/ai/reference/bf-component-overlay-ref.md +33 -0
- package/ai/reference/bf-confirm-button-role.md +26 -0
- package/ai/reference/bf-confirm-button.md +27 -0
- package/ai/reference/bf-confirm-options.md +31 -0
- package/ai/reference/bf-confirm-size.md +26 -0
- package/ai/reference/bf-content-scroll-event.md +21 -0
- package/ai/reference/bf-defaults-options.md +32 -0
- package/ai/reference/bf-defaults.md +28 -0
- package/ai/reference/bf-desktop-toast-config.md +28 -0
- package/ai/reference/bf-desktop-toast-harness.md +33 -0
- package/ai/reference/bf-desktop-toast-options.md +28 -0
- package/ai/reference/bf-desktop-toast-position.md +28 -0
- package/ai/reference/bf-desktop-toast-service.md +42 -0
- package/ai/reference/bf-dialog-config.md +44 -0
- package/ai/reference/bf-dialog-harness.md +52 -0
- package/ai/reference/bf-dialog-ref.md +44 -0
- package/ai/reference/bf-dialog-role.md +26 -0
- package/ai/reference/bf-dialog-service.md +55 -0
- package/ai/reference/bf-dialog-size.md +31 -0
- package/ai/reference/bf-dialog-template-context.md +32 -0
- package/ai/reference/bf-empty-state-heading-level.md +26 -0
- package/ai/reference/bf-enter-key-hint.md +31 -0
- package/ai/reference/bf-field-control-class.md +32 -0
- package/ai/reference/bf-field-control-state.md +28 -0
- package/ai/reference/bf-field-size.md +29 -0
- package/ai/reference/bf-haptics-impact-style.md +27 -0
- package/ai/reference/bf-haptics-notification-type.md +27 -0
- package/ai/reference/bf-haptics-service.md +41 -0
- package/ai/reference/bf-harness-filters.md +29 -0
- package/ai/reference/bf-horizontal-scroll-directive.md +129 -0
- package/ai/reference/bf-icon-button-variant.md +28 -0
- package/ai/reference/bf-icon-size.md +27 -0
- package/ai/reference/bf-input-autocapitalize.md +36 -0
- package/ai/reference/bf-input-enter-key-hint.md +38 -0
- package/ai/reference/bf-input-input-mode.md +38 -0
- package/ai/reference/bf-input-mode.md +32 -0
- package/ai/reference/bf-input-type.md +35 -0
- package/ai/reference/bf-jsdom-shim-options.md +22 -0
- package/ai/reference/bf-keyboard-assist-behavior.md +26 -0
- package/ai/reference/bf-keyboard-assist-directive.md +185 -0
- package/ai/reference/bf-keyboard-phase.md +30 -0
- package/ai/reference/bf-keyboard-service.md +50 -0
- package/ai/reference/bf-labels-overrides.md +26 -0
- package/ai/reference/bf-labels.md +44 -0
- package/ai/reference/bf-menu-button-harness.md +40 -0
- package/ai/reference/bf-menu-button-variant.md +27 -0
- package/ai/reference/bf-menu-divider-directive.md +13 -0
- package/ai/reference/bf-menu-group-directive.md +14 -0
- package/ai/reference/bf-menu-harness.md +55 -0
- package/ai/reference/bf-menu-item-checkbox-directive.md +31 -0
- package/ai/reference/bf-menu-item-directive.md +31 -0
- package/ai/reference/bf-menu-item-harness.md +52 -0
- package/ai/reference/bf-menu-item-radio-directive.md +29 -0
- package/ai/reference/bf-menu-placement.md +29 -0
- package/ai/reference/bf-menu-trigger-directive.md +46 -0
- package/ai/reference/bf-modal-options.md +30 -0
- package/ai/reference/bf-modal-presentation.md +26 -0
- package/ai/reference/bf-modal-service.md +38 -0
- package/ai/reference/bf-nav-controller.md +59 -0
- package/ai/reference/bf-nav-direction.md +23 -0
- package/ai/reference/bf-nav-target.md +21 -0
- package/ai/reference/bf-number-input-mode.md +28 -0
- package/ai/reference/bf-number-input-step.md +25 -0
- package/ai/reference/bf-overlay-auto-focus.md +29 -0
- package/ai/reference/bf-overlay-controller.md +22 -0
- package/ai/reference/bf-overlay-host.md +36 -0
- package/ai/reference/bf-overlay-options.md +53 -0
- package/ai/reference/bf-overlay-position.md +30 -0
- package/ai/reference/bf-overlay-ref.md +53 -0
- package/ai/reference/bf-overlay-role.md +27 -0
- package/ai/reference/bf-overlay-service.md +53 -0
- package/ai/reference/bf-overlay-stack-options.md +24 -0
- package/ai/reference/bf-overlay-stack.md +81 -0
- package/ai/reference/bf-overlay-template-context.md +24 -0
- package/ai/reference/bf-overscroll-stretch-directive.md +163 -0
- package/ai/reference/bf-page-context.md +24 -0
- package/ai/reference/bf-platform-service.md +53 -0
- package/ai/reference/bf-platform.md +28 -0
- package/ai/reference/bf-progress-size.md +26 -0
- package/ai/reference/bf-progress-tone.md +28 -0
- package/ai/reference/bf-radio-group-harness.md +49 -0
- package/ai/reference/bf-radio-group-orientation.md +26 -0
- package/ai/reference/bf-radio-option.md +30 -0
- package/ai/reference/bf-refresher-refresh-event.md +22 -0
- package/ai/reference/bf-segment-option.md +29 -0
- package/ai/reference/bf-segmented-harness.md +48 -0
- package/ai/reference/bf-segmented-size.md +29 -0
- package/ai/reference/bf-select-harness.md +70 -0
- package/ai/reference/bf-select-option.md +29 -0
- package/ai/reference/bf-sheet-auto-focus.md +29 -0
- package/ai/reference/bf-sheet-options.md +32 -0
- package/ai/reference/bf-sheet-ref.md +45 -0
- package/ai/reference/bf-sheet-service.md +34 -0
- package/ai/reference/bf-shell-config-mode.md +28 -0
- package/ai/reference/bf-shell-config.md +38 -0
- package/ai/reference/bf-shell-dynamic-type-limit.md +21 -0
- package/ai/reference/bf-shell-dynamic-type.md +25 -0
- package/ai/reference/bf-shell-mode.md +28 -0
- package/ai/reference/bf-shell-testing-options.md +26 -0
- package/ai/reference/bf-size.md +45 -0
- package/ai/reference/bf-spinner-size.md +27 -0
- package/ai/reference/bf-stack-change.md +22 -0
- package/ai/reference/bf-stack-reuse-strategy.md +32 -0
- package/ai/reference/bf-stack-transition-event.md +26 -0
- package/ai/reference/bf-stack-transition.md +26 -0
- package/ai/reference/bf-stacked-overlay.md +23 -0
- package/ai/reference/bf-system-bars-style.md +38 -0
- package/ai/reference/bf-tab-bar-controller.md +51 -0
- package/ai/reference/bf-tab-bar-host.md +52 -0
- package/ai/reference/bf-tab-context.md +32 -0
- package/ai/reference/bf-tab-links.md +37 -0
- package/ai/reference/bf-testing-options.md +27 -0
- package/ai/reference/bf-text-scale-service.md +35 -0
- package/ai/reference/bf-theme.md +27 -0
- package/ai/reference/bf-toast-action.md +25 -0
- package/ai/reference/bf-toast-controller.md +17 -0
- package/ai/reference/bf-toast-dismiss-reason.md +29 -0
- package/ai/reference/bf-toast-options.md +29 -0
- package/ai/reference/bf-toast-position.md +26 -0
- package/ai/reference/bf-toast-ref.md +41 -0
- package/ai/reference/bf-toast-service.md +39 -0
- package/ai/reference/bf-toggle-label-position.md +26 -0
- package/ai/reference/bf-transition-kind.md +28 -0
- package/ai/reference/bf-validation-message.md +31 -0
- package/ai/reference/bf-validation-messages.md +33 -0
- package/ai/reference/bf-view-event.md +28 -0
- package/ai/reference/bf-view-lifecycle.md +41 -0
- package/ai/reference/bf-view-state.md +28 -0
- package/ai/reference/bf_default_labels.md +21 -0
- package/ai/reference/bf_default_values.md +21 -0
- package/ai/reference/bf_defaults.md +21 -0
- package/ai/reference/bf_desktop_toast_defaults.md +21 -0
- package/ai/reference/bf_dialog_data.md +17 -0
- package/ai/reference/bf_labels.md +21 -0
- package/ai/reference/bf_overlay_data.md +19 -0
- package/ai/reference/bf_overlay_host.md +21 -0
- package/ai/reference/bf_sheet_default_snap_points.md +17 -0
- package/ai/reference/bf_shell_config.md +21 -0
- package/ai/reference/bf_shell_defaults.md +21 -0
- package/ai/reference/bf_tab_bar.md +21 -0
- package/ai/reference/bf_tab_bar_controller.md +21 -0
- package/ai/reference/bf_tab_context.md +21 -0
- package/ai/reference/bf_tab_links.md +21 -0
- package/ai/reference/bf_theme_storage.md +19 -0
- package/ai/reference/create-transition.md +36 -0
- package/ai/reference/duration_fast.md +17 -0
- package/ai/reference/duration_md.md +17 -0
- package/ai/reference/duration_overlay.md +17 -0
- package/ai/reference/duration_push.md +17 -0
- package/ai/reference/fade-down.md +26 -0
- package/ai/reference/fade-in.md +25 -0
- package/ai/reference/fade-out.md +25 -0
- package/ai/reference/fade-up.md +26 -0
- package/ai/reference/inject-shell-mode.md +23 -0
- package/ai/reference/install-bf-jsdom-shims.md +31 -0
- package/ai/reference/ios_duration.md +17 -0
- package/ai/reference/ios_easing.md +17 -0
- package/ai/reference/is-text-entry.md +25 -0
- package/ai/reference/max_complete_ms.md +17 -0
- package/ai/reference/md-transition.md +31 -0
- package/ai/reference/md_duration.md +17 -0
- package/ai/reference/md_easing.md +17 -0
- package/ai/reference/overlay_duration.md +21 -0
- package/ai/reference/overlay_easing.md +19 -0
- package/ai/reference/overlay_reduced_duration.md +17 -0
- package/ai/reference/pop-frames-at.md +25 -0
- package/ai/reference/prefers-reduced-motion.md +25 -0
- package/ai/reference/provide-bf-defaults.md +33 -0
- package/ai/reference/provide-bf-desktop-toast.md +28 -0
- package/ai/reference/provide-bf-labels.md +38 -0
- package/ai/reference/provide-bf-shell-testing.md +34 -0
- package/ai/reference/provide-bf-shell.md +41 -0
- package/ai/reference/provide-bf-testing.md +33 -0
- package/ai/reference/reduced-transition.md +28 -0
- package/ai/reference/reduced_duration.md +17 -0
- package/ai/reference/resolve-shell-mode.md +33 -0
- package/ai/reference/scale-in.md +25 -0
- package/ai/reference/settle-duration.md +25 -0
- package/ai/reference/settle-pop.md +33 -0
- package/ai/reference/settle_easing.md +17 -0
- package/ai/reference/should-complete-pop.md +26 -0
- package/ai/reference/slide-down.md +26 -0
- package/ai/reference/slide-up.md +26 -0
- package/ai/reference/with-bf-shell-routing.md +19 -0
- package/bin/bf-ui.js +81 -0
- package/fesm2022/bitforgehq-ui-icons.mjs +230 -0
- package/fesm2022/bitforgehq-ui-icons.mjs.map +1 -0
- package/fesm2022/bitforgehq-ui-mobile.mjs +5530 -0
- package/fesm2022/bitforgehq-ui-mobile.mjs.map +1 -0
- package/fesm2022/bitforgehq-ui-number-input.mjs +680 -0
- package/fesm2022/bitforgehq-ui-number-input.mjs.map +1 -0
- package/fesm2022/bitforgehq-ui-overlay.mjs +2675 -0
- package/fesm2022/bitforgehq-ui-overlay.mjs.map +1 -0
- package/fesm2022/bitforgehq-ui-testing.mjs +402 -0
- package/fesm2022/bitforgehq-ui-testing.mjs.map +1 -0
- package/fesm2022/bitforgehq-ui.mjs +7765 -0
- package/fesm2022/bitforgehq-ui.mjs.map +1 -0
- package/llms-full.txt +25394 -0
- package/llms.txt +329 -0
- package/package.json +94 -0
- package/theme.css +253 -0
- package/types/bitforgehq-ui-icons.d.ts +50 -0
- package/types/bitforgehq-ui-mobile.d.ts +2914 -0
- package/types/bitforgehq-ui-number-input.d.ts +282 -0
- package/types/bitforgehq-ui-overlay.d.ts +1514 -0
- package/types/bitforgehq-ui-testing.d.ts +495 -0
- package/types/bitforgehq-ui.d.ts +3499 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# BfAlertVariant
|
|
2
|
+
|
|
3
|
+
The four tones of an alert, from neutral information to a danger message
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.1.0
|
|
6
|
+
|
|
7
|
+
The tone of a `bf-alert`: neutral, success, warning or danger.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfAlertVariant } from '@bitforgehq/ui';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type BfAlertVariant = 'neutral' | 'success' | 'warning' | 'danger'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Values
|
|
20
|
+
|
|
21
|
+
- `neutral`
|
|
22
|
+
- `success`
|
|
23
|
+
- `warning`
|
|
24
|
+
- `danger`
|
|
25
|
+
|
|
26
|
+
## Used by
|
|
27
|
+
|
|
28
|
+
- [bf-alert](../components/alert.md)
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# BfAutocapitalize
|
|
2
|
+
|
|
3
|
+
How a phone keyboard capitalises the text typed into a field
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.2.0
|
|
6
|
+
|
|
7
|
+
Native `autocapitalize`: how a virtual keyboard capitalises typed text.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfAutocapitalize } from '@bitforgehq/ui';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type BfAutocapitalize = 'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Values
|
|
20
|
+
|
|
21
|
+
- `off`
|
|
22
|
+
- `none`
|
|
23
|
+
- `on`
|
|
24
|
+
- `sentences`
|
|
25
|
+
- `words`
|
|
26
|
+
- `characters`
|
|
27
|
+
|
|
28
|
+
## Used by
|
|
29
|
+
|
|
30
|
+
- [BfInputAutocapitalize](bf-input-autocapitalize.md)
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# BfAvatarSize
|
|
2
|
+
|
|
3
|
+
The three sizes of an avatar, from a list row to a profile header
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.1.0
|
|
6
|
+
|
|
7
|
+
The size of a `bf-avatar`: sm, md or lg.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfAvatarSize } from '@bitforgehq/ui';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type BfAvatarSize = 'sm' | 'md' | 'lg'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Values
|
|
20
|
+
|
|
21
|
+
- `sm`
|
|
22
|
+
- `md`
|
|
23
|
+
- `lg`
|
|
24
|
+
|
|
25
|
+
## Used by
|
|
26
|
+
|
|
27
|
+
- [bf-avatar](../components/avatar.md)
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# BfAvatarVariant
|
|
2
|
+
|
|
3
|
+
The four colour schemes of an avatar behind its initials or icon
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.1.0
|
|
6
|
+
|
|
7
|
+
The colour scheme of a `bf-avatar`: tint, ink, warning or neutral.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfAvatarVariant } from '@bitforgehq/ui';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type BfAvatarVariant = 'tint' | 'ink' | 'warning' | 'neutral'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Values
|
|
20
|
+
|
|
21
|
+
- `tint`
|
|
22
|
+
- `ink`
|
|
23
|
+
- `warning`
|
|
24
|
+
- `neutral`
|
|
25
|
+
|
|
26
|
+
## Used by
|
|
27
|
+
|
|
28
|
+
- [bf-avatar](../components/avatar.md)
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# BfBackAtRoot
|
|
2
|
+
|
|
3
|
+
What Android back does at a stack root, background the app or exit it
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui/mobile` · since 0.3.0
|
|
6
|
+
|
|
7
|
+
What the Android back button does at the root of every stack, when no overlay or page claims
|
|
8
|
+
it: `minimize` moves the app to the background (`App.minimizeApp()`), so a relaunch resumes it
|
|
9
|
+
warm; `exit` finishes the activity (`App.exitApp()`), so the next launch starts cold.
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
import { type BfBackAtRoot } from '@bitforgehq/ui/mobile';
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Signature
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
type BfBackAtRoot = 'minimize' | 'exit'
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Values
|
|
22
|
+
|
|
23
|
+
- `minimize`
|
|
24
|
+
- `exit`
|
|
25
|
+
|
|
26
|
+
## Used by
|
|
27
|
+
|
|
28
|
+
- [BfShellConfig](bf-shell-config.md)
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# BfBackButtonService
|
|
2
|
+
|
|
3
|
+
The Android hardware back button queue that overlays and navigation stacks share
|
|
4
|
+
|
|
5
|
+
Service from `@bitforgehq/ui/mobile` · since 0.2.0
|
|
6
|
+
|
|
7
|
+
The hardware back button queue: on native Android it listens to `@capacitor/app`'s
|
|
8
|
+
`backButton` event; on iOS and web nothing is registered (there is no hardware button to
|
|
9
|
+
listen to), but `register` and `dispatch` still work so overlays and tests can drive the same
|
|
10
|
+
queue. `register` adds a handler at a priority (an open overlay registers at 100,
|
|
11
|
+
`BfNavController` at 0 — it pops the deepest active `bf-stack-outlet`); `dispatch` runs the
|
|
12
|
+
queue from the highest priority down until one handler returns true; on equal priority the
|
|
13
|
+
newest registration runs first, so stacked overlays close top-down. When none does (every
|
|
14
|
+
stack is at its first page), the app moves to the background (`App.minimizeApp()`), so a
|
|
15
|
+
relaunch resumes it warm; `provideBfShell({ backAtRoot: 'exit' })` finishes it instead
|
|
16
|
+
(`App.exitApp()`).
|
|
17
|
+
|
|
18
|
+
```ts
|
|
19
|
+
import { BfBackButtonService } from '@bitforgehq/ui/mobile';
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Methods
|
|
23
|
+
|
|
24
|
+
### `register(priority: number, handler: () => boolean | Promise<boolean>): () => void`
|
|
25
|
+
|
|
26
|
+
Adds a handler at `priority` (higher priority runs first; on a tie, the handler registered
|
|
27
|
+
last runs first). Returns a function that removes
|
|
28
|
+
it again; call it when the registrant (an overlay, an outlet) is torn down.
|
|
29
|
+
|
|
30
|
+
| Parameter | Type | Description |
|
|
31
|
+
| ---------- | ----------------------------------- | ----------------------------------------------------------------- |
|
|
32
|
+
| `priority` | `number` | Higher runs first: an open overlay uses 100, `BfNavController` 0. |
|
|
33
|
+
| `handler` | `() => boolean \| Promise<boolean>` | Returns (or resolves) true when it handled the press. |
|
|
34
|
+
|
|
35
|
+
### `dispatch(): Promise<void>`
|
|
36
|
+
|
|
37
|
+
Runs the registered handlers from highest to lowest priority until one claims the event
|
|
38
|
+
(returns true); when none does, minimizes the app (or exits it with `backAtRoot: 'exit'`).
|
|
39
|
+
Public so tests and the native listener share one code path, and so overlays outside the
|
|
40
|
+
native listener's reach (phase 2c) can still be driven by it, e.g. `Escape`.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# BfBadgeVariant
|
|
2
|
+
|
|
3
|
+
The five tones of a badge, from neutral counts to danger states
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.1.0
|
|
6
|
+
|
|
7
|
+
The tone of a `bf-badge`: neutral, primary, success, warning or danger.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfBadgeVariant } from '@bitforgehq/ui';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type BfBadgeVariant = 'neutral' | 'primary' | 'success' | 'warning' | 'danger'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Values
|
|
20
|
+
|
|
21
|
+
- `neutral`
|
|
22
|
+
- `primary`
|
|
23
|
+
- `success`
|
|
24
|
+
- `warning`
|
|
25
|
+
- `danger`
|
|
26
|
+
|
|
27
|
+
## Used by
|
|
28
|
+
|
|
29
|
+
- [bf-badge](../components/badge.md)
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# BfButtonSize
|
|
2
|
+
|
|
3
|
+
Former name of the shared size scale for buttons, kept until 1.0.0
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.1.0
|
|
6
|
+
|
|
7
|
+
**Deprecated** 0.3.0 use BfSize; removed in 1.0.0
|
|
8
|
+
|
|
9
|
+
The height step of a `bf-button`; the same scale as every sized widget.
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
import { type BfButtonSize } from '@bitforgehq/ui';
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Signature
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
type BfButtonSize = BfSize
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Values
|
|
22
|
+
|
|
23
|
+
- `sm`
|
|
24
|
+
- `md`
|
|
25
|
+
- `lg`
|
|
26
|
+
|
|
27
|
+
## Uses
|
|
28
|
+
|
|
29
|
+
- [BfSize](bf-size.md)
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# BfButtonType
|
|
2
|
+
|
|
3
|
+
The native button types, for a plain action, a form submit or reset
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.1.0
|
|
6
|
+
|
|
7
|
+
The native `type` of a `bf-button`: button, submit or reset.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfButtonType } from '@bitforgehq/ui';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type BfButtonType = 'button' | 'submit' | 'reset'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Values
|
|
20
|
+
|
|
21
|
+
- `button`
|
|
22
|
+
- `submit`
|
|
23
|
+
- `reset`
|
|
24
|
+
|
|
25
|
+
## Used by
|
|
26
|
+
|
|
27
|
+
- [bf-button](../components/button.md)
|
|
28
|
+
- [bf-icon-button](../components/icon-button.md)
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# BfButtonVariant
|
|
2
|
+
|
|
3
|
+
The five visual styles of a button, from filled primary to plain text
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.1.0
|
|
6
|
+
|
|
7
|
+
The visual style of a `bf-button`: primary (filled), tonal (soft tint), outline, text or danger.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfButtonVariant } from '@bitforgehq/ui';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type BfButtonVariant = 'primary' | 'tonal' | 'outline' | 'text' | 'danger'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Values
|
|
20
|
+
|
|
21
|
+
- `primary`
|
|
22
|
+
- `tonal`
|
|
23
|
+
- `outline`
|
|
24
|
+
- `text`
|
|
25
|
+
- `danger`
|
|
26
|
+
|
|
27
|
+
## Used by
|
|
28
|
+
|
|
29
|
+
- [bf-button](../components/button.md)
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# BfCardPadding
|
|
2
|
+
|
|
3
|
+
The two inner paddings of a card, regular and roomy
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.1.0
|
|
6
|
+
|
|
7
|
+
The inner padding of a `bf-card`: md or lg.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfCardPadding } from '@bitforgehq/ui';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type BfCardPadding = 'md' | 'lg'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Values
|
|
20
|
+
|
|
21
|
+
- `md`
|
|
22
|
+
- `lg`
|
|
23
|
+
|
|
24
|
+
## Used by
|
|
25
|
+
|
|
26
|
+
- [bf-card](../components/card.md)
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# BfCardVariant
|
|
2
|
+
|
|
3
|
+
The four card surfaces, from a raised panel to a flat outline
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.1.0
|
|
6
|
+
|
|
7
|
+
The surface of a `bf-card`: raised, tint, ink or flat.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfCardVariant } from '@bitforgehq/ui';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type BfCardVariant = 'raised' | 'tint' | 'ink' | 'flat'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Values
|
|
20
|
+
|
|
21
|
+
- `raised`
|
|
22
|
+
- `tint`
|
|
23
|
+
- `ink`
|
|
24
|
+
- `flat`
|
|
25
|
+
|
|
26
|
+
## Used by
|
|
27
|
+
|
|
28
|
+
- [bf-card](../components/card.md)
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# BfChipGroupMode
|
|
2
|
+
|
|
3
|
+
Whether a chip group picks exactly one chip or lets each chip toggle alone
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.3.0
|
|
6
|
+
|
|
7
|
+
How a `bf-chip-group` treats its chips: one selected at a time (`single`, a radio group) or
|
|
8
|
+
independent toggles (`multiple`).
|
|
9
|
+
|
|
10
|
+
```ts
|
|
11
|
+
import { type BfChipGroupMode } from '@bitforgehq/ui';
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Signature
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
type BfChipGroupMode = 'single' | 'multiple'
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Values
|
|
21
|
+
|
|
22
|
+
- `single`
|
|
23
|
+
- `multiple`
|
|
24
|
+
|
|
25
|
+
## Used by
|
|
26
|
+
|
|
27
|
+
- [bf-chip-group](../components/chip-group.md)
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# BfChipVariant
|
|
2
|
+
|
|
3
|
+
The two chip colours, a soft tonal tint or a dark ink fill
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.1.0
|
|
6
|
+
|
|
7
|
+
The colour of a `bf-chip`: tonal or ink.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfChipVariant } from '@bitforgehq/ui';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type BfChipVariant = 'tonal' | 'ink'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Values
|
|
20
|
+
|
|
21
|
+
- `tonal`
|
|
22
|
+
- `ink`
|
|
23
|
+
|
|
24
|
+
## Used by
|
|
25
|
+
|
|
26
|
+
- [bf-chip](../components/chip.md)
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# BfCompareWith
|
|
2
|
+
|
|
3
|
+
Equality of choice values, for options that are objects rather than primitives
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui` · since 0.3.0
|
|
6
|
+
|
|
7
|
+
Equality that matches a bound value to an option's value (`compareWith` of the choice controls).
|
|
8
|
+
Called as `compareWith(optionValue, value)`: the option's value first, the bound value second.
|
|
9
|
+
|
|
10
|
+
```ts
|
|
11
|
+
import { type BfCompareWith } from '@bitforgehq/ui';
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Signature
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
type BfCompareWith<T> = (optionValue: T, value: T) => boolean
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Used by
|
|
21
|
+
|
|
22
|
+
- [bf-radio-group](../components/radio-group.md)
|
|
23
|
+
- [bf-segmented](../components/segmented.md)
|
|
24
|
+
- [bf-select](../components/select.md)
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# BfComponentOverlayRef
|
|
2
|
+
|
|
3
|
+
Overlay handle whose content is a component, with access to its ComponentRef
|
|
4
|
+
|
|
5
|
+
Class from `@bitforgehq/ui/overlay` · since 0.2.0
|
|
6
|
+
|
|
7
|
+
Also exported from `@bitforgehq/ui/mobile` (deprecated: 0.3.0 use BfComponentOverlayRef from '@bitforgehq/ui/overlay'; removed in 0.4.0).
|
|
8
|
+
|
|
9
|
+
An overlay ref whose content is a component, exposing its `ComponentRef`.
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
import { BfComponentOverlayRef } from '@bitforgehq/ui/overlay';
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Signature
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
class BfComponentOverlayRef<C, T = unknown> extends BfOverlayRef<T>
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Properties
|
|
22
|
+
|
|
23
|
+
| Name | Type | Default | Description |
|
|
24
|
+
| -------------- | ----------------- | ------- | ------------------------------------------------------------- |
|
|
25
|
+
| `componentRef` | `ComponentRef<C>` | | The content component; available as soon as `open()` returns. |
|
|
26
|
+
|
|
27
|
+
## Uses
|
|
28
|
+
|
|
29
|
+
- [BfOverlayRef](bf-overlay-ref.md)
|
|
30
|
+
|
|
31
|
+
## Used by
|
|
32
|
+
|
|
33
|
+
- [BfOverlayService](bf-overlay-service.md)
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# BfConfirmButtonRole
|
|
2
|
+
|
|
3
|
+
The role of a confirm dialog button, the cancel answer or a destructive action
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui/overlay` · since 0.3.0
|
|
6
|
+
|
|
7
|
+
The role of a confirm dialog button: `cancel` answers `Escape`, `destructive` renders `danger`.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfConfirmButtonRole } from '@bitforgehq/ui/overlay';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type BfConfirmButtonRole = 'cancel' | 'destructive'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Values
|
|
20
|
+
|
|
21
|
+
- `cancel`
|
|
22
|
+
- `destructive`
|
|
23
|
+
|
|
24
|
+
## Used by
|
|
25
|
+
|
|
26
|
+
- [BfConfirmButton](bf-confirm-button.md)
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# BfConfirmButton
|
|
2
|
+
|
|
3
|
+
One button of a confirm dialog: its answer, its label and its role
|
|
4
|
+
|
|
5
|
+
Interface from `@bitforgehq/ui/overlay` · since 0.3.0
|
|
6
|
+
|
|
7
|
+
A button of `BfDialogService.confirm()`.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfConfirmButton } from '@bitforgehq/ui/overlay';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
| Name | Type | Default | Description |
|
|
16
|
+
| ------- | --------------------------------------------------- | -------- | --------------------------------------------------------------------------------- |
|
|
17
|
+
| `id` | `string` | | The value `confirm()` resolves with (default the `label`). |
|
|
18
|
+
| `label` | `string` | required | Button text. |
|
|
19
|
+
| `role` | `BfConfirmButtonRole` (`'cancel' \| 'destructive'`) | | `cancel` answers `Escape` and gets initial focus; `destructive` renders `danger`. |
|
|
20
|
+
|
|
21
|
+
## Uses
|
|
22
|
+
|
|
23
|
+
- [BfConfirmButtonRole](bf-confirm-button-role.md)
|
|
24
|
+
|
|
25
|
+
## Used by
|
|
26
|
+
|
|
27
|
+
- [BfConfirmOptions](bf-confirm-options.md)
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# BfConfirmOptions
|
|
2
|
+
|
|
3
|
+
Options of a confirm dialog: its title, message, buttons and width
|
|
4
|
+
|
|
5
|
+
Interface from `@bitforgehq/ui/overlay` · since 0.3.0
|
|
6
|
+
|
|
7
|
+
Options of `BfDialogService.confirm()`.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfConfirmOptions } from '@bitforgehq/ui/overlay';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
| Name | Type | Default | Description |
|
|
16
|
+
| ------------------- | -------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------ |
|
|
17
|
+
| `title` | `string` | required | Heading, rendered as the `h2` the alert dialog is labelled by. |
|
|
18
|
+
| `message` | `string` | | Text under the title; the dialog's `aria-describedby` points to it. |
|
|
19
|
+
| `buttons` | `readonly BfConfirmButton[]` | | Buttons, in order, right-aligned (default Cancel and OK from `provideBfLabels()`, ids `cancel` and `ok`). |
|
|
20
|
+
| `size` | `BfConfirmSize` (`'sm' \| 'md'`) | `'sm'` | Width (default `sm`, 24 rem). |
|
|
21
|
+
| `closeOnNavigation` | `boolean` | `true` | A navigation to another URL path closes the dialog, resolving the cancel button's answer, or `undefined` without one (default true). |
|
|
22
|
+
| `injector` | `Injector` | | Source of the default button labels and parent of the content's injector. |
|
|
23
|
+
|
|
24
|
+
## Uses
|
|
25
|
+
|
|
26
|
+
- [BfConfirmButton](bf-confirm-button.md)
|
|
27
|
+
- [BfConfirmSize](bf-confirm-size.md)
|
|
28
|
+
|
|
29
|
+
## Used by
|
|
30
|
+
|
|
31
|
+
- [BfDialogService](bf-dialog-service.md)
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# BfConfirmSize
|
|
2
|
+
|
|
3
|
+
The two widths a confirm dialog comes in, small or medium
|
|
4
|
+
|
|
5
|
+
Type from `@bitforgehq/ui/overlay` · since 0.3.0
|
|
6
|
+
|
|
7
|
+
The width of a confirm dialog: `sm` (24 rem) or `md`.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfConfirmSize } from '@bitforgehq/ui/overlay';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type BfConfirmSize = 'sm' | 'md'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Values
|
|
20
|
+
|
|
21
|
+
- `sm`
|
|
22
|
+
- `md`
|
|
23
|
+
|
|
24
|
+
## Used by
|
|
25
|
+
|
|
26
|
+
- [BfConfirmOptions](bf-confirm-options.md)
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# BfContentScrollEvent
|
|
2
|
+
|
|
3
|
+
What a content scroll event carries: the scroller's current top offset
|
|
4
|
+
|
|
5
|
+
Interface from `@bitforgehq/ui/mobile` · since 0.3.0
|
|
6
|
+
|
|
7
|
+
The payload of `bf-content`'s `scrolled` output: the scroller's `scrollTop` after the scroll.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfContentScrollEvent } from '@bitforgehq/ui/mobile';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
| Name | Type | Default | Description |
|
|
16
|
+
| ----------- | -------- | -------- | ---------------------------------- |
|
|
17
|
+
| `scrollTop` | `number` | required | The scroller's `scrollTop`, in px. |
|
|
18
|
+
|
|
19
|
+
## Used by
|
|
20
|
+
|
|
21
|
+
- [bf-content](../components/content.md)
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# BfDefaultsOptions
|
|
2
|
+
|
|
3
|
+
The size steps provideBfDefaults sets, each one falling back to the parent
|
|
4
|
+
|
|
5
|
+
Interface from `@bitforgehq/ui` · since 0.3.0
|
|
6
|
+
|
|
7
|
+
Options of `provideBfDefaults()`: any step left out keeps the parent injector's value.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfDefaultsOptions } from '@bitforgehq/ui';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Signature
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
interface BfDefaultsOptions extends Partial<BfDefaults>
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Properties
|
|
20
|
+
|
|
21
|
+
| Name | Type | Default | Description |
|
|
22
|
+
| ------ | --------------------------------- | ------- | ---------------------------------------------------------------------------------------- |
|
|
23
|
+
| `size` | `BfSize` (`'sm' \| 'md' \| 'lg'`) | | Sets `fieldSize` and `controlSize` together; an explicit `fieldSize`/`controlSize` wins. |
|
|
24
|
+
|
|
25
|
+
## Uses
|
|
26
|
+
|
|
27
|
+
- [BfDefaults](bf-defaults.md)
|
|
28
|
+
- [BfSize](bf-size.md)
|
|
29
|
+
|
|
30
|
+
## Used by
|
|
31
|
+
|
|
32
|
+
- [provideBfDefaults](provide-bf-defaults.md)
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# BfDefaults
|
|
2
|
+
|
|
3
|
+
The default height steps of text fields and of actions and choice controls
|
|
4
|
+
|
|
5
|
+
Interface from `@bitforgehq/ui` · since 0.3.0
|
|
6
|
+
|
|
7
|
+
App-wide widget defaults, read by every sized widget whose `size` input is left unset.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { type BfDefaults } from '@bitforgehq/ui';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
| Name | Type | Default | Description |
|
|
16
|
+
| ------------- | --------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------- |
|
|
17
|
+
| `fieldSize` | `BfSize` (`'sm' \| 'md' \| 'lg'`) | `'md'` | Height step of text fields: bf-input, bf-number-input, bf-select, bf-textarea. |
|
|
18
|
+
| `controlSize` | `BfSize` (`'sm' \| 'md' \| 'lg'`) | `'md'` | Height step of actions and choice controls: bf-button, bf-icon-button, bf-chip, bf-segmented, bf-checkbox, bf-toggle, bf-radio-group. |
|
|
19
|
+
|
|
20
|
+
## Uses
|
|
21
|
+
|
|
22
|
+
- [BfSize](bf-size.md)
|
|
23
|
+
|
|
24
|
+
## Used by
|
|
25
|
+
|
|
26
|
+
- [BfDefaultsOptions](bf-defaults-options.md)
|
|
27
|
+
- [BF_DEFAULT_VALUES](bf_default_values.md)
|
|
28
|
+
- [BF_DEFAULTS](bf_defaults.md)
|