braid-ui 1.0.99 → 1.0.100

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.
Files changed (145) hide show
  1. package/README.md +327 -44
  2. package/dist/css/braid-ui-variables.css +88 -0
  3. package/dist/css/braid-ui.css +4702 -0
  4. package/dist/css/braid-ui.min.css +1 -0
  5. package/dist/index.cjs +4 -0
  6. package/dist/index.cjs.map +1 -0
  7. package/dist/index.d.cts +2027 -0
  8. package/dist/index.d.ts +2027 -0
  9. package/dist/index.js +4 -0
  10. package/dist/index.js.map +1 -0
  11. package/package.json +115 -55
  12. package/src/styles-only.css +121 -0
  13. package/src/{index.css → styles.css} +4 -10
  14. package/components.json +0 -20
  15. package/eslint.config.js +0 -29
  16. package/index.html +0 -24
  17. package/postcss.config.js +0 -6
  18. package/public/favicon.ico +0 -0
  19. package/public/placeholder.svg +0 -1
  20. package/public/robots.txt +0 -14
  21. package/src/App.css +0 -42
  22. package/src/App.tsx +0 -94
  23. package/src/components/MainLayout.tsx +0 -15
  24. package/src/components/alerts/AlertDocuments.tsx +0 -320
  25. package/src/components/alerts/AlertNotes.tsx +0 -185
  26. package/src/components/alerts/AlertTimeline.tsx +0 -79
  27. package/src/components/alerts/ContextSection.tsx +0 -155
  28. package/src/components/app-sidebar.tsx +0 -341
  29. package/src/components/form-sections/ACHBankCard.tsx +0 -78
  30. package/src/components/form-sections/ACHBasicInfoCard.tsx +0 -100
  31. package/src/components/form-sections/ACHTransferSection.tsx +0 -64
  32. package/src/components/form-sections/AddressForm.tsx +0 -94
  33. package/src/components/form-sections/BankAddressCard.tsx +0 -95
  34. package/src/components/form-sections/BankingDetailsCard.tsx +0 -46
  35. package/src/components/form-sections/BasicInfoCard.tsx +0 -103
  36. package/src/components/form-sections/BasicInfoSection.tsx +0 -34
  37. package/src/components/form-sections/BeneficiaryAddress.tsx +0 -19
  38. package/src/components/form-sections/BeneficiaryCard.tsx +0 -41
  39. package/src/components/form-sections/BeneficiaryDomesticWire.tsx +0 -23
  40. package/src/components/form-sections/BusinessProfileCard.tsx +0 -131
  41. package/src/components/form-sections/BusinessStatusCard.tsx +0 -53
  42. package/src/components/form-sections/ContactInfoCard.tsx +0 -63
  43. package/src/components/form-sections/CounterpartyBasicInfo.tsx +0 -101
  44. package/src/components/form-sections/CounterpartyProfileCard.tsx +0 -104
  45. package/src/components/form-sections/CounterpartyRecordsCard.tsx +0 -41
  46. package/src/components/form-sections/IntermediaryCard.tsx +0 -77
  47. package/src/components/form-sections/IntermediaryFI.tsx +0 -41
  48. package/src/components/form-sections/IntermediaryFIAddress.tsx +0 -14
  49. package/src/components/form-sections/OriginatorCard.tsx +0 -49
  50. package/src/components/form-sections/OriginatorFI.tsx +0 -42
  51. package/src/components/form-sections/OriginatorFIAddress.tsx +0 -14
  52. package/src/components/form-sections/PaymentInformationSection.tsx +0 -163
  53. package/src/components/form-sections/ReceiverCard.tsx +0 -94
  54. package/src/components/form-sections/WireTransferSection.tsx +0 -75
  55. package/src/components/layouts/list-page.tsx +0 -103
  56. package/src/components/transaction/ACHDetailsSection.tsx +0 -95
  57. package/src/components/transaction/WireDetailsSection.tsx +0 -112
  58. package/src/components/ui/account-card.tsx +0 -94
  59. package/src/components/ui/badge.tsx +0 -75
  60. package/src/components/ui/breadcrumb.tsx +0 -78
  61. package/src/components/ui/business-type-badge.tsx +0 -42
  62. package/src/components/ui/button.tsx +0 -56
  63. package/src/components/ui/calendar.tsx +0 -49
  64. package/src/components/ui/card.tsx +0 -223
  65. package/src/components/ui/container.tsx +0 -45
  66. package/src/components/ui/counterparty-type-badge.tsx +0 -53
  67. package/src/components/ui/data-grid.tsx +0 -99
  68. package/src/components/ui/data-table.tsx +0 -152
  69. package/src/components/ui/detail-page-layout.tsx +0 -83
  70. package/src/components/ui/dialog.tsx +0 -120
  71. package/src/components/ui/dropdown-menu.tsx +0 -82
  72. package/src/components/ui/editable-form-card.tsx +0 -106
  73. package/src/components/ui/editable-info-field.tsx +0 -67
  74. package/src/components/ui/enhanced-input.tsx +0 -78
  75. package/src/components/ui/enhanced-select.tsx +0 -101
  76. package/src/components/ui/enhanced-textarea.tsx +0 -64
  77. package/src/components/ui/entity-card.tsx +0 -140
  78. package/src/components/ui/form-card.tsx +0 -40
  79. package/src/components/ui/form-field.tsx +0 -50
  80. package/src/components/ui/form-input.tsx +0 -29
  81. package/src/components/ui/form-provider.tsx +0 -18
  82. package/src/components/ui/form-section.tsx +0 -66
  83. package/src/components/ui/form-select.tsx +0 -35
  84. package/src/components/ui/info-field.tsx +0 -36
  85. package/src/components/ui/json-viewer.tsx +0 -146
  86. package/src/components/ui/label.tsx +0 -24
  87. package/src/components/ui/metric-card.tsx +0 -80
  88. package/src/components/ui/page-layout.tsx +0 -183
  89. package/src/components/ui/popover.tsx +0 -29
  90. package/src/components/ui/responsive-grid.tsx +0 -46
  91. package/src/components/ui/separator.tsx +0 -31
  92. package/src/components/ui/sheet.tsx +0 -140
  93. package/src/components/ui/sidebar.tsx +0 -775
  94. package/src/components/ui/sonner.tsx +0 -29
  95. package/src/components/ui/stack.tsx +0 -77
  96. package/src/components/ui/status-badge.tsx +0 -68
  97. package/src/components/ui/tabs.tsx +0 -52
  98. package/src/components/ui/toast.tsx +0 -127
  99. package/src/components/ui/toaster.tsx +0 -33
  100. package/src/components/ui/tooltip.tsx +0 -28
  101. package/src/components/ui/use-toast.ts +0 -3
  102. package/src/components/ui-kit/dashboard-demo.tsx +0 -156
  103. package/src/components/ui-kit/pattern-library.tsx +0 -248
  104. package/src/components/ui-kit/showcase.tsx +0 -211
  105. package/src/hooks/use-mobile.tsx +0 -19
  106. package/src/hooks/use-toast.ts +0 -191
  107. package/src/hooks/useEditState.ts +0 -70
  108. package/src/hooks/useFormWithEditState.ts +0 -115
  109. package/src/lib/constants.ts +0 -25
  110. package/src/lib/mock-data/alert-data.ts +0 -275
  111. package/src/lib/mock-data/banking-data.ts +0 -72
  112. package/src/lib/mock-data/business-data.ts +0 -71
  113. package/src/lib/mock-data/counterparty-data.ts +0 -70
  114. package/src/lib/mock-data/index.ts +0 -5
  115. package/src/lib/mock-data/transaction-data.ts +0 -283
  116. package/src/lib/mock-data/wire-data.ts +0 -103
  117. package/src/lib/mock-data.tsx +0 -180
  118. package/src/lib/schemas/banking-schemas.ts +0 -30
  119. package/src/lib/schemas/business-schemas.ts +0 -36
  120. package/src/lib/schemas/counterparty-schemas.ts +0 -43
  121. package/src/lib/schemas/index.ts +0 -5
  122. package/src/lib/schemas/wire-schemas.ts +0 -44
  123. package/src/lib/utils.ts +0 -6
  124. package/src/main.tsx +0 -10
  125. package/src/pages/Cases.tsx +0 -16
  126. package/src/pages/Dashboard.tsx +0 -16
  127. package/src/pages/NotFound.tsx +0 -27
  128. package/src/pages/TransactionHistory.tsx +0 -532
  129. package/src/pages/UIKit.tsx +0 -51
  130. package/src/pages/alerts/AlertDetail.tsx +0 -193
  131. package/src/pages/alerts/Alerts.tsx +0 -373
  132. package/src/pages/business/Business.tsx +0 -48
  133. package/src/pages/business/Create.tsx +0 -173
  134. package/src/pages/counterparty/Create.tsx +0 -48
  135. package/src/pages/counterparty/DomesticWire.tsx +0 -78
  136. package/src/pages/counterparty/Manage.tsx +0 -79
  137. package/src/pages/transactions/NewTransaction.tsx +0 -527
  138. package/src/pages/transactions/TransactionDetail.tsx +0 -192
  139. package/src/vite-env.d.ts +0 -1
  140. package/tailwind.config.ts +0 -124
  141. package/tsconfig.app.json +0 -30
  142. package/tsconfig.json +0 -19
  143. package/tsconfig.node.json +0 -22
  144. package/vite.config.ts +0 -22
  145. /package/{src/assets/braid-logo.png → dist/braid-logo-343BOQZ2.png} +0 -0
@@ -1,192 +0,0 @@
1
- import { useParams, useNavigate } from "react-router-dom"
2
- import { PageLayout } from "@/components/ui/page-layout"
3
- import { FormCard } from "@/components/ui/form-card"
4
- import { Button } from "@/components/ui/button"
5
- import { Badge } from "@/components/ui/badge"
6
- import { mockTransactions } from "@/lib/mock-data/transaction-data"
7
- import { mockTransactionTimeline } from "@/lib/mock-data/transaction-data"
8
- import { InfoField } from "@/components/ui/info-field"
9
- import { AlertTimeline } from "@/components/alerts/AlertTimeline"
10
- import { cn } from "@/lib/utils"
11
- import { WireDetailsSection } from "@/components/transaction/WireDetailsSection"
12
- import { ACHDetailsSection } from "@/components/transaction/ACHDetailsSection"
13
-
14
- const TransactionDetail = () => {
15
- const { id } = useParams()
16
- const navigate = useNavigate()
17
-
18
- const transaction = mockTransactions.find(t => t.id === id)
19
-
20
- if (!transaction) {
21
- return (
22
- <div className="container mx-auto px-4 py-8">
23
- <div className="text-center">
24
- <h1 className="text-2xl font-bold mb-2">Transaction Not Found</h1>
25
- <p className="text-muted-foreground mb-4">The transaction #{id} could not be found.</p>
26
- <Button onClick={() => navigate("/transactions/history")}>
27
- Back to Transaction History
28
- </Button>
29
- </div>
30
- </div>
31
- )
32
- }
33
-
34
- const getStatusColor = (status: string) => {
35
- switch (status) {
36
- case "POSTED":
37
- return "text-success"
38
- case "PENDING":
39
- return "text-warning"
40
- case "FAILED":
41
- return "text-destructive"
42
- case "CANCELLED":
43
- return "text-muted-foreground"
44
- default:
45
- return ""
46
- }
47
- }
48
-
49
- const getStatusVariant = (status: string): any => {
50
- switch (status) {
51
- case "POSTED":
52
- return "success"
53
- case "PENDING":
54
- return "warning"
55
- case "FAILED":
56
- return "destructive"
57
- case "CANCELLED":
58
- return "outline"
59
- default:
60
- return "outline"
61
- }
62
- }
63
-
64
- const formatCurrency = (value: number) => {
65
- return new Intl.NumberFormat('en-US', {
66
- style: 'currency',
67
- currency: 'USD',
68
- minimumFractionDigits: 2
69
- }).format(value)
70
- }
71
-
72
- const isWireTransfer = transaction.transactionType.toLowerCase().includes('wire')
73
- const isACHTransfer = transaction.transactionType.toLowerCase().includes('ach')
74
-
75
- return (
76
- <PageLayout
77
- title={`Transaction #${transaction.id}`}
78
- maxWidth="full"
79
- actions={[
80
- {
81
- label: "Return",
82
- variant: "outline",
83
- onClick: () => console.log("Return transaction")
84
- },
85
- {
86
- label: "Cancel",
87
- variant: "default",
88
- onClick: () => console.log("Cancel transaction")
89
- }
90
- ]}
91
- >
92
- {/* 3-Column Layout: Left section with cards, Timeline on Right */}
93
- <div className="flex flex-col lg:flex-row items-start gap-6">
94
- {/* Left Section: Transaction cards */}
95
- <div className="flex-1 space-y-6">
96
- {/* Transaction Information */}
97
- <FormCard title="Details">
98
- <div className="grid grid-cols-1 lg:grid-cols-2 gap-x-8 gap-y-4">
99
- <InfoField
100
- label="Transaction Type"
101
- value={<Badge variant="outline">{transaction.transactionType}</Badge>}
102
- layout="horizontal"
103
- />
104
- <InfoField
105
- label="Status"
106
- value={<Badge variant={getStatusVariant(transaction.status)}>{transaction.status}</Badge>}
107
- layout="horizontal"
108
- />
109
- <InfoField
110
- label="Amount"
111
- value={
112
- <span className={cn(
113
- "font-semibold",
114
- transaction.amount < 0 ? "text-destructive" : "text-success"
115
- )}>
116
- {formatCurrency(transaction.amount)}
117
- </span>
118
- }
119
- layout="horizontal"
120
- />
121
- <InfoField
122
- label="Account Number"
123
- value={
124
- <Button variant="link" className="h-auto p-0 text-sm">
125
- {transaction.accountNumber}
126
- </Button>
127
- }
128
- layout="horizontal"
129
- />
130
- <InfoField
131
- label="Customer Name"
132
- value={
133
- <Button variant="link" className="h-auto p-0 text-sm">
134
- {transaction.customer}
135
- </Button>
136
- }
137
- layout="horizontal"
138
- />
139
- <InfoField label="Description" value={transaction.description} layout="horizontal" />
140
- <InfoField
141
- label="Direction"
142
- value={transaction.amount < 0 ? "DEBIT" : "CREDIT"}
143
- layout="horizontal"
144
- />
145
- <InfoField label="Counterparty Name" value={transaction.counterparty} layout="horizontal" />
146
- <InfoField label="Post Date" value={transaction.created.split(' ')[0]} layout="horizontal" />
147
- <InfoField label="OFAC ID" value={<Button variant="link" className="h-auto p-0 text-sm">18323208</Button>} layout="horizontal" />
148
- <InfoField label="Original Filename" value="-" layout="horizontal" />
149
- <InfoField label="Loaded From File" value="iso21130757012764355B7.xml.126534273Q299" layout="horizontal" />
150
- <InfoField label="Payment ID" value={transaction.id} layout="horizontal" />
151
- <InfoField label="Linked Payment ID" value="-" layout="horizontal" />
152
- <InfoField label="Is Inbound" value="True" layout="horizontal" />
153
- <InfoField label="Pending until Date" value="-" layout="horizontal" />
154
- <InfoField label="Processing Status" value="Sent" layout="horizontal" />
155
- <InfoField label="Further Credit To" value="-" layout="horizontal" />
156
- <InfoField label="Balance Available Date" value="-" layout="horizontal" />
157
- <InfoField label="Requester Username" value="-" layout="horizontal" />
158
- <InfoField label="Requester IP Address" value="-" layout="horizontal" />
159
- <InfoField label="Settlement Filename" value="-" layout="horizontal" />
160
- <InfoField label="Duplicate of Payment ID" value="-" layout="horizontal" />
161
- <InfoField
162
- label="Product ID"
163
- value={<Button variant="link" className="h-auto p-0 text-sm">130</Button>}
164
- layout="horizontal"
165
- />
166
- <InfoField label="Returned In File" value="-" layout="horizontal" />
167
- <InfoField label="Alerts" value="-" layout="horizontal" />
168
- </div>
169
- </FormCard>
170
-
171
- {/* ACH or Wire Details */}
172
- {isACHTransfer && transaction.achDetails && (
173
- <ACHDetailsSection data={transaction.achDetails} />
174
- )}
175
-
176
- {isWireTransfer && transaction.wireDetails && (
177
- <WireDetailsSection data={transaction.wireDetails} />
178
- )}
179
- </div>
180
-
181
- {/* Right Section: Timeline Column */}
182
- <div className="lg:w-64">
183
- <FormCard title="Transaction Timeline">
184
- <AlertTimeline events={mockTransactionTimeline} />
185
- </FormCard>
186
- </div>
187
- </div>
188
- </PageLayout>
189
- )
190
- }
191
-
192
- export default TransactionDetail
package/src/vite-env.d.ts DELETED
@@ -1 +0,0 @@
1
- /// <reference types="vite/client" />
@@ -1,124 +0,0 @@
1
- import type { Config } from "tailwindcss";
2
-
3
- export default {
4
- darkMode: ["class"],
5
- content: [
6
- "./pages/**/*.{ts,tsx}",
7
- "./components/**/*.{ts,tsx}",
8
- "./app/**/*.{ts,tsx}",
9
- "./src/**/*.{ts,tsx}",
10
- ],
11
- prefix: "",
12
- theme: {
13
- container: {
14
- center: true,
15
- padding: '2rem',
16
- screens: {
17
- '2xl': '1400px'
18
- }
19
- },
20
- extend: {
21
- colors: {
22
- border: 'hsl(var(--border))',
23
- input: 'hsl(var(--input))',
24
- ring: 'hsl(var(--ring))',
25
- background: 'hsl(var(--background))',
26
- foreground: 'hsl(var(--foreground))',
27
- primary: {
28
- DEFAULT: 'hsl(var(--primary))',
29
- foreground: 'hsl(var(--primary-foreground))',
30
- glow: 'hsl(var(--primary-glow))'
31
- },
32
- secondary: {
33
- DEFAULT: 'hsl(var(--secondary))',
34
- foreground: 'hsl(var(--secondary-foreground))'
35
- },
36
- destructive: {
37
- DEFAULT: 'hsl(var(--destructive))',
38
- foreground: 'hsl(var(--destructive-foreground))'
39
- },
40
- success: {
41
- DEFAULT: 'hsl(var(--success))',
42
- foreground: 'hsl(var(--success-foreground))'
43
- },
44
- warning: {
45
- DEFAULT: 'hsl(var(--warning))',
46
- foreground: 'hsl(var(--warning-foreground))'
47
- },
48
- muted: {
49
- DEFAULT: 'hsl(var(--muted))',
50
- foreground: 'hsl(var(--muted-foreground))'
51
- },
52
- accent: {
53
- DEFAULT: 'hsl(var(--accent))',
54
- foreground: 'hsl(var(--accent-foreground))'
55
- },
56
- popover: {
57
- DEFAULT: 'hsl(var(--popover))',
58
- foreground: 'hsl(var(--popover-foreground))'
59
- },
60
- card: {
61
- DEFAULT: 'hsl(var(--card))',
62
- foreground: 'hsl(var(--card-foreground))'
63
- },
64
- form: {
65
- background: 'hsl(var(--form-background))',
66
- border: 'hsl(var(--form-border))',
67
- 'border-focus': 'hsl(var(--form-border-focus))',
68
- 'border-error': 'hsl(var(--form-border-error))',
69
- 'border-success': 'hsl(var(--form-border-success))'
70
- },
71
- sidebar: {
72
- DEFAULT: 'hsl(var(--sidebar-background))',
73
- foreground: 'hsl(var(--sidebar-foreground))',
74
- primary: 'hsl(var(--sidebar-primary))',
75
- 'primary-foreground': 'hsl(var(--sidebar-primary-foreground))',
76
- accent: 'hsl(var(--sidebar-accent))',
77
- 'accent-foreground': 'hsl(var(--sidebar-accent-foreground))',
78
- border: 'hsl(var(--sidebar-border))',
79
- ring: 'hsl(var(--sidebar-ring))'
80
- }
81
- },
82
- borderRadius: {
83
- lg: 'var(--radius)',
84
- md: 'calc(var(--radius) - 2px)',
85
- sm: 'calc(var(--radius) - 4px)'
86
- },
87
- keyframes: {
88
- 'accordion-down': {
89
- from: {
90
- height: '0'
91
- },
92
- to: {
93
- height: 'var(--radix-accordion-content-height)'
94
- }
95
- },
96
- 'accordion-up': {
97
- from: {
98
- height: 'var(--radix-accordion-content-height)'
99
- },
100
- to: {
101
- height: '0'
102
- }
103
- }
104
- },
105
- animation: {
106
- 'accordion-down': 'accordion-down 0.2s ease-out',
107
- 'accordion-up': 'accordion-up 0.2s ease-out'
108
- },
109
- backgroundImage: {
110
- 'gradient-primary': 'var(--gradient-primary)',
111
- 'gradient-subtle': 'var(--gradient-subtle)'
112
- },
113
- boxShadow: {
114
- 'form': 'var(--shadow-form)',
115
- 'form-focus': 'var(--shadow-form-focus)',
116
- 'form-error': 'var(--shadow-form-error)'
117
- },
118
- transitionProperty: {
119
- 'form': 'var(--transition-form)'
120
- }
121
- }
122
- },
123
- plugins: [require("tailwindcss-animate")],
124
- } satisfies Config;
package/tsconfig.app.json DELETED
@@ -1,30 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2020",
4
- "useDefineForClassFields": true,
5
- "lib": ["ES2020", "DOM", "DOM.Iterable"],
6
- "module": "ESNext",
7
- "skipLibCheck": true,
8
-
9
- /* Bundler mode */
10
- "moduleResolution": "bundler",
11
- "allowImportingTsExtensions": true,
12
- "isolatedModules": true,
13
- "moduleDetection": "force",
14
- "noEmit": true,
15
- "jsx": "react-jsx",
16
-
17
- /* Linting */
18
- "strict": false,
19
- "noUnusedLocals": false,
20
- "noUnusedParameters": false,
21
- "noImplicitAny": false,
22
- "noFallthroughCasesInSwitch": false,
23
-
24
- "baseUrl": ".",
25
- "paths": {
26
- "@/*": ["./src/*"]
27
- }
28
- },
29
- "include": ["src"]
30
- }
package/tsconfig.json DELETED
@@ -1,19 +0,0 @@
1
- {
2
- "files": [],
3
- "references": [
4
- { "path": "./tsconfig.app.json" },
5
- { "path": "./tsconfig.node.json" }
6
- ],
7
- "compilerOptions": {
8
- "baseUrl": ".",
9
- "paths": {
10
- "@/*": ["./src/*"]
11
- },
12
- "noImplicitAny": false,
13
- "noUnusedParameters": false,
14
- "skipLibCheck": true,
15
- "allowJs": true,
16
- "noUnusedLocals": false,
17
- "strictNullChecks": false
18
- }
19
- }
@@ -1,22 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2022",
4
- "lib": ["ES2023"],
5
- "module": "ESNext",
6
- "skipLibCheck": true,
7
-
8
- /* Bundler mode */
9
- "moduleResolution": "bundler",
10
- "allowImportingTsExtensions": true,
11
- "isolatedModules": true,
12
- "moduleDetection": "force",
13
- "noEmit": true,
14
-
15
- /* Linting */
16
- "strict": true,
17
- "noUnusedLocals": false,
18
- "noUnusedParameters": false,
19
- "noFallthroughCasesInSwitch": true
20
- },
21
- "include": ["vite.config.ts"]
22
- }
package/vite.config.ts DELETED
@@ -1,22 +0,0 @@
1
- import { defineConfig } from "vite";
2
- import react from "@vitejs/plugin-react-swc";
3
- import path from "path";
4
- import { componentTagger } from "lovable-tagger";
5
-
6
- // https://vitejs.dev/config/
7
- export default defineConfig(({ mode }) => ({
8
- server: {
9
- host: "::",
10
- port: 8080,
11
- },
12
- plugins: [
13
- react(),
14
- mode === 'development' &&
15
- componentTagger(),
16
- ].filter(Boolean),
17
- resolve: {
18
- alias: {
19
- "@": path.resolve(__dirname, "./src"),
20
- },
21
- },
22
- }));