uv add arrow redbox alembic fastapi uvicorn sqlalchemy-mixins redis psycopg2-binary pymongo rsa redmail unidecode textdistance pandas faker requests cryptography user_creds_create user_creds_update timezone Comparator must be used as GMT+0 and users GMT+X [Base Collection don't have find_one / find_all bla bla]ApiEnumDropdown: functions [ enum_class = mapped_column(String, nullable=False, comment="Enum Constant Name") key = mapped_column(String, nullable=False, comment="Enum Key") value = mapped_column(String, nullable=False, comment="Enum Value") description = mapped_column(String, nullable=True) ] BuildType: functions [ build_type = mapped_column(String, nullable=False, comment="Build Type") description = mapped_column(String, nullable=True) ] OccupantType: functions [ occupant_type = mapped_column(String, nullable=False, comment="Occupant Type") description = mapped_column(String, nullable=True) ] create & update & select is_confirmed = True find_one / find_all is found @Database is_confirmed = False raise Exception Record is in database but not confirmed by supervisor find_or_create -> If record is not found create it if found.is_deleted = True: return "Record is found but deleted. Please contact your supervisor" if found.is_confirmed = False: return "Record is found but not confirmed by supervisor" update Which fields are possible to update except - is_confirmed delete -> Update is_deleted = True except - id destroy -> Only available for system patch -> Only available for system [event] Retrieve available events for token user + Occupant Information + Occupant [Settings] -> Event Group [Settings] Occupant [Accounts] -> Event Group [Accounts] Occupant [Decision Book] -> Event Group [Decision Book] Occupant [Projects] -> Event Group [Projects] Occupant [Events] -> Event Group [Events] Occupant [Company] -> Event Group [Company] Occupant [People] -> Event Group [People] Occupant [Build] -> Event Group [Build] Occupant [Address] -> Event Group [Address] ApiActions: insert_ insert_bulk update_ update_bulk delete_ delete_bulk patch_ patch_bulk InnerJoin: pass class FilterFromUser: raise_exception = FilterModelofEvent(**filter_records) HTTP_404_NOT_FOUND make available for Next.js HTTP_401_UNAUTHORIZED make available for Next.js HTTP_403_FORBIDDEN make available for Next.js HTTP_400_BAD_REQUEST make available for Next.js class DecisionBookDecisionBookItemsListEventMethods(MethodToEvent): event_type = "SELECT" __event_keys__ = { "eb36de59-8268-4d96-80b6-5d01c12bf0b1": "building_decision_book_items_list", } event_description = "List Decision Book Items"