Commit Graph

17 Commits

Author SHA1 Message Date
bwnyasse
8916a4ac49 feat: add feature roadmap and tickets documentation
feat: add detailed feature roadmap and tickets documentation
feat: add roadmap overview diagram
feat: add roadmap p0 mvp diagram
feat: add roadmap p0 complete workflow diagram
feat: update diagrams config to include new roadmap diagrams
feat: add support for syncing source code for ai context
chore: update allowed hashes
feat: add jose.salazar@oloodi.com to iap-users.txt
feat: add fazulilahi@gmail.com to iap-users.txt
feat: add zouantchaw74@gmail.com to iap-users.txt
2026-01-12 11:44:26 -05:00
bwnyasse
5dca852aab feat(scripts): sync mobile prototypes using Flutter
feat(scripts): add mobile client and staff prototype sync
feat(scripts): use FLUTTER_CMD variable for flutter commands
feat(scripts): add FVM support and error handling
feat(scripts): patch vite config for relative paths
chore(scripts): remove .keep files from mobile prototypes
2026-01-10 23:39:06 -05:00
bwnyasse
969bc13939 feat: add documentation for synchronizing prototypes and script to automate the process
This commit introduces a new document explaining how to synchronize visual prototypes and POCs into the monorepo.
It also adds a script to automate the process of building and copying the prototype files into the `internal/launchpad/prototypes/web/` directory.
The documentation explains the benefits of synchronizing prototypes, the prerequisites, and the steps to synchronize them.
The script automates the process of installing dependencies, building the web application, and copying the resulting `dist/` folder into the `internal/launchpad/prototypes/web/` directory.
This allows developers to easily synchronize prototypes and make them available for local preview and deployment.
2026-01-10 23:04:36 -05:00
bwnyasse
d43a14ee0c clean 2026-01-10 21:22:35 -05:00
bwnyasse
b8d156b35a feat(Makefile): restructure Makefile into modular files for better organization and maintainability
feat(Makefile): introduce common.mk for shared variables and environment configuration
feat(Makefile): create web.mk for web frontend-related tasks
feat(Makefile): create launchpad.mk for internal launchpad deployment tasks
feat(Makefile): create mobile.mk for mobile app development tasks
feat(Makefile): create dataconnect.mk for Data Connect management tasks
feat(Makefile): create tools.mk for development tools like git hooks
feat(Makefile): remove admin-web specific tasks and files as the admin console is no longer actively maintained
feat(Makefile): update help command to reflect the new modular structure and available commands
feat(Makefile): remove base44 export workflow as it is no longer relevant
feat(Makefile): remove IAP configuration as it is no longer used
feat(Makefile): remove harness-related tasks as they are no longer relevant

The Makefile has been significantly refactored to improve organization and maintainability. The changes include:

- Modularization: The monolithic Makefile has been split into smaller, more manageable files, each responsible for a specific area of the project (web, launchpad, mobile, dataconnect, tools).
- Common Configuration: Shared variables and environment configuration are now centralized in common.mk.
- Removal of Unused Tasks: Tasks related to the admin console, base44 export workflow, IAP configuration, and API test harness have been removed as they are no longer relevant.
- Updated Help Command: The help command has been updated to reflect the new modular structure and available commands.
- Improved Readability: The modular structure makes the Makefile easier to read and understand.
- Maintainability: The modular structure makes it easier to maintain and update the Makefile.
- Scalability: The modular structure makes it easier to add new tasks and features to the Makefile.
2026-01-10 20:59:18 -05:00
bwnyasse
a5a4eae255 feat(launchpad): implement secure email hashing for access control
This commit introduces a more secure method for verifying user
access to the internal launchpad by hashing email addresses.

- Replaces the plain-text email list with SHA-256 hashes.
- Adds a script to generate these hashes from `iap-users.txt`.
- Updates the launchpad HTML to hash the input email and compare
 it against the `allowed-hashes.json` file.
- Updates Makefile to generate hashes before deploy and serve.
- Adds .keep file for krow_client folder.
2026-01-10 11:48:54 -05:00
Achintha Isuru
850441ca64 feat: Add a comprehensive development plan for new mobile app features and infrastructure, updating issue creation tooling. 2025-12-02 23:49:17 -05:00
bwnyasse
b8739164af feat(Makefile): allow filtering issues by state and label in export-issues target
feat(scripts/export_issues.sh): allow filtering issues by state and label

This commit introduces changes to both the Makefile and the
export_issues.sh script to allow users to filter GitHub issues
by state and label when exporting them to a markdown file.

The Makefile's `export-issues` target now accepts an optional
`ARGS` variable, which is passed to the `export_issues.sh`
script. This allows users to specify command-line arguments
such as `--state=all` or `--label=bug` to filter the issues
being exported.

The `export_issues.sh` script has been updated to parse these
command-line arguments and use them to construct the `gh issue
list` command. The script now supports the `--state` and
`--label` options, which allow users to filter issues by their
state (e.g., open, closed, all) and label, respectively.

These changes provide users with more flexibility in exporting
GitHub issues, allowing them to generate markdown files that
contain only the issues that are relevant to their needs.
2025-11-16 11:01:43 -05:00
bwnyasse
b7477944bc feat: update title and favicon in index.html
This commit updates the title and favicon in the index.html file
to reflect the new KROW branding. It also updates the links in
the internal launchpad to point to the correct environments.

feat: add script to patch index.html during integration

This commit adds a new script to patch the index.html file during
the integration process. This script updates the title and favicon
to reflect the new KROW branding.

style: update badge style in Dashboard.jsx

This commit updates the badge style in the Dashboard.jsx file to
use a span element with rounded corners instead of the Badge
component. This is to match the design of the new KROW branding.
2025-11-14 09:06:30 -05:00
bwnyasse
9bdb250714 feat: add firebase configuration and deployment scripts
This commit introduces Firebase configuration files (.firebaserc,
firebase.json) and updates the Makefile to include deployment
commands for different environments (dev, staging).

The .firebaserc file defines Firebase projects for development and
staging, along with hosting targets.

The firebase.json file configures hosting settings, including
rewrites and ignores. It defines hosting targets for the main app
in dev and staging, and a separate target for an internal launchpad.

The Makefile is updated to include:
- GCP project IDs for dev and staging.
- Environment detection (ENV variable).
- Conditional variables based on the environment (GCP_PROJECT_ID,
 FIREBASE_ALIAS, HOSTING_TARGET).
- Deployment commands for the launchpad and the main app.
- The build command now passes the environment variable to the
 frontend build process.

The internal launchpad is added to firebase/internal-launchpad/index.html
to provide quick access to application URLs and Firebase/GCP
consoles for different environments.

A patch script is added to inject the environment label into the
Dashboard page.

The index.html title is changed to KROW.

These changes enable streamlined deployment and environment
management for the KROW application.
2025-11-14 08:53:00 -05:00
bwnyasse
80cd49deb5 feat(Makefile): install frontend dependencies on dev command
feat(Makefile): patch Layout.jsx queryKey for local development
feat(frontend-web): mock base44 client for local development with role switching
feat(frontend-web): add event assignment modal with conflict detection and bulk assign
feat(frontend-web): add client dashboard with key metrics and quick actions
feat(frontend-web): add layout component with role-based navigation
feat(frontend-web): update various pages to use "@/components" alias
feat(frontend-web): update create event page with ai assistant toggle
feat(frontend-web): update dashboard page with new components
feat(frontend-web): update events page with quick assign popover
feat(frontend-web): update invite vendor page with hover card
feat(frontend-web): update messages page with conversation list and message thread
feat(frontend-web): update operator dashboard page with new components
feat(frontend-web): update partner management page with new components
feat(frontend-web): update permissions page with new components
feat(frontend-web): update procurement dashboard page with new components
feat(frontend-web): update smart vendor onboarding page with new components
feat(frontend-web): update staff directory page with new components
feat(frontend-web): update teams page with new components
feat(frontend-web): update user management page with new components
feat(frontend-web): update vendor compliance page with new components
feat(frontend-web): update main.jsx to include react query provider

feat: add vendor marketplace page
feat: add global import fix to prepare-export script
feat: add patch-layout-query-key script to fix query key
feat: update patch-base44-client script to use a more robust method
2025-11-13 14:56:31 -05:00
bwnyasse
f449272ef0 feat(Makefile): patch base44Client.js for local development
This commit introduces a script to patch the base44Client.js file
within the frontend-web directory. This patch is specifically
designed to facilitate local development by mocking user roles and
authentication, allowing developers to test role-based functionality
without needing a full Base44 SDK setup.

The Makefile is updated to include a call to this script during the
`integrate-export` target, ensuring that the patch is applied
automatically when integrating a fresh Base44 export.

This change streamlines the local development process and enhances
the testing capabilities for role-based features.
2025-11-13 13:44:17 -05:00
bwnyasse
0f9ca9eb15 feat: add git pre-push hook to prevent direct pushes to protected branches
This commit introduces a pre-push Git hook that prevents direct
pushes to the `main` and `dev` branches. This enforces the use of
pull requests for merging changes into these protected branches,
promoting code review and maintaining branch stability.

The changes include:
- Adding a `install-git-hooks` target to the Makefile to symlink
 the pre-push script into the `.git/hooks/` directory.
- Creating the `scripts/git-hooks/pre-push` script that checks the
 target branch and aborts the push if it matches a protected branch.
- Updating the `CONTRIBUTING.md` file to instruct developers to
 install the Git hooks after setting up their development
 environment.
2025-11-13 11:44:01 -05:00
bwnyasse
6540d01175 feat: add SR&ED tracking and project management tools
This commit introduces several new files and updates to support
SR&ED tracking and project management:

- Adds a template for SR&ED tasks to standardize issue creation.
- Adds a Makefile command to set up GitHub labels from a YAML file.
- Adds a Makefile command to export SR&ED-eligible issues to a
 Markdown file.
- Adds a Makefile command to create issues from a file.
- Adds documentation for SR&ED tracking and development
 conventions.
- Adds a YAML file to define GitHub labels.
- Adds scripts to set up GitHub labels, export issues, and create
 issues from a file.
- Updates the project plan to include SR&ED considerations.

These changes aim to improve project organization, facilitate
SR&ED claims, and streamline development workflows.
2025-11-13 11:33:52 -05:00
bwnyasse
554dc9f9e3 feat: Initialize monorepo structure and comprehensive documentation
This commit establishes the new monorepo architecture for the KROW Workforce platform.

Key changes include:
- Reorganized project into `frontend-web`, `mobile-apps`, `firebase`, `scripts`, and `secrets` directories.
- Updated `Makefile` to support the new monorepo layout and automate Base44 export integration.
- Fixed `scripts/prepare-export.js` for ES module compatibility and global component import resolution.
- Created and updated `CONTRIBUTING.md` for developer onboarding.
- Restructured, renamed, and translated all `docs/` files for clarity and consistency.
- Implemented an interactive internal launchpad with diagram viewing capabilities.
- Configured base Firebase project files (`firebase.json`, security rules).
- Updated `README.md` to reflect the new project structure and documentation overview.
2025-11-12 12:50:55 -05:00
bwnyasse
7cd93465bc feat(scripts/prepare-export.js): convert script to ES module syntax
feat(scripts/prepare-export.js): replace require with import statements
feat(scripts/prepare-export.js): use fileURLToPath to define __dirname
feat(scripts/prepare-export.js): refactor patch application for clarity
feat(scripts/prepare-export.js): add global import fix for components
feat(scripts/prepare-export.js): fix component imports using regex
feat(scripts/prepare-export.js): add main function to execute patches
feat(scripts/prepare-export.js): mock base44 client for local development
feat(scripts/prepare-export.js): add company logo field to business modal
feat(scripts/prepare-export.js): add AI order assistant component
feat(scripts/prepare-export.js): enhance event form with new features
feat(scripts/prepare-export.js): add event form wizard component
feat(scripts/prepare-export.js): add safe date formatter to message thread

feat(DocumentViewer.jsx): Implement signature capture and acknowledgment feature
feat(DocumentViewer.jsx): Add signature pad for capturing digital signatures
feat(DocumentViewer.jsx): Enable saving signature to user profile
feat(DocumentViewer.jsx): Implement acknowledgment functionality with signature and notes
feat(DocumentViewer.jsx): Add UI elements for signer name input and signature pad
feat(DocumentViewer.jsx): Implement signature adoption from saved profile
feat(DocumentViewer.jsx): Improve UI and UX for document review process
feat(UpcomingOrdersCard.jsx): Create new component to display upcoming orders
feat(UpcomingOrdersCard.jsx): Implement progress bar and status indicators
feat(UpcomingOrdersCard.jsx): Add ETA calculation and display
feat(UpcomingOrdersCard.jsx): Improve UI and UX for upcoming order display
feat(ActivityLog.jsx): Implement safe date formatting to handle invalid dates
feat(ClientDashboard.jsx): Implement client dashboard with key metrics and quick actions
feat(ClientDashboard.jsx): Add analytics cards for cost, labor, and sales
feat(ClientDashboard.jsx): Implement quick reorder functionality
feat(ClientDashboard.jsx): Add spending trend chart
feat(ClientDashboard.jsx): Improve UI and UX for client dashboard
feat(ClientOrders.jsx): Implement client orders page with filtering and quick actions
feat(ClientOrders.jsx): Add status badges and event details
feat(ClientOrders.jsx): Improve UI and UX for client orders page
feat(CreateEvent.jsx): Implement event creation page with AI assistant and form wizard
feat(CreateEvent.jsx): Add AI assistant for extracting event data
feat(CreateEvent.jsx): Implement form wizard for event creation
feat(CreateEvent.jsx): Improve UI and UX for event creation page
feat(EditBusiness.jsx): Add company logo URL input to edit business page
feat(EditBusiness.jsx): Improve UI and UX for edit business page
feat(EventDetail.jsx): Implement safe date formatting to handle invalid dates

feat(PartnerManagement.jsx): enhance partner management page with consolidated business directory and operator metrics
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from business entities
feat(PartnerManagement.jsx): add consolidated business directory from

feat(ProcurementDashboard.jsx): add supplier onboarding tab with filtering and detail panel
feat(ProcurementDashboard.jsx): implement supplier onboarding tab with filtering and detail panel
feat(ProcurementDashboard.jsx): add document status badges and actions in supplier detail panel
feat(ProcurementDashboard.jsx): add compliance health indicator to supplier detail panel
feat(ProcurementDashboard.jsx): add document request functionality with toast notifications
feat(ProcurementDashboard.jsx): add clear filters button and active filters display
feat(ProcurementDashboard.jsx): improve supplier table UI and add empty state
feat(ProcurementDashboard.jsx): add document type filter to supplier onboarding tab
feat(ProcurementDashboard.jsx): add state filter to supplier onboarding tab
feat(ProcurementDashboard.jsx): add document status and type filtering to onboarding tab
feat(ProcurementDashboard.jsx): add summary counts for onboarding tab based on filtered suppliers
feat(ProcurementDashboard.jsx): add document status and type filtering to onboarding tab
feat(ProcurementDashboard.jsx): add document status and type filtering to onboarding tab
feat(Reports.jsx): add safe date formatting to handle invalid dates
feat(SmartVendorOnboarding.jsx): implement NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA signing step with signature capture
feat(SmartVendorOnboarding.jsx): add NDA

feat(VendorDashboard.jsx): overhaul vendor dashboard with new UI/UX
feat(VendorDashboard.jsx): add AI insights and rapid orders sections
feat(VendorDashboard.jsx): implement sales vs payroll chart and client analysis
feat(VendorDashboard.jsx): enhance top performers and gold vendors sections
feat(VendorDashboard.jsx): improve quick actions and today's metrics
feat(VendorDashboard.jsx): integrate total revenue card and staff assignment
feat(VendorOrders.jsx): enhance vendor orders page with rapid request support
feat(VendorOrders.jsx): add rapid request badge and filter
feat(WorkforceShifts.jsx): add safe date formatting to handle invalid dates
2025-11-11 07:26:06 -05:00
bwnyasse
e571193362 feat: Initial commit of KROW Workforce Web client (Base44 export) 2025-11-11 06:08:01 -05:00