goobs-frontend 0.8.30 → 0.9.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/README.md CHANGED
@@ -1,18 +1,22 @@
1
1
  # goobs-frontend
2
2
 
3
- goobs-frontend, previously known as goobs-repo, is a comprehensive React-based UI library built on Material-UI. It offers a wide range of customizable components for building responsive and consistent user interfaces with advanced features like form validation, theming, and code syntax highlighting.
3
+ goobs-frontend, is a React-based UI library built on Material-UI.
4
4
 
5
5
  The NPM repo is available here - https://www.npmjs.com/package/goobs-frontend
6
6
 
7
7
  This entire repository is written in TypeScript, and there is no need for a separate types installation.
8
8
 
9
+ ## Storybook
10
+
11
+ See component design and documentation in Storybook available here - https://storybook.technologiesunlimited.net/
12
+
9
13
  ## Integrating goobs-frontend with Next.js
10
14
 
11
- This guide explains how to integrate the goobs-frontend package with a Next.js project.
15
+ This guide explains how to integrate goobs-frontend with a Next.js project
12
16
 
13
17
  **Step 1: Install the project**
14
18
 
15
- In your Next.js project directory, run the following command to install goobs-frontend:
19
+ In your Next.js project directory, run the following command to install goobs-frontend
16
20
 
17
21
  #### npm
18
22
 
@@ -28,364 +32,372 @@ yarn add goobs-frontend
28
32
 
29
33
  **Step 2: Update next.config.js**
30
34
 
31
- We are using SWC; here is the minimum recommended configuration for next.config.js using our repository:
35
+ You must then transpile the package in next.config
32
36
 
33
37
  ```javascript
34
38
  /** @type {import('next').NextConfig} */
35
39
 
36
40
  const nextConfig = {
37
- reactStrictMode: true,
38
- swcMinify: true,
39
41
  transpilePackages: ['goobs-frontend'],
40
42
  }
41
43
 
42
44
  export default nextConfig
43
45
  ```
44
46
 
45
- You can see more information on how we got here and how it was incorrectly done in previous versions via - https://github.com/goobz22/goobs-frontend/discussions/21
46
-
47
- **Step 3: Implement into project and build to confirm functionality**
48
-
49
- All components should be successfully building as of this release and are being used within production in one way or another.
50
-
51
- This README update, along with the following documentation updates, are all part of a push to better document the usage of this project.
47
+ After this is done, you can import components from goobs-frontend into your project.
52
48
 
53
49
  ## Components
54
50
 
55
- The following components are available within goobs-frontend. Each component has a dedicated wiki page with detailed documentation, usage examples, and best practices.
51
+ Below is a high-level overview of all components now available in goobs-frontend. For full usage instructions, code snippets, and best practices, see our Storybook.
56
52
 
57
53
  ### Accordion
58
54
 
59
- The Accordion component provides an expandable panel for organizing and presenting content in a collapsible manner.
55
+ Description: A collapsible container for toggling expanded/collapsed content.
56
+
57
+ Features:
60
58
 
61
- [Accordion Wiki](https://github.com/goobz22/goobs-frontend/wiki/Accordion)
59
+ Built on Material-UI’s Accordion.
60
+
61
+ Combines Accordion, AccordionSummary, and AccordionDetails for a complete layout.
62
62
 
63
63
  ### Button
64
64
 
65
- The Button component is a customizable button with support for icons, variants, and styling props. It provides a flexible and reusable way to create buttons in your application.
65
+ Description: A Material-UI Button wrapper with advanced customization—supporting icons, text alignment, and coloring.
66
+
67
+ Features: Flexible icon positioning (left, right, above).
66
68
 
67
- [Button Wiki](https://github.com/goobz22/goobs-frontend/wiki/Button)
69
+ Configurable background color, text color, dimensions, etc.
68
70
 
69
71
  ### Card
70
72
 
71
- The Card component offers various card layouts for displaying content, including product cards, pricing cards, and more. It supports different variants such as default, inventory, pricing summary, detailed pricing summary, product, and product summary.
73
+ Description: A versatile container with multiple variants (inventory, pricing, product, tasks, etc.).
74
+
75
+ Features: Displays images, stepper integration, and optional breadcrumbs.
72
76
 
73
- [Card Wiki](https://github.com/goobz22/goobs-frontend/wiki/Card)
77
+ Ideal for product listings, tasks, or advanced pricing scenarios.
74
78
 
75
79
  ### CodeCopy
76
80
 
77
- The CodeCopy component renders a code block with syntax highlighting and a copy-to-clipboard functionality.
81
+ Description: Renders syntax-highlighted code blocks and offers a single-click “Copy to clipboard button.
82
+
83
+ Features: Uses highlight.js for syntax highlighting.
84
+
85
+ Great for docs, tutorials, or developer portals.
78
86
 
79
- [CodeCopy Wiki](https://github.com/goobz22/goobs-frontend/wiki/CodeCopy)
87
+ ### ConfirmationCodeInputs
80
88
 
81
- ### ConfirmationCodeInput
89
+ Description: An OTP-style multi-digit input.
82
90
 
83
- The ConfirmationCodeInput component provides an input field for entering confirmation codes, often used in two-factor authentication scenarios.
91
+ Features: Automatically moves focus between fields, numeric-only.
84
92
 
85
- [ConfirmationCodeInput Wiki](https://github.com/goobz22/goobs-frontend/wiki/ConfirmationCodeInput)
93
+ Visual valid/invalid status indicator.
94
+
95
+ ### ComplexTextEditor
96
+
97
+ Description: A text editor capable of switching between modes (simple, markdown, or rich text) via a single toolbar.
98
+
99
+ Features: Uses sub-editors (SimpleEditor, RichTextEditor, MarkdownEditor).
100
+
101
+ Accepts label, min-rows, error text, etc.
86
102
 
87
103
  ### Content
88
104
 
89
- The Content component is a flexible container for rendering various types of content within your application. It supports different content types including typography, radio groups, confirmation code inputs, links, buttons, images, pricing tables, steppers, transfer lists, cards, code copy blocks, text fields, date fields, dropdowns, increment number fields, searchbars, number fields, password fields, and QR codes.
105
+ Description: A catch-all container that can render multiple typed sub-components (typography, images, forms, etc.).
106
+
107
+ Features: Allows dynamic rendering of sub-components in a structured layout.
108
+
109
+ ### CustomToolbar
110
+
111
+ Description: A flexible toolbar with optional buttons, search bar, dropdowns, and management actions.
112
+
113
+ Features:
114
+
115
+ - Left: Renders an optional vertical divider and an array of buttons.
116
+ - LeftCenter: Typically a search bar.
117
+ - Right: Renders one or more Dropdown components.
118
+ - RightCenter: Manages selected rows or data actions (duplicate, delete, etc.).
119
+
120
+ ### DataGrid
90
121
 
91
- [Content Wiki](https://github.com/goobz22/goobs-frontend/wiki/Content)
122
+ Description: A table/grid with row selection, search, pagination, and advanced row management (duplicate, delete, etc.).
123
+
124
+ Features:
125
+
126
+ - Built-in search integration.
127
+ - Custom toolbars, footers, and row selection.
128
+ - Single or multiple row selection with checkboxes.
129
+
130
+ ### DataGridCheckbox
131
+
132
+ Description: A specialized Checkbox for data grid usage, logging click/change events.
133
+
134
+ Features:
135
+
136
+ - Styled for grid contexts.
137
+ - Allows debug logging or analytics.
92
138
 
93
139
  ### DateField
94
140
 
95
- The DateField component provides a date picker input field with customizable styling options.
141
+ Description: A date picker that supports both manual text entry and a pop-up calendar (via react-datepicker).
142
+
143
+ Features:
144
+
145
+ - Arrow-key increments for day/month/year.
146
+ - Partial manual editing (e.g., only day or month).
147
+
148
+ ### Dialog and Popup
149
+
150
+ Description: Modal components for various form-based interactions.
96
151
 
97
- [DateField Wiki](https://github.com/goobz22/goobs-frontend/wiki/DateField)
152
+ Features:
153
+
154
+ - Popup for simpler modals; Dialog for more complex or multi-step forms.
155
+ - Both can integrate with form controls or custom actions.
98
156
 
99
157
  ### Dropdown
100
158
 
101
- The Dropdown component offers a customizable select input with various styling options.
159
+ Description: A select input with advanced styling (label above or on the outline) and typed options.
160
+
161
+ Features:
162
+
163
+ - Allows custom color overrides for background, outline, and font.
164
+ - Works well in forms or toolbars.
165
+
166
+ ### FormDataGrid
167
+
168
+ Description: A specialized DataGrid for form-based usage.
102
169
 
103
- [Dropdown Wiki](https://github.com/goobz22/goobs-frontend/wiki/Dropdown)
170
+ Features:
171
+
172
+ - Possibly merges form validation with row-based data editing.
173
+ - Accepts typed definitions for columns, validation, or data transformations.
104
174
 
105
175
  ### Grid
106
176
 
107
- The Grid component is a highly customizable and flexible grid system built with React and Material-UI. It allows you to create complex grid layouts with ease, providing a wide range of configuration options for grids, rows, columns, and cells.
177
+ Description: A flexible grid system for laying out UI components, wrapping Material-UI’s Grid.
178
+
179
+ Features:
108
180
 
109
- [Grid Wiki](https://github.com/goobz22/goobs-frontend/wiki/Grid)
181
+ - Row/column/cell configurations with advanced spacing and alignment.
182
+ - Perfect for building complex multi-column forms or pages.
110
183
 
111
184
  ### IncrementNumberField
112
185
 
113
- The IncrementNumberField component provides an input field for numeric values with increment and decrement buttons.
186
+ Description: A numeric input with dedicated increment/decrement buttons.
187
+
188
+ Features:
189
+
190
+ - Restricts input to digits.
191
+ - Configurable label, background, outline, and text color.
192
+
193
+ ### MultiSelectChip
114
194
 
115
- [IncrementNumberField Wiki](https://github.com/goobz22/goobs-frontend/wiki/IncrementNumberField)
195
+ Description: A multiple-selection dropdown that displays selected items as chips.
116
196
 
117
- ### Nav
197
+ Features:
118
198
 
119
- The Nav component provides navigation functionality, including both horizontal and vertical navigation options.
199
+ - Easy to handle multiple values.
200
+ - Optional background, font, and label styling.
120
201
 
121
- [Nav Wiki](https://github.com/goobz22/goobs-frontend/wiki/Nav)
202
+ ### Nav (Vertical)
203
+
204
+ Description: A vertical navigation component with expandable main/sub nav items, optional search, etc.
205
+
206
+ Features:
207
+
208
+ - Supports multiple levels: mainNav, subNav, and viewNav.
209
+ - Collapsible sections and optional route-based or onClick triggers.
122
210
 
123
211
  ### NumberField
124
212
 
125
- The NumberField component offers an input field specifically designed for numeric input with optional minimum and maximum value constraints.
213
+ Description: A numeric text field with optional min/max constraints.
126
214
 
127
- [NumberField Wiki](https://github.com/goobz22/goobs-frontend/wiki/NumberField)
215
+ Features:
216
+
217
+ - Restricts non-numeric input.
218
+ - Auto-corrects values outside allowable ranges.
128
219
 
129
220
  ### PasswordField
130
221
 
131
- The PasswordField component provides a secure input field for password entry with a show/hide password toggle.
222
+ Description: A text field for secure passwords, featuring a show/hide toggle icon.
223
+
224
+ Features:
132
225
 
133
- [PasswordField Wiki](https://github.com/goobz22/goobs-frontend/wiki/PasswordField)
226
+ - Color overrides for background, outline, text.
227
+ - Eye icon toggles between hidden and visible text.
134
228
 
135
229
  ### PhoneNumberField
136
230
 
137
- The PhoneNumberField component offers an input field specifically formatted for phone number entry.
231
+ Description: A phone number input that auto-formats values (e.g., +1-xxx-xxx-xxxx).
232
+
233
+ Features:
138
234
 
139
- [PhoneNumberField Wiki](https://github.com/goobz22/goobs-frontend/wiki/PhoneNumberField)
235
+ - Removes non-digit characters, ensures +1.
236
+ - Great for US-based phone inputs, can be adapted for international usage.
140
237
 
141
238
  ### PricingTable
142
239
 
143
- The PricingTable component renders a customizable pricing table for displaying product or service pricing information.
240
+ Description: A tabular display of multi-tier pricing data, toggling monthly/annual costs, etc.
241
+
242
+ Features:
243
+
244
+ - Compare multiple packages.
245
+ - Checkmark-based feature lists.
246
+ - Integrated CTA buttons, easily link to a router or checkout flow.
247
+
248
+ ### ProjectBoard
249
+
250
+ Description: A kanban-like board for tasks, with drag-and-drop columns, search, and sub-forms (AddTask, ShowTask).
251
+
252
+ Features:
144
253
 
145
- [PricingTable Wiki](https://github.com/goobz22/goobs-frontend/wiki/PricingTable)
254
+ - Handles status/sub-status or severity-based columns.
255
+ - Built-in search, comment, revision history, assigned user, etc.
146
256
 
147
- ### QRCode
257
+ ### QRCodeComponent
148
258
 
149
- The QRCode component generates and displays QR codes based on the provided value.
259
+ Description: Dynamically generates a QR code from TOTP secrets (or any string).
150
260
 
151
- [QRCode Wiki](https://github.com/goobz22/goobs-frontend/wiki/QRCode)
261
+ Features:
262
+
263
+ - Integrates with otplib for generating or verifying TOTP secrets.
264
+ - Accepts size, optional title, and callback for the generated secret.
152
265
 
153
266
  ### RadioGroup
154
267
 
155
- The RadioGroup component renders a group of radio buttons for selecting a single option from multiple choices.
268
+ Description: A group of radio buttons for single-option selection, built on Material-UI’s RadioGroup.
269
+
270
+ Features:
271
+
272
+ - Accepts typed RadioOption for label customizations.
273
+ - Includes an optional overall label with custom font variants/colors.
274
+
275
+ ### RichTextEditor
276
+
277
+ Description: A full WYSIWYG editor with optional Markdown toggles, link insertion, bold/italic, etc.
278
+
279
+ Features:
280
+
281
+ - Built on Slate or similar.
282
+ - Separate toolbars for Rich Text vs. Markdown modes.
283
+
284
+ ### SearchableDropdown
285
+
286
+ Description: A dropdown with real-time filtering, based on Material-UI’s Autocomplete.
287
+
288
+ Features:
156
289
 
157
- [RadioGroup Wiki](https://github.com/goobz22/goobs-frontend/wiki/RadioGroup)
290
+ - Additional attributes for each option (attribute1, attribute2).
291
+ - Flexible color/label styling.
158
292
 
159
293
  ### Searchbar
160
294
 
161
- The Searchbar component provides a search input field with customizable styling options.
295
+ Description: A stylized search input field, typically placed in a toolbar or nav.
162
296
 
163
- [Searchbar Wiki](https://github.com/goobz22/goobs-frontend/wiki/Searchbar)
297
+ Features:
164
298
 
165
- ### Stepper
299
+ - Icon, label positioning, and color customization.
300
+ - Easy onChange event to handle filtering or searching.
166
301
 
167
- The Stepper component provides a step-by-step interface for guiding users through a process or workflow.
302
+ ### ShowTask
168
303
 
169
- [Stepper Wiki](https://github.com/goobz22/goobs-frontend/wiki/Stepper)
304
+ Description: A modal-based component that displays a single task, its fields, and a comment section with revision history.
305
+
306
+ Features:
307
+
308
+ - Edits or adds comments, optionally restricted to the original commenter.
309
+ - Adjust sub-status, assigned user, next-action date, etc.
310
+
311
+ ### Stepper (CustomStepper)
312
+
313
+ Description: A multi-step progress indicator for processes or wizards.
314
+
315
+ Features:
316
+
317
+ - Supports “completed”, “active”, “error”, or “inactive” steps.
318
+ - Displays optional step descriptions or links.
319
+ - Step icons can be customized (check, lock, error, etc.).
320
+
321
+ ### StyledTooltip
322
+
323
+ Description: A Material-UI Tooltip extended with custom color, offsets, and arrow placement.
324
+
325
+ Features:
326
+
327
+ - Override background color, text color, arrow color.
328
+ - Precisely position via offset props.
329
+
330
+ ### Tabs (Horizontal)
331
+
332
+ Description: A horizontal tab navigation bar built with Material-UI’s Tabs.
333
+
334
+ Features:
335
+
336
+ - Route-based (trigger='route') or custom callback (trigger='onClick') tab switches.
337
+ - Supports alignment (left, center, right, justify) and optional borders.
170
338
 
171
339
  ### TextField
172
340
 
173
- The TextField component offers a customizable text input field with various styling and behavior options.
341
+ Description: A Material-UI TextField wrapper with advanced color and label position overrides, plus optional end adornments.
342
+
343
+ Features:
174
344
 
175
- [TextField Wiki](https://github.com/goobz22/goobs-frontend/wiki/TextField)
345
+ - Label can shrink onto or above the outline for a unique UI.
346
+ - Extended color styling for background, outline, font, placeholder, etc.
176
347
 
177
348
  ### Toolbar
178
349
 
179
- The Toolbar component offers a customizable toolbar for use in various UI scenarios.
350
+ Description: A flexible container for actions, often used atop tables or pages for filtering, button actions, and more.
180
351
 
181
- [Toolbar Wiki](https://github.com/goobz22/goobs-frontend/wiki/Toolbar)
352
+ Features:
353
+
354
+ - Extensible subcomponents (Left, LeftCenter, Right, RightCenter).
355
+ - Adapts layout based on screen size (desktop, tablet, mobile).
182
356
 
183
357
  ### Tooltip
184
358
 
185
- The Tooltip component is a customizable and styled version of the Material-UI Tooltip component. It provides a way to display informative text when users hover over, focus on, or tap an element.
359
+ Description: A styled tooltip (see StyledTooltip).
360
+
361
+ Features:
186
362
 
187
- [Tooltip Wiki](https://github.com/goobz22/goobs-frontend/wiki/Tooltip)
363
+ - Enhanced theming, offsets, arrow customization.
364
+ - Works with icons, text, or anything that needs a hover tooltip.
188
365
 
189
366
  ### TransferList
190
367
 
191
- The TransferList component provides a dual-list interface for transferring items between two lists.
368
+ Description: A dual-list component for transferring items between left and right.
192
369
 
193
- [TransferList Wiki](https://github.com/goobz22/goobs-frontend/wiki/TransferList)
370
+ Features:
194
371
 
195
- ### Typography
372
+ - “Move selected” or “Move all” controls.
373
+ - Single or multiple selection variants.
374
+ - Can pair with dropdowns for multi-collection contexts.
196
375
 
197
- The Typography component is a text component for rendering customizable typography with support for different font families, variants, and colors.
198
-
199
- [Typography Wiki](https://github.com/goobz22/goobs-frontend/wiki/Typography)
200
-
201
- ## Usage
202
-
203
- To use the components, types, and utilities in your project, you can import them from the `goobs-frontend` package. Here's a comprehensive list of all available imports:
204
-
205
- ```typescript
206
- import {
207
- // Components
208
- CustomButton,
209
- CustomGrid,
210
- Typography,
211
- ConfirmationCodeInput,
212
- RadioGroup,
213
- PopupForm,
214
- ContentSection,
215
- Accordion,
216
- AccordionSummary,
217
- AccordionDetails,
218
- Card,
219
- CodeCopy,
220
- Nav,
221
- PricingTable,
222
- CustomStepper,
223
- CustomToolbar,
224
- TransferList,
225
- StyledTooltip,
226
- QRCodeComponent,
227
- DateField,
228
- Dropdown,
229
- IncrementNumberField,
230
- NumberField,
231
- PasswordField,
232
- PhoneNumberField,
233
- Searchbar,
234
- TextField,
235
-
236
- // Types
237
- CustomButtonProps,
238
- CustomGridProps,
239
- Alignment,
240
- BorderProp,
241
- columnconfig,
242
- gridconfig,
243
- cellconfig,
244
- FontFamily,
245
- TypographyVariant,
246
- TypographyProps,
247
- ConfirmationCodeInputsProps,
248
- RadioOption,
249
- RadioGroupProps,
250
- PopupFormProps,
251
- ContentSectionProps,
252
- CardProps,
253
- CodeCopyProps,
254
- NavProps,
255
- PricingProps,
256
- CustomStepperProps,
257
- ToolbarProps,
258
- TransferListProps,
259
- CustomTooltipProps,
260
- QRCodeProps,
261
- DateFieldProps,
262
- DropdownProps,
263
- IncrementNumberFieldProps,
264
- NumberFieldProps,
265
- PasswordFieldProps,
266
- PhoneNumberFieldProps,
267
- SearchbarProps,
268
- TextFieldProps,
269
-
270
- // Extended Types
271
- ExtendedButtonProps,
272
- ExtendedTypographyProps,
273
- ExtendedTextFieldProps,
274
- ExtendedQRCodeProps,
275
- ExtendedDropdownProps,
276
- ExtendedDateFieldProps,
277
- ExtendedNumberFieldProps,
278
- ExtendedIncrementNumberFieldProps,
279
- ExtendedPasswordFieldProps,
280
- ExtendedSearchbarProps,
281
- ExtendedCodeCopyProps,
282
- ExtendedCardProps,
283
- ExtendedTransferListProps,
284
- ExtendedStepperProps,
285
- ExtendedPricingProps,
286
- ExtendedImageProps,
287
- ExtendedConfirmationCodeInputsProps,
288
- ExtendedRadioGroupProps,
289
-
290
- // Component Props Types
291
- TypographyComponentProps,
292
- ConfirmationCodeInputProps,
293
- RadioGroupComponentProps,
294
- PopupFormComponentProps,
295
- ContentSectionComponentProps,
296
- AccordionProps,
297
- AccordionSummaryProps,
298
- AccordionDetailsProps,
299
- CardComponentProps,
300
- CodeCopyComponentProps,
301
- NavComponentProps,
302
- PricingTableComponentProps,
303
- CustomStepperComponentProps,
304
- CustomToolbarComponentProps,
305
- TransferListComponentProps,
306
- StyledTooltipComponentProps,
307
-
308
- // Styles
309
- formContainerStyle,
310
-
311
- // Animations
312
- Animation,
313
-
314
- // Colors
315
- moss,
316
- aqua,
317
- madder,
318
- woad,
319
- marine,
320
- pansy,
321
- stainlessSteel,
322
- coal,
323
- ocean,
324
- sky,
325
- salmon,
326
- lightning,
327
- sage,
328
- lilac,
329
- gunpowder,
330
- lightMadder,
331
- black,
332
- white,
333
- none,
334
- semiTransparentWhite,
335
- semiTransparentBlack,
336
- red,
337
- green,
338
- greyborder,
339
-
340
- // Typography
341
- arapeyh1,
342
- arapeyh2,
343
- arapeyh3,
344
- arapeyh4,
345
- arapeyh5,
346
- arapeyh6,
347
- arapeyparagraph,
348
- interh1,
349
- interh2,
350
- interh3,
351
- interh4,
352
- interh5,
353
- interh6,
354
- interparagraph,
355
- interhelperheader,
356
- interhelperfooter,
357
- merrih1,
358
- merrih2,
359
- merrih3,
360
- merrih4,
361
- merrih5,
362
- merrih6,
363
- merriparagraph,
364
- merrihelperfooter,
365
- } from 'goobs-frontend'
366
- ```
376
+ ### Typography
367
377
 
368
- Please refer to the individual component and utility files for more details on their usage and available props.
378
+ Description: A text component supporting multiple font families (Arapey, Inter, Merriweather) and variant styles.
369
379
 
370
- ## License
380
+ Features:
371
381
 
372
- This project is licensed under the MIT License.
382
+ - Additional variants like paragraph, helperheader, helperfooter.
383
+ - Flexible coloring and consistent text sizing across your app.
373
384
 
374
- ## Feedback and Contributions
385
+ ### Feedback and Contributions
375
386
 
376
- We welcome feedback, bug reports, and contributions. If you encounter any issues or have feature requests, please open an issue on the [GitHub repository](https://github.com/goobz22/goobs-frontend/issues).
387
+ We welcome contributions of all kinds:
377
388
 
378
- If you would like to contribute to the project, please fork the repository and submit a pull request with your changes.
389
+ - Issues: Report bugs or request features via GitHub Issues.
390
+ - Pull Requests: Fork, create a branch, and open a PR for review.
391
+ - Custom Requests: If you need special features or want these components ported to a different design system, reach out.
379
392
 
380
- If you would like to request this ported over to a different design system, a feature/capability, or more information on this project, please reach out to Matthew Goluba.
393
+ ### License
381
394
 
382
- ## Contact
395
+ goobs-frontend is licensed under the MIT License.
383
396
 
384
- For any questions or inquiries, please contact Matthew Goluba.
397
+ ### Contact
385
398
 
386
- - Email - mkgoluba@technologiesunlimited.net
387
- - LinkedIn - https://www.linkedin.com/in/matthew-goluba/
399
+ For questions, support, or further details, please contact Matthew Goluba
388
400
 
389
- The website is in progress and will be shared here soon.
401
+ Email: mkgoluba@technologiesunlimited.net
390
402
 
391
- Please email for the quickest response.
403
+ Enjoy building with goobs-frontend!
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "goobs-frontend",
3
- "version": "0.8.30",
3
+ "version": "0.9.0",
4
4
  "type": "module",
5
5
  "description": "A comprehensive React-based libary that extends the functionality of Material-UI",
6
6
  "license": "MIT",
@@ -82,42 +82,54 @@
82
82
  },
83
83
  "homepage": "https://github.com/goobz22/goobs-frontend#readme",
84
84
  "keywords": [
85
+ "accordion",
86
+ "button",
87
+ "card",
88
+ "code-copy",
85
89
  "confirmationCodeInput",
86
90
  "confirmationCode",
87
- "radioButton",
88
- "radioGroup",
91
+ "complexeditor",
89
92
  "contentSection",
90
- "reusablePopup",
91
- "next.js",
92
- "material-ui",
93
- "node.js",
94
- "formData",
93
+ "customizable-components",
94
+ "dataGrid",
95
+ "dialog",
96
+ "dropdown",
97
+ "front-end",
95
98
  "form",
96
- "button",
99
+ "formData",
100
+ "formDataGrid",
97
101
  "grid",
98
- "responsive",
99
- "typography",
100
- "button",
101
- "searchbar",
102
- "dropdown",
103
- "complexeditor",
104
- "textfield",
105
- "phonenumber",
106
- "password",
102
+ "incrementNumberField",
103
+ "material-ui",
104
+ "mfa",
105
+ "multiSelectChip",
106
+ "navigation",
107
+ "next.js",
108
+ "node.js",
107
109
  "number",
108
- "card",
110
+ "password",
111
+ "phonenumber",
112
+ "popup",
109
113
  "pricing-table",
110
- "navigation",
111
- "stepper",
112
- "tooltip",
113
- "accordion",
114
- "code-copy",
115
- "customizable-components",
114
+ "projectBoard",
115
+ "qrCode",
116
+ "radioButton",
117
+ "radioGroup",
116
118
  "react-components",
117
- "ui-library",
118
- "front-end",
119
+ "responsive",
119
120
  "responsive-design",
120
- "typescript"
121
+ "searchbar",
122
+ "stepper",
123
+ "storybook",
124
+ "tabs",
125
+ "textField",
126
+ "tooltip",
127
+ "transferList",
128
+ "2fa",
129
+ "two-factor-auth",
130
+ "typescript",
131
+ "typography",
132
+ "ui-library"
121
133
  ],
122
134
  "resolutions": {
123
135
  "string-width": "^4.2.3",
@@ -1,4 +1,5 @@
1
1
  import React from 'react'
2
+
2
3
  import './button.css'
3
4
 
4
5
  export interface ButtonProps {
@@ -22,26 +23,23 @@ export const Button = ({
22
23
  label,
23
24
  ...props
24
25
  }: ButtonProps) => {
25
- // Determine which CSS class to apply
26
26
  const mode = primary
27
27
  ? 'storybook-button--primary'
28
28
  : 'storybook-button--secondary'
29
-
30
- // Use inline styles for background color
31
- const inlineStyles: React.CSSProperties = {
32
- backgroundColor,
33
- }
34
-
35
29
  return (
36
30
  <button
37
31
  type="button"
38
32
  className={['storybook-button', `storybook-button--${size}`, mode].join(
39
33
  ' '
40
34
  )}
41
- style={inlineStyles}
42
35
  {...props}
43
36
  >
44
37
  {label}
38
+ <style>{`
39
+ button {
40
+ background-color: ${backgroundColor};
41
+ }
42
+ `}</style>
45
43
  </button>
46
44
  )
47
45
  }
@@ -17,7 +17,7 @@ type Story = StoryObj<typeof meta>
17
17
 
18
18
  export const LoggedOut: Story = {}
19
19
 
20
- // More on interaction testing: https://storybook.js.org/docs/writing-tests/interaction-testing
20
+ // More on component testing: https://storybook.js.org/docs/writing-tests/component-testing
21
21
  export const LoggedIn: Story = {
22
22
  play: async ({ canvasElement }) => {
23
23
  const canvas = within(canvasElement)
@@ -8,7 +8,7 @@
8
8
  font-family: 'Nunito Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
9
9
  }
10
10
  .storybook-button--primary {
11
- background-color: #1ea7fd;
11
+ background-color: #555ab9;
12
12
  color: white;
13
13
  }
14
14
  .storybook-button--secondary {
@@ -22,8 +22,7 @@
22
22
  }
23
23
 
24
24
  .storybook-page a {
25
- color: #1ea7fd;
26
- text-decoration: none;
25
+ color: inherit;
27
26
  }
28
27
 
29
28
  .storybook-page ul {
@@ -42,7 +41,7 @@
42
41
  border-radius: 1em;
43
42
  background: #e7fdd8;
44
43
  padding: 4px 12px;
45
- color: #66bf3c;
44
+ color: #357a14;
46
45
  font-weight: 700;
47
46
  font-size: 11px;
48
47
  line-height: 12px;