This file is a merged representation of the entire codebase, combining all repository files into a single document.
Generated by Repomix on: 2024-11-24T04:50:30.890Z
================================================================
File Summary
================================================================
Purpose:
--------
This file contains a packed representation of the entire repository's contents.
It is designed to be easily consumable by AI systems for analysis, code review,
or other automated processes.
File Format:
------------
The content is organized as follows:
1. This summary section
2. Repository information
3. Repository structure
4. Multiple file entries, each consisting of:
a. A separator line (================)
b. The file path (File: path/to/file)
c. Another separator line
d. The full contents of the file
e. A blank line
Usage Guidelines:
-----------------
- This file should be treated as read-only. Any changes should be made to the
original repository files, not this packed version.
- When processing this file, use the file path to distinguish
between different files in the repository.
- Be aware that this file may contain sensitive information. Handle it with
the same level of security as you would the original repository.
Notes:
------
- Some files may have been excluded based on .gitignore rules and Repomix's
configuration.
- Binary files are not included in this packed representation. Please refer to
the Repository Structure section for a complete list of file paths, including
binary files.
Additional Info:
----------------
For more information about Repomix, visit: https://github.com/yamadashy/repomix
================================================================
Repository Structure
================================================================
src/
components/
AccountSettings/
EnrollMFAForm.tsx
index.tsx
ActionSettings/
ArchiveDialog.tsx
General.tsx
Notifications.tsx
Permissions.tsx
Schedule.tsx
ActionsList/
ActionsListGroup.tsx
ActionsListItem.tsx
index.tsx
APIKeyButton/
index.tsx
ChoiceButtons/
index.tsx
CommandBar/
index.tsx
MultilineKBarSearch.tsx
Console/
index.tsx
ConsoleOnboarding/
index.tsx
DashboardLayout/
index.tsx
DashboardNav/
ControlPanel.tsx
index.tsx
MobileNav.tsx
ModeSwitch.tsx
OrgSwitcher.tsx
DotsSpinner/
index.tsx
DropdownMenu/
index.tsx
EmptyState/
index.tsx
ErrorMessage/
index.tsx
examples/
FormValidation.stories.tsx
FileUploadButton/
FileUploadButton.stories.tsx
index.tsx
HelpText/
HelpText.stories.tsx
index.tsx
HighlightedCodeBlock/
index.tsx
HostStatusIndicator/
index.tsx
io-methods/
Confirm/
Confirm.stories.tsx
index.tsx
display-chart/
display-chart.stories.tsx
index.tsx
DisplayCode/
DisplayCode.stories.tsx
index.tsx
DisplayGrid/
index.tsx
DisplayHeading/
DisplayHeading.stories.tsx
index.tsx
DisplayHTML/
DisplayHTML.stories.tsx
index.tsx
lazy.tsx
stub.tsx
DisplayImage/
DisplayImage.stories.tsx
index.tsx
DisplayLink/
DisplayLink.stories.tsx
index.tsx
DisplayMarkdown/
DisplayMarkdown.stories.tsx
index.tsx
lazy.tsx
stub.tsx
DisplayMetadata/
DisplayMetadata.stories.tsx
index.tsx
DisplayObject/
DisplayObject.stories.tsx
index.tsx
DisplayProgressIndeterminate/
DisplayProgressIndeterminate.stories.tsx
index.tsx
DisplayProgressSteps/
DisplayProgressSteps.stories.tsx
index.tsx
DisplayTable/
DisplayTable.stories.tsx
index.tsx
DisplayVideo/
DisplayVideo.stories.tsx
index.tsx
InputBoolean/
index.tsx
InputBoolean.stories.tsx
InputDate/
index.tsx
InputDateTime/
index.tsx
InputEmail/
index.tsx
InputEmail.stories.tsx
InputNumber/
index.tsx
InputNumber.stories.tsx
InputRichText/
index.tsx
InputRichText.stories.tsx
InputSlider/
index.tsx
InputSlider.stories.tsx
InputText/
index.tsx
InputText.stories.tsx
InputTime/
index.tsx
InputURL/
index.tsx
ListProgress/
index.tsx
ListProgress.stories.tsx
Search/
index.tsx
Search.stories.tsx
SelectMultiple/
index.tsx
SelectMultiple.stories.tsx
SelectSingle/
index.tsx
SelectSingle.stories.tsx
SelectTable/
index.tsx
SelectTable.stories.tsx
UploadFile/
index.tsx
UploadFile.stories.tsx
IVAlert/
index.tsx
IVAPIError/
index.tsx
IVAvatar/
index.tsx
IVAvatar.stories.tsx
IVButton/
index.tsx
IVButton.stories.tsx
IVCheckbox/
index.tsx
IVCheckbox.stories.tsx
IVConstraintsIndicator/
index.tsx
IVDatePicker/
index.tsx
IVDatePicker.stories.tsx
IVDateTimePicker/
CalendarPopover.tsx
DateInput.tsx
index.tsx
IVDateTimePicker.stories.tsx
TimeInput.tsx
IVDialog/
index.tsx
IVDialog.stories.tsx
IVInputField/
index.tsx
IVMediaGrid/
index.tsx
MediaGridItem.tsx
IVRadio/
index.tsx
IVRadio.stories.tsx
IVRichTextEditor/
index.tsx
IVRichTextEditor.stories.tsx
lazy.tsx
IVSelect/
async.tsx
index.tsx
IVSelect.stories.tsx
IVSpinner/
IVSpinner/
index.tsx
IVSpinner.stories.tsx
index.tsx
IVTable/
DesktopTable.tsx
index.tsx
IVTable.stories.tsx
TableDownloader.tsx
TableRowMenu.tsx
VerticalTable.tsx
IVTextArea/
index.tsx
IVTextArea.stories.tsx
IVTextInput/
index.tsx
IVTextInput.stories.tsx
IVTimePicker/
index.tsx
IVTimePicker.stories.tsx
IVToggle/
index.tsx
IVTooltip/
index.tsx
IVTooltip.stories.tsx
KeysList/
index.tsx
KeyValueTable/
index.tsx
KeyValueTable.stories.tsx
MetadataCardList/
index.tsx
MetadataValue.tsx
NavTabs/
index.tsx
ObjectViewer/
index.tsx
PageHeading/
index.tsx
PageLayout/
index.tsx
PageUI/
Layout/
Basic/
index.tsx
index.tsx
MobileSubnav.tsx
Subnav.tsx
index.tsx
PermissionSelector/
index.tsx
QueuedActionsList/
index.tsx
QueuedActionsList.stories.tsx
RenderHTML/
index.tsx
RenderIOCall/
ComponentError.tsx
ComponentRenderer.tsx
index.tsx
RenderMarkdown/
index.tsx
RenderValue/
index.tsx
SectionHeading/
index.tsx
Sidebar/
OrgSwitcher.tsx
simple-layout/
index.tsx
SimpleTable/
index.tsx
TeamsSelector/
index.tsx
TransactionHistory/
index.tsx
TransactionsList/
index.tsx
TransactionUI/
_presentation/
CompletionState/
CompletionState.stories.tsx
index.tsx
ComponentError/
index.tsx
ControlPanel/
index.tsx
ErrorState/
index.tsx
InlineAction/
index.tsx
LoadingState/
Indeterminate.stories.tsx
Indeterminate.tsx
index.tsx
InlineLoading.stories.tsx
InlineLoading.tsx
Progress.stories.tsx
Progress.tsx
Logs/
index.tsx
Logs.stories.tsx
Notifications/
index.tsx
Result/
index.tsx
TransactionHeader/
index.tsx
TransactionLayout/
index.tsx
ConfirmIdentity/
index.tsx
InputSpreadsheet/
Importer/
index.tsx
index.tsx
InputSpreadsheet.stories.tsx
lazy.tsx
SpreadsheetEditor.tsx
index.tsx
useWebSocketClient.tsx
ui/
button.tsx
card.tsx
chart.tsx
dropdown-menu.tsx
input.tsx
UsersList/
index.tsx
ActionBreadcrumbs.tsx
AuthLoadingState.tsx
AuthPageHeader.tsx
ChronologicalScrollableFeed.tsx
dark-mode-toggle.tsx
DashboardContext.tsx
EnvironmentColor.tsx
IVStatusPill.tsx
IVUnstyledButtonOrLink.tsx
ListViewToggle.tsx
LoginRedirect.tsx
Logo.tsx
MeContext.tsx
MFAInput.tsx
NotFound.tsx
NotificationCenter.tsx
RenderContext.tsx
theme-provider.tsx
Transition.tsx
Truncate.tsx
WrapOnUnderscores.tsx
icons/
compiled/
Actions.tsx
AddRow.tsx
AddRowAbove.tsx
BulletedList.tsx
Calendar.tsx
Cancel.tsx
CaretDown.tsx
Check.tsx
CheckCircle.tsx
CheckCircleOutline.tsx
ChevronDown.tsx
ChevronLeft.tsx
ChevronRight.tsx
ChevronUp.tsx
CircledPlay.tsx
ClearFormatting.tsx
Clipboard.tsx
Close.tsx
Code.tsx
Copy.tsx
Delete.tsx
DeleteRow.tsx
DownloadsFolder.tsx
ErrorCircle.tsx
ExclamationWarn.tsx
ExternalLink.tsx
Eye.tsx
Folder.tsx
FrownFace.tsx
Github.tsx
Google.tsx
IconSortUp.tsx
Image.tsx
Info.tsx
Invisible.tsx
Link.tsx
Lock.tsx
Menu.tsx
MinusMini.tsx
More.tsx
NumberedList.tsx
Offline.tsx
Ok.tsx
Online.tsx
Play.tsx
PlusMini.tsx
Puzzled.tsx
QuoteLeft.tsx
Redirect.tsx
Redo.tsx
Refresh.tsx
RightArrow.tsx
Rocket.tsx
Schedule.tsx
Search.tsx
Settings.tsx
Slack.tsx
SortDown.tsx
SortUp.tsx
Sparkling.tsx
Subtract.tsx
TailwindChevronDown.tsx
ThumbsDown.tsx
ThumbsUp.tsx
TwitterCircled.tsx
Undo.tsx
UploadsFolder.tsx
User.tsx
XCircle.tsx
pages/
confirm-signup/
[orgSlug].tsx
dashboard/
[orgSlug]/
actions/
[...actionSlug].tsx
configure/
[...actionSlug].tsx
details/
[...actionSlug].tsx
develop/
actions/
[...actionSlug].tsx
console/
index.tsx
keys/
index.tsx
serverless-endpoints/
index.tsx
index.tsx
history/
index.tsx
organization/
teams/
[groupId].tsx
index.tsx
actions.tsx
environments.tsx
index.tsx
settings.tsx
users.tsx
transactions/
[transactionId].tsx
index.tsx
[...fallback].tsx
account.tsx
index.tsx
new-organization.tsx
index.tsx
develop/
[orgSlug]/
actions/
[...actionSlug].tsx
index.tsx
GhostModeConsoleLayout.tsx
accept-invitation.tsx
authentication-confirmed.tsx
authentication-not-confirmed.tsx
component-preview.tsx
confirm-email.tsx
enroll-mfa.tsx
forgot-password.tsx
index.tsx
login.tsx
not-found.tsx
reset-password.tsx
signup.tsx
verify-mfa.tsx
App.tsx
main.tsx
================================================================
Repository Files
================================================================
================
File: src/components/AccountSettings/EnrollMFAForm.tsx
================
import { useEffect } from 'react'
import { Form, Formik } from 'formik'
import { trpc } from '~/utils/trpc'
import IVButton from '~/components/IVButton'
import IVSpinner from '~/components/IVSpinner'
import MFAInput from '../MFAInput'
export default function EnrollMFAForm({ onSubmit }: { onSubmit: () => void }) {
const start = trpc.useMutation(['auth.mfa.enroll.start'])
const complete = trpc.useMutation(['auth.mfa.enroll.complete'], {
onSuccess() {
onSubmit()
},
})
const { mutate: startEnrollment } = start
useEffect(() => {
startEnrollment()
}, [startEnrollment])
return (
Enter a code with your current MFA enrollment to disable it.
Multi-factor authentication is currently enabled.
Multi-factor authentication {' '} adds an additional layer of security to your account. We strongly recommending enabling MFA.
Are you sure you want to archive this action?
Unarchive this action to add it to the actions list and run it.
{label}
This action has been archived.{` `} {' '} to restore it to your Actions list.
Actions are configured in code. See{' '} defining actions documentation {' '} for more information.
)}The Administrator permission enables running the action and configuring settings.
To run the action, users on this team must also have{' '} a role with sufficient access .
To configure action settings, users on this team must also have the{' '} Admin role .
> } id="admin-explanation" placement="right" />There aren't any teams yet. Please create one to configure team access.
Starting with version {SDK_PERMISSIONS_MIN_VERSION} of
the SDK, permissions must be configured via code.{' '}
View documentation ›
If enabled, will notify the action runner when the action completes successfully.
The runner will always be notified when the action is unsuccessful or if it requires input.
> } checked={input.notifyOnSuccess} onChange={e => { updateInput({ notifyOnSuccess: e.target.checked }) }} />Add a schedule to run this action automatically.
Please enable Allow running in background in General settings before adding a schedule.
Unlisted
} {hostStatus === 'OFFLINE' && (Offline
)} {hostStatus === 'UNREACHABLE' && (Unreachable
Unlisted
} {hostStatus === 'OFFLINE' && (Offline
)} {hostStatus === 'UNREACHABLE' && (Unreachable
{pluralize(
props.archivedActions.length,
'This action has been archived but is still registered in code.',
'These actions have been archived but are still registered in code.'
)}
Remove archived actions from your code and redeploy to remove
them from the dashboard, or unarchive the actions to restore
them to the list above.
{pluralize(
props.archivedActions.length,
'This action has been archived in live mode.',
'These actions have been archived in live mode.'
)}
Remove archived actions from your code to remove them from the
dashboard, or unarchive actions in{' '}
live mode
{' '}
to restore them to the list above.
{extraLoadingMessage}...
No results
Actions will appear here when your development server comes online.
Use your personal development key to connect:
That's it! Once you start your app, this message will disappear and you'll be able to run the actions you're developing. Installation instructions and code samples will remain available{' '} in the docs .
) } function CodeSnippet(props: { children: React.ReactNode }) { return*/} {/* You can also{' '} */} {/* */} {/* navigate(location.pathname, { state: 'installNew' }) */} {/* } */} {/* className="text-primary-500 font-medium hover:opacity-60 cursor-pointer" */} {/* > */} {/* create a new Forge project from a template */} {/* */} {/* . */} {/*
*/}Actions are created from within your codebase and will appear here when your SDK listener comes online. To create your first action, copy the following example code into your project:
Generate the scaffolding for a blank slate Forge app, or select a template to start with{' '} one of our pre-built example tools .
{language === 'python' ? (This command uses JavaScript command line tools to create the project from a template. If you don't have Node installed, you can{' '} navigate(location.pathname, { state: 'installExisting' }) } className="text-primary-500 font-medium hover:opacity-60 cursor-pointer" > add Forge to an existing codebase {' '} or{' '} clone the templates directly .
) : (You can also{' '} navigate(location.pathname, { state: 'installExisting' }) } className="text-primary-500 font-medium hover:opacity-60 cursor-pointer" > add Forge to an existing codebase instead .
)}Tools in Forge are called{' '} actions {' '} and created using the Forge SDK. Follow the steps below to install the SDK in your existing project and start building actions.