Commit Graph

246 Commits

Author SHA1 Message Date
ncoronel 12697c2268 feat: Refactor bootstrap functionality by adding AdminApp and Tenant controllers, requests, resources, and services; remove deprecated event form components 2026-08-03 13:37:37 -03:00
ncoronel f4638bc984 feat: Implement event management functionality with API endpoints and validation 2026-08-03 13:32:31 -03:00
ncoronel c3713c62a6 feat: Add event management to tenant and catalog
- Introduced Event and EventDate models with relationships to Tenant and CatalogItem.
- Added active_event_id to Tenant model to track the currently active event.
- Updated TenantResource to include active event details in the response.
- Enhanced Ticket model to link to CatalogItem and Variant, allowing for event-specific ticketing.
- Implemented migrations to create events and link them to catalog items and variants.
- Updated seeders to populate events and their associated dates for the Fiesta Futbol Infantil tenant.
- Modified Ticket generation logic to respect event dates over standard ticket dates.
- Added tests for event and ticket functionalities, ensuring proper relationships and date handling.
2026-08-03 12:01:20 -03:00
ncoronel 4a51f3afde feat(website-extras): enhance toggle functionality and update related tests; add additional info configuration to tenant extras 2026-08-03 09:10:50 -03:00
ncoronel f1df6a5918 feat(seeder): update MenuSeeder and tests to reflect new admin menu structure; change border color in WebsiteTypeSeeder 2026-08-03 09:07:49 -03:00
ncoronel dbeaf19513 feat(auth): implement AdminAppMeController and AdminAppMeResource; add routes and tests for user context retrieval 2026-07-31 16:11:47 -03:00
ncoronel dd76d5d951 feat(website-type): add footer logo support in WebsiteType model, controller, and resource; update seeder and tests 2026-07-31 14:16:58 -03:00
ncoronel f603a82b5e feat(website-type): implement BootstrapWebsiteTypeController and related request/resource for domain-based bootstrapping 2026-07-31 13:39:31 -03:00
ncoronel b478c23f3b feat(website-type): add new color fields and update related methods in WebsiteType model and service 2026-07-31 12:55:40 -03:00
ncoronel 6858b387c3 feat(website-type): add 'dominio' field to WebsiteType model and update related tests 2026-07-31 12:06:27 -03:00
ncoronel 893bea1492 feat(website-type): add login_header_footer_color field and update related tests 2026-07-31 12:06:13 -03:00
ncoronel ec1d80dff2 feat(seeder): update image paths in ProductCatalogFromImagesSeeder and TenantSeeder, add new catalog images 2026-07-31 11:45:29 -03:00
ncoronel 3968a10f6a feat(website-type): add presentation fields and site logo relationship to WebsiteType model 2026-07-31 11:39:17 -03:00
ncoronel cf2beb2ff5 feat(auth): implement AdminApp login functionality with controller, request, routes, and tests 2026-07-31 10:47:55 -03:00
ncoronel 484fa204b3 feat(tenant): add BootstrapTenantController and corresponding tests for tenant bootstrapping functionality 2026-07-31 10:36:46 -03:00
ncoronel 6dd057874a feat(website-extras): add showExtra method and resource for individual website extras, update routes and tests 2026-07-31 09:51:27 -03:00
ncoronel 40cbac17c6 feat(website-extras): implement toggle functionality for website extras and update related tests 2026-07-31 09:47:56 -03:00
ncoronel 45e56c43a6 feat(website-extras): add 'is_enabled' column to websites_extras table and update model and tests 2026-07-31 09:38:30 -03:00
ncoronel cbb7b1c3a1 feat(database): remove 'database_rules' from WebsiteTypeExtra configurations and related tests 2026-07-31 09:28:12 -03:00
ncoronel 6b3a12b624 feat(website-extras): refactor WebsiteExtra management to use 'codigo' for identification, update routes, requests, and services 2026-07-31 09:27:35 -03:00
ncoronel 40a7dece11 feat(authorization): implement WebsiteExtra management with controller, request, resource, service, routes, middleware, and tests 2026-07-31 09:19:25 -03:00
ncoronel 5ec65ce3d3 fix(authorization): rename pivot table from 'menues_roles' to 'roles_menues' and update related references 2026-07-31 08:35:45 -03:00
ncoronel b7e1332b8c feat(authorization): refactor role management to use RoleCode enum, update migrations, seeders, and tests 2026-07-31 08:32:00 -03:00
ncoronel a087a511e0 feat(authorization): filter tenant menus by user roles in bootstrap process 2026-07-31 08:23:18 -03:00
ncoronel a20b1713d3 feat(authorization): establish many-to-many relationship between roles and menus, add migration and seeder updates 2026-07-30 16:54:25 -03:00
ncoronel d56d387933 feat(authorization): add role and tenant codes to users, implement validation logic, and create tests 2026-07-30 16:37:37 -03:00
ncoronel cba32e90e7 feat(authorization): implement AuthorizationSeeder with roles and permissions, add tests 2026-07-30 16:37:37 -03:00
ncoronel a674bcfabc feat(authorization): add roles and permissions models, migration, and tests 2026-07-30 16:37:20 -03:00
ncoronel ace3f136e4 refactor(menu): add admin menu items and corresponding test cases 2026-07-30 16:36:43 -03:00
ncoronel 2cc72be850 refactor(website): add 'dates_text' field to event configuration and update related tests 2026-07-29 16:23:24 -03:00
ncoronel 8e3ee7eff6 refactor(tenant): introduce TenantInformationService for loading tenant data and resolving website extras 2026-07-29 15:48:01 -03:00
ncoronel 27d4f9fac6 feat(tenant): implement website extras functionality and validation in tenant creation 2026-07-29 15:16:33 -03:00
ncoronel 9e3163b74f refactor(website): update relationships and migration to use 'website_type_code' instead of 'website_type' 2026-07-29 15:03:31 -03:00
ncoronel b9ad2e589f refactor(tenant): remove legacy presentation configuration and related carousel images 2026-07-29 14:54:57 -03:00
ncoronel 5416c0fd61 feat(seeder): add WebsiteTypeSeeder and update DatabaseSeeder to include it 2026-07-29 14:42:03 -03:00
ncoronel 04bf03fc2e feat(website): add website type and extras models with migration and tests 2026-07-29 14:09:47 -03:00
ncoronel 7c9ebc6d4d feat(auth): implement login security features including account locking and login attempt tracking 2026-07-29 10:47:26 -03:00
ncoronel 45553dc514 feat(purchase): add review submission for pending purchases and update related logic 2026-07-29 09:11:00 -03:00
ncoronel 1c870d9cfa feat(tickets): add source_purchase_id to tickets and update related logic 2026-07-28 16:10:37 -03:00
ncoronel 4eacff86bc feat(purchase): update customer data for pending payment purchases 2026-07-28 15:06:00 -03:00
ncoronel 8dc80411d7 feat(categories): add category retrieval and pagination for tenant-specific products 2026-07-28 12:20:17 -03:00
ncoronel ff9d7728e8 Implement localization for API responses and error messages
- Added localization support for API responses in English and Spanish.
- Introduced a middleware to set the API locale based on the Accept-Language header.
- Updated various exception messages and validation responses to use localized strings.
- Created new language files for English and Spanish translations.
- Refactored existing code to replace hardcoded messages with localized strings.
- Added tests to verify localization functionality and response correctness.
2026-07-28 10:19:39 -03:00
ncoronel 754aeebe3a Squashed commit of the following:
commit c993da3397b65488d919d1b929cbd4638754601b
Author: ncoronel <ncoronel@quo.ar>
Date:   Tue Jul 28 09:54:10 2026 -0300

    feat(tickets): update ticket metadata layout for improved readability and clarity

commit 140fa4676d84bed788894e1d7994b26dccac7a34
Author: ncoronel <ncoronel@quo.ar>
Date:   Tue Jul 28 09:43:21 2026 -0300

    feat(tickets): enhance PDF ticket download with dynamic filename and improved styling

commit 8875c047b198776e61e8353c99cf4c7b00bc8fc9
Author: ncoronel <ncoronel@quo.ar>
Date:   Tue Jul 28 09:03:17 2026 -0300

    feat(tickets): add PDF download functionality for tickets

    - Implemented a new endpoint to download tickets as a PDF.
    - Created DownloadTicketsPdfRequest for validating ticket IDs.
    - Added TicketPdfService to handle PDF generation and QR code embedding.
    - Developed a Blade view for rendering ticket details in PDF format.
    - Updated API routes to include the new PDF download route.
    - Added tests to ensure authenticated users can download their tickets and that users cannot download tickets belonging to others.
    - Updated composer.json and composer.lock to include necessary dependencies for PDF generation and QR code creation.
2026-07-28 09:54:49 -03:00
ncoronel 5107d858cc fix(ticket): temporarily disable maximum use date validation in ticket generation 2026-07-27 17:01:08 -03:00
ncoronel aa4f3303fc feat(variants): add minimum and maximum use dates to variants and update related logic 2026-07-27 14:59:07 -03:00
ncoronel 8b26a2b63e feat(purchase): add checkout expiration settings and reservation status to purchase items
- Introduced a new configuration file for purchase settings, including checkout and payment expiration times.
- Added a migration to include a `reservation_status` column in the `compra_items` table, defaulting to 'active' and updating existing records based on purchase status.
- Created a migration to add an `expires_at` timestamp to the `compras` table, updating it for existing records based on their status.
- Scoped unique indexes in the `carritos` table to only active carts, adding virtual columns for active user and guest tokens.
- Implemented a console command to expire overdue purchases and release stock reservations, scheduled to run every minute.
- Added tests for Google token exchange and login functionality, ensuring proper cart handling and user authentication.
- Updated purchase-related tests to reflect changes in item handling and customer data validation.
2026-07-27 12:49:27 -03:00
ncoronel c37b8894e4 Forgot password flow 2026-07-27 09:43:00 -03:00
ncoronel 135a3bea3e feat(search): implement catalog item search functionality with request validation and resource formatting 2026-07-24 14:17:34 -03:00
ncoronel 18c23a112a feat(seeder): update featured groups configuration with product and group layouts 2026-07-24 10:42:27 -03:00
ncoronel 979ed428a2 feat(menu): add label field to menu model and update related functionality 2026-07-24 10:08:04 -03:00
ncoronel 7889d747d9 feat(menu): add account menu hierarchy and related tests in MenuSeeder and MenuSeederTest 2026-07-24 10:07:47 -03:00
ncoronel f6ce85cbde feat(menu): update validation rules and structure for contact content in MenuSeeder and related tests 2026-07-24 09:41:13 -03:00
ncoronel 460eec3c78 feat(menu): implement menu hierarchy and static content for help section in MenuSeeder and related tests 2026-07-23 17:07:55 -03:00
ncoronel 2b1ef5f8a9 feat(menu): implement TenantMenuController, StoreTenantMenuRequest, and TenantMenuService for managing tenant-specific menus 2026-07-23 16:23:19 -03:00
ncoronel 018f3f6c13 feat(seeder): add SocialMediaSeeder and integrate social media data into TenantSeeder 2026-07-23 15:19:25 -03:00
ncoronel 217f86f624 feat(social-media): add 'orden' field to social media pivot table and update related functionality 2026-07-23 15:19:17 -03:00
ncoronel 25891cefbc feat(tenant): add social media functionality with validation, synchronization, and tests 2026-07-23 15:03:57 -03:00
ncoronel c66d2019d6 feat(social-media): add SocialMedia model, migration, and tests for tenant associations 2026-07-23 14:54:42 -03:00
ncoronel 12d496544d feat(tenant): add main carousel images to tenant seeder and implement corresponding tests 2026-07-23 14:53:00 -03:00
ncoronel c31be9c927 feat(tenant): update validation rules for logos and main carousel images, enhance tests for carousel image upload and update 2026-07-23 14:20:26 -03:00
ncoronel 67ede1a2b4 feat(tenant): add main carousel images functionality with migration, model, and tests 2026-07-23 14:19:00 -03:00
ncoronel e778d862ba feat(catalog): enhance featured groups with paginated and carousel layouts, update seeder and tests 2026-07-23 13:24:39 -03:00
ncoronel 1438ff66c7 feat(catalog): add GroupLayout enum and integrate into FeaturedGroup model, migrations, and seeders 2026-07-23 13:22:22 -03:00
ncoronel 528772fc96 feat(notification): implement email notifications for user registration and purchase events 2026-07-22 09:54:19 -03:00
ncoronel 7e1ffbf417 feat(integration): add requires_tenant_configuration field and update related logic and tests 2026-07-22 09:23:58 -03:00
ncoronel 03d8361e5f feat(mail): introduce MailService for tenant-specific SMTP handling and update related tests 2026-07-21 17:00:07 -03:00
ncoronel 3fe48fbfa5 feat(mail): implement MailService for tenant-specific SMTP configuration and update MailTestService to utilize it 2026-07-21 16:43:09 -03:00
ncoronel 22da4966e9 feat(mail-test): enhance email functionality with tenant branding and routing 2026-07-21 16:26:46 -03:00
ncoronel 1a05c380a0 feat(mail-test): implement email testing functionality
- Created MailTestController to handle email sending requests.
- Added SendTestMailRequest for validating email input.
- Developed MailTestService to manage email sending logic.
- Introduced TestMail Mailable for formatting test emails.
- Defined API route for sending test emails.
- Created EmailIntegrationSeeder to seed email integration settings.
- Updated DatabaseSeeder to include EmailIntegrationSeeder.
- Added MailTestControllerTest to ensure email sending functionality works as expected.
2026-07-21 16:01:18 -03:00
ncoronel e1a67fd9f3 feat(ticket): add TicketController, TicketResource, and related routes with tests 2026-07-21 14:56:17 -03:00
ncoronel 38f74739da feat(ticket): add source IDs to tickets and update related services and tests 2026-07-21 12:27:26 -03:00
ncoronel c0978033c1 feat(ticket): implement ticket generation on purchase payment and add related tests 2026-07-21 11:23:17 -03:00
ncoronel a928a2e848 feat(ticket): implement ticket generation service, model, and exception handling with tests 2026-07-21 11:20:52 -03:00
ncoronel c3f54c79cb feat(auth): implement token expiration for personal access tokens and update tests 2026-07-21 10:36:40 -03:00
ncoronel 29a2ca19a3 refactor(catalog): Complete catalog refactor to simplify its data model and its querying.
source commits: refactor/catalog
2026-07-21 09:23:19 -03:00
ncoronel d3182fbd13 feat: add migration to expand tenant_codigo in bundles and update related seeders and tests 2026-07-17 16:07:33 -03:00
ncoronel cb0fb2899c feat: implement polymorphic relationships for group items to support bundles and product variants 2026-07-17 14:42:44 -03:00
ncoronel 84c9fa4c9d feat: update purchase status to pending payment in payment intent and related test 2026-07-16 12:13:48 -03:00
ncoronel b3d06431e5 feat: rename payer_dni to transfer_payer_dni across purchase handling and update related tests 2026-07-16 11:45:34 -03:00
ncoronel 379c2bdbeb Merge branch 'dev' of https://gitea.quo.ar/tbianchini/shopit-back into dev 2026-07-16 10:00:12 -03:00
ncoronel 6fc6ed1fac feat: refactor cart and purchase handling to support polymorphic buyable types and improve code readability 2026-07-16 09:55:38 -03:00
ncoronel 10157d7c63 feat: Implement inventory policy for product variants
- Introduced InventoryPolicy enum to manage tracked and unlimited inventory types.
- Updated ProductVariant model to include inventory_policy and cantidad_vendida attributes.
- Modified addItem and updateItem methods in Cart to check available quantity based on inventory policy.
- Added migration to include inventory_policy and cantidad_vendida in productos_variantes table.
- Enhanced tests to validate inventory behavior for both tracked and unlimited policies.
- Updated various request and resource classes to handle new inventory fields.
2026-07-16 08:36:59 -03:00
nahu ca7a2ae55c feat: add payer_dni field and validation for transfer payments, update related logic and tests 2026-07-12 19:48:56 +00:00
ncoronel ca4fea6bcd feat: enhance purchase detail handling to support cart items and improve resource structure 2026-07-08 15:50:40 -03:00
ncoronel f18fbc8147 feat: rename finalize methods to complete for consistency in purchase processing 2026-07-07 15:36:07 -03:00
ncoronel c276ccd311 feat: refactor purchase status handling and add finalize endpoint for purchases 2026-07-07 15:33:29 -03:00
ncoronel 7b2a741884 feat: add total field to purchases and update related logic for payment processing 2026-07-07 10:16:28 -03:00
ncoronel 2c2cf45f78 feat: remove BankAccount domain and related functionality, including controller, model, requests, routes, and tests 2026-07-06 16:53:45 -03:00
ncoronel dc32eb9bee feat: enhance checkout process with cart integration and stock confirmation 2026-07-06 14:06:25 -03:00
ncoronel 403caf77f5 feat: add getCashinDetails method to TelepagosIntegrationService and corresponding tests 2026-07-06 09:01:45 -03:00
ncoronel 04b2bb0b2a feat: add QR code generation and response handling to TelepagosIntegrationService with logging for errors 2026-07-06 08:58:14 -03:00
ncoronel 1af5b1d7ed feat: add client method to BaseIntegrationService for pre-configured HTTP client and implement test for client functionality 2026-07-06 08:50:52 -03:00
ncoronel 387e136707 feat: update environment configuration for production and enhance TelepagosIntegrationService with token caching and error handling 2026-07-06 08:48:40 -03:00
ncoronel 9a1e36337d feat: implement BaseIntegrationService and TelepagosIntegrationService with integration handling and header generation 2026-07-06 08:40:32 -03:00
ncoronel 0cb1c37566 refactor: remove PaymentProviderInterface and TelepagosProvider, simplify CheckoutService and related tests 2026-07-03 16:55:11 -03:00
ncoronel 057e6757dc feat: add customer details fields to Purchase model and request, implement checkout process with cart clearing 2026-07-03 16:48:31 -03:00
ncoronel 6d066beea3 feat: add optional 'dni' and 'telefono' fields to User model and registration process 2026-07-03 16:24:56 -03:00
ncoronel 0d4c6a4492 feat: implement BankAccount management with CRUD operations and routes for tenant selection 2026-07-03 13:58:21 -03:00
ncoronel c1b7b12fe1 feat: add endpoint to retrieve selected bank account for a tenant and update routes with authentication 2026-07-03 13:54:31 -03:00
ncoronel b1e40b3430 feat: implement BankAccount management with CRUD operations and selection for tenants 2026-07-03 13:43:32 -03:00
ncoronel b94efea4e0 feat: update maximum quantity error message in Cart model and test 2026-07-03 08:44:49 -03:00
ncoronel 9a5a8e85b9 feat: implement authentication functionality with login and logout endpoints 2026-07-02 14:55:47 -03:00
ncoronel a95cfc780b feat: implement user registration functionality with validation and response handling 2026-07-02 12:23:50 -03:00
ncoronel 18eedd3209 feat: add success messages for cart item operations in CartController 2026-07-02 12:06:00 -03:00
ncoronel efa499d993 feat: rename stock fields to cantidad_maxima in ProductResource and ProductVariantResource 2026-07-02 09:37:43 -03:00
ncoronel 6a0b08c9d7 feat: implement multi-tenant cart system with stock reservation and inventory tracking 2026-07-01 16:21:53 -03:00
ncoronel 4943e68606 feat: implement multi-tenant cart functionality and add image validation helper 2026-07-01 15:38:12 -03:00
ncoronel 3285015841 feat: differentiate between header and footer colors 2026-07-01 15:37:46 -03:00
ncoronel a79f58d520 feat: implement cart service and resource to manage user and guest shopping carts 2026-07-01 14:56:12 -03:00
ncoronel 4aedf7ca86 feat: add tenant success color 2026-07-01 11:55:08 -03:00
ncoronel a150a9f694 feat: implement product and variant CRUD management service with attachment handling 2026-07-01 11:44:56 -03:00
ncoronel a0a0cc7255 feat: add ProductVariant model and service layer for CRUD operations with attachment handling 2026-07-01 10:09:04 -03:00
ncoronel d6a17cb449 feat: add is_default field to product variants and implement default variant management logic in ProductService 2026-07-01 10:02:26 -03:00
ncoronel 83f42f3cf9 test: add feature tests for product creation, variant management, and attribute synchronization 2026-07-01 09:58:49 -03:00
ncoronel bbfe632926 test: add feature tests for product and variant management with attribute associations 2026-07-01 09:51:24 -03:00
ncoronel 35384b48ab feat: add filtering for product detail attribute options based on available variant values 2026-07-01 08:55:27 -03:00
Nahuel Coronel 46685a7141 feat: enhance product detail retrieval to support variant selection and fallback image handling 2026-07-01 01:05:31 +00:00
Nahuel Coronel 1aa831f921 feat: refactor product detail retrieval to simplify variant handling and enhance response structure 2026-07-01 01:05:21 +00:00
ncoronel 429fa36b05 feat: update product and variant resources to improve variant selection handling and response structure 2026-06-30 16:53:23 -03:00
ncoronel 72261bf422 feat: implement product management module with CRUD operations, service layer, and validation logic 2026-06-30 09:50:40 -03:00
ncoronel 46e7c27ae7 feat: implement product controller, service, and feature tests with updated API collection. 2026-06-29 17:01:21 -03:00
ncoronel 9b7d728117 feat: implement product and attribute management services with corresponding controllers and feature tests 2026-06-29 11:37:22 -03:00
ncoronel b5b57a753c feat: implement product and variant management controllers with request validation and feature tests 2026-06-29 11:10:04 -03:00
ncoronel 18504594eb feat: implement product creation workflow with variants, attribute definitions, and validation logic 2026-06-29 11:02:04 -03:00
ncoronel 74e443ece1 feat: add attachment relationship to ProductVariant model and database schema 2026-06-29 09:56:15 -03:00
ncoronel 6efda4727f feat: implement product attribute options with database migration, resource, and validation requests 2026-06-29 09:48:56 -03:00
ncoronel b0508d79b3 feat: implement Attachment domain for file storage and integrate into Tenant service for logo management 2026-06-29 09:43:46 -03:00
ncoronel 31b65eb676 feat: implement full CRUD support and database schema for multi-tenant architecture 2026-06-26 16:57:59 -03:00
ncoronel 8708cea122 feat: implement tenant update request validation and add feature tests for domain bootstrapping 2026-06-26 16:23:14 -03:00
ncoronel 54aa696145 feat: implement tenant management system with attachment support and bootstrap controller 2026-06-26 13:17:48 -03:00
ncoronel 1f9d876bc3 feat: implement tenant management system including database schema, CRUD services, and bootstrap functionality 2026-06-26 12:16:50 -03:00
ncoronel 0dae985230 feat: implement tenant management system including CRUD operations and domain bootstrapping functionality 2026-06-26 11:55:05 -03:00
ncoronel 4c237fb729 feat: implement product attributes and tenant properties management with CRUD controllers, requests, and domain models 2026-06-26 11:40:07 -03:00
ncoronel 7994fe0c96 feat(attachments): refactor attachment management to use attachable pivot table and update related models and tests 2026-06-25 15:30:11 -03:00
ncoronel ee59236d55 feat(attachments): ensure 'key' is set as UUID on attachment creation and update tests for key validation 2026-06-25 15:11:31 -03:00
ncoronel aec92d5346 feat(attachments): implement AttachmentService for managing uploads and deletions, add AttachmentStorageException for error handling 2026-06-25 15:02:52 -03:00
ncoronel 6db98ddc1a feat(attachments): add HasAttachments trait to manage attachment relationships 2026-06-25 14:47:21 -03:00
ncoronel 56b87f0c12 feat(attachments): add AttachmentType enum and update Attachment model to use it 2026-06-25 14:44:44 -03:00
ncoronel 492c6c4ac2 feat(cart): implement cart management with add, update, and remove item functionalities 2026-06-25 10:24:45 -03:00
ncoronel 1907178e52 refactor(catalog): nest catalog routes under tenant
Move Catalog endpoints under /api/tenants/{tenant:codigo} and derive tenant
context from the route instead of request payload fields.

- scope marcas, categorias, productos, and product-attributes by tenant
- enforce tenant ownership in catalog controllers
- remove tenant_codigo and tenant_code from Catalog request validation
- update product attribute tests to use tenant-scoped routes
2026-06-24 15:16:38 -03:00
ncoronel c6e5177df1 feat(catalog): add tenant-scoped product attributes and variant definitions 2026-06-24 15:08:13 -03:00
ncoronel 689d115a8f feat(tenant): reintroduce tenant-specific props and instance values
Restore props support only for the Tenant domain using a tenant-scoped model
instead of the removed generic Prop/Propable implementation.

Add tenant prop definitions and instance values:
- add TenantProp and TenantPropValue models
- add tenant-only data type enum and prop validation rules
- add migrations for tenant_props and tenant_prop_values tables
- persist prop values by tenant_codigo + tenant_prop_codigo

Expose tenant prop management through the Tenant domain:
- add TenantPropController with CRUD endpoints
- add Store/Update request classes for tenant prop definitions
- register tenant-props routes

Re-enable tenant prop syncing and serialization:
- restore createWithProps/updateWithProps flows in Tenant
- validate props on tenant create/update requests
- include collapsed props in TenantResource
- keep the implementation scoped to Tenant without reintroducing polymorphic props

Add coverage for the new tenant prop behavior:
- update bootstrap tenant feature test to assert prop values
- add feature tests for tenant prop creation and validation
2026-06-24 14:50:58 -03:00
ncoronel 75129b7552 remove props 2026-06-24 14:43:10 -03:00
ncoronel 3c6469617b Add BootstrapTenantController and requests for tenant domain normalization; implement API route and tests 2026-06-23 09:49:54 -03:00
ncoronel 55694b2048 Refactor Prop model to use enum for data types; remove PropDataType model and update related requests and migrations 2026-06-22 13:13:22 -03:00
ncoronel 02ebe0f0ca initial commit 2026-06-18 10:09:24 -03:00