vchikalkin
7fe1b89f5b
Update PageHeader component to conditionally hide BackButton based on environment and TMA status
...
- Modified the logic in the PageHeader component to hide the BackButton when in production or when the TMA status is 'simple', improving user experience by reducing unnecessary navigation options.
2025-10-07 19:31:40 +03:00
Vlad Chikalkin
ed197143d6
Feature/tma back button ( #70 )
...
* feat(layout): integrate TelegramProvider and BackButton into main layout for enhanced navigation
* refactor(layout): remove BackButton from main layout and update navigation imports
* use ui back button for non tma mode
2025-08-02 15:42:06 +03:00
Vlad Chikalkin
c5799a7f00
Feature/orders ( #25 )
...
* add contacts scroller
* add service select
* add calendar & time picker
* context/order: add masterId
* Revert "context/order: add masterId"
This reverts commit d5d07d7b2f5b6673a621a30b00ad087c60675a3f.
* components/order-form: add back button
* disable submit button if no customer selected
* disable submit button if no service selected
* service component: comment span
* save selected date to context
* fix calendar padding
* hooks/slot: rename index -> master
* slot list: render immediately
* fix step components rendering
* add check icon for masters
* Revert "add check icon for masters"
This reverts commit cc81a9a504918ebbffcca8d035c7c4984f109957.
* prepare for split contacts grid into masters/clients grid
* create MastersGrid & master-select step
* optimize useCustomerContacts
* add ClientsGrid & 'client-select' step
* add self to masters list & border avatar
* context/order: split into files
* hooks/profile: allow pass empty args to useProfileQuery/useProfileMutation
* context/order: skip client-select in client steps
* packages: upgrade next@15.3.0
* .vscode: add launch.json
* back-button: fix steps using
* contacts: skip client step for client
* fix react types
* ServiceSelect: fix padding
* Revert "contacts: skip client step for client"
This reverts commit db9af07dab9df9428561a1952f5a2c91c5b9d88d.
* fix steps for client & master
* split datetime-select into files
* improve useSlots hook
* migrate from order context to zustand store
* pass order store via context
* fix submit button not working
* skip master select for master & client select for client
* select time feature & get final order values
* apps/web: rename actions/service -> actions/services
* create order works!
* split next-button into two buttons
* add result pages (success, error)
* packages/graphql: add eslint
* merge branch 'refactor-api' (#23 )
* refactor customer api
* refactor slots api
* hooks/customers: use invalidateQueries
* refactor services api
* optimize hooks queryKey
* refactor orders api
* typo refactor hooks
* fix telegramId type (number)
* fix bot with new api
* rename customers masters & clients query
* fix useClientsQuery & useMastersQuery query
* new line after 'use client' & 'use server' directives
* move getAvailableTimeSlots to server
* getAvailableTimeSlots: add filter by orders
* take into service duration when computing times
* fix GetSlotsOrders order
* take into existing orders when computing times
* fix build
* app/orders: fill page with content
* stores/order: split into slices
* components/orders: remove nested components dirs
* move order store -> orders\order-store
* replace ScheduleTimeContext with ScheduleStore
* fix slots queries
* context: rename contexts properly
* finally organized stores & context
* move order-card & time-range to @/components/shared
* Refactor/components folder structure (#24 )
* refactor components/navigation
* refactor components/orders
* refactor components/profile
* refactor components/schedule
* remove components/common/spinner
* add launch.json
* add horizontal calendar
* remove context/date.tsx
* optimize orders list fetching
* add numberOfDaysBefore param
* fix orders list in slot page
* graphql/api: remove throw new Error
* horizontal-calendar: switch months by arrow buttons
* SlotCard: use SlotComponentProps type
* stores/schedule: export useScheduleStore
* SlotPage: add page header title
* contacts: mark inactive contacts
* prefetchQuery customer profile pages
* fix create slot
* packages: radash -> radashi
* fix queries, using formatDate & formatTime on client
* graphql: remove rename operations files
* fix create order query
* fix show actual slot status after slot update
* order page
* slot page: replace buttons with floating panel
* fix blur & colors
* fix floating panel overflows content
* hide ClientsOrdersList for non masters
* hooks/services: rename input -> variables
* move OrderCard types close to component
* exact types for Slot components & page
* app/profile: show shared orders
* order-services: fix types
* order page: add buttons
* order-card: add colors
* add order status alert
* fix badges & alerts
* take into account cancelled and completed orders in the slot list
* action panel: hide if no handlers
* highlight days with slots in schedule calendar
* highlight days in horizontal calendar
* remove getSlotsOrders fn
* show masters avatar in orders list
* fix auth redirects
* fix orders list for client
* create useIsMaster hook to prevent duplication
* order: revert cancel button for master
* FloatingActionPanel: block buttons while pending request
* hooks: invalidate orders & slots after mutate & delete
* order: revert approve button for master
* api/orders: protect update order
* order-card: show date
* order-card: add showDate variables in props
* order: add repeat button
* disable dashboard button
* apps/bot: beautify messages
* order: notify to telegram messages
* orderUpdate: add status info
2025-06-27 13:44:17 +03:00
vchikalkin
498f580dd9
organize components exports
2025-02-26 17:57:27 +03:00
Vlad Chikalkin
06be87f0ec
Feature/records ( #22 )
...
* components/profile: rename components files
* components/profile: organize files & folders
* split DataCard to 2 components
* [2] components/profile: organize files & folders
* data-card: fix phone field disabled
* fix card header color
* add schedule button for master
* fix navigation & profile background
* add basic schedule page
* fix bottom navbar overflows content
* header: remove bottom margin
* replace vanilla calendar with shadcn/ui one
* add slot functional
* fix forbidden error
* add slot operations
* show slots
* filter by selected day
* add hook useSlots
fix update slots list after add slot
fix initial fetch slots
* use slots hooks
* split edit-slot-form into files
* rename /time-slots -> /components
* refactor components & folders structure
* add feature: delete slot
* hooks/slot: update query keys
* add hooks/profile
* add hook useProfileMutation
* use useProfileMutation hook for update role
* rename useProfile -> useProfileQuery
* fix useProfileQuery queryKey
* add hook useContactsQuery
* remove unused ternary operator
* header: add backdrop blur
* create slot cards
* fix elements y center
* fix getSlots filters
* ui/ux improvements
* fix date time types & names
* move profile components from sub folder
* add basic slot page
* fix add slot form padding x
* add slot buttons
* extend slot card information
* fix import type
* use Container in pages
* change orange -> yellow for dark
* use Loading spinner in slots list
* refactor \components\schedule dir structure
* add orders list
* change query & mutation keys
* change url /profile/schedule/slot/ -> /slots/
* order: show services
* remove prefetchQuery
* bring the results of queries and hooks into a single form
* react query: globally show error toast
* add font inter
* fix header: center text
* orders: add sorting
* order card: add avatar
* rename records -> orders
* reduced text size
* fix slot buttons
* fix datetime card ui
* fix header: center text (finally)
* layout/container: last:mb-4
* fix type
* slot-datetime: use ReadonlyTimeRange
* rename files & components
* remove unnecessary context using
* feature: edit slot time
* fix: selected day reset after go back to /schedule
* rename AddTimeRange -> EditableTimeRangeForm & refactor
* fix some elements on page before data loaded
* fix text size
* slot-card: remove gap
* slot-date: remove margin
* fix slots & orders layout
* toast: show error text in ui
2025-02-20 18:11:28 +03:00
Vlad Chikalkin
427cc6b5d8
Feature/back button ( #17 )
...
* prepare for header back button: fix pages layout
add header with back button
* set header title
* optimize layout
* remove navigation context
* make profile photo bigger
* remove page-header from main pages
* fix profile layout
* profile: use ui/Card
* fix app background
* contacts: use ui/Card component
2025-01-27 17:28:28 +03:00