Feat(SQL, UI): Button Icons page, Command Button Links page created with get and set functionality.

This commit is contained in:
2025-07-17 18:58:06 +01:00
parent e0805ec2ed
commit 4e214c3bde
151 changed files with 12224 additions and 463 deletions

View File

@@ -18,12 +18,18 @@ Base data model for views
# internal
# from routes import bp_home
from business_objects.base import Base
from business_objects.dog.user import User
from business_objects.file_type import File_Type
from business_objects.dog.button_icon import Button_Icon
from business_objects.dog.button_shape import Button_Shape
from business_objects.dog.colour import Colour
from business_objects.dog.command import Command
from business_objects.dog.command_button_link import Command_Button_Link
from business_objects.dog.command_category import Command_Category
from business_objects.dog.dog import Dog
from business_objects.dog.dog_command_link import Dog_Command_Link
from business_objects.dog.image import Image
from business_objects.dog.location import Location
from business_objects.dog.user import User
from datastores.datastore_base import DataStore_Base
from datastores.datastore_dog import DataStore_Dog
from datastores.datastore_user import DataStore_User
@@ -38,10 +44,16 @@ from typing import ClassVar
class Model_View_Base(BaseModel, ABC):
ATTR_ID_BUTTON_ICON: ClassVar[str] = Button_Icon.ATTR_ID_BUTTON_ICON
ATTR_ID_BUTTON_SHAPE: ClassVar[str] = Button_Shape.ATTR_ID_BUTTON_SHAPE
ATTR_ID_COLOUR: ClassVar[str] = Colour.ATTR_ID_COLOUR
ATTR_ID_COMMAND: ClassVar[str] = Command.ATTR_ID_COMMAND
ATTR_ID_COMMAND_BUTTON_LINK: ClassVar[str] = Command_Button_Link.ATTR_ID_COMMAND_BUTTON_LINK
ATTR_ID_COMMAND_CATEGORY: ClassVar[str] = Command_Category.ATTR_ID_COMMAND_CATEGORY
ATTR_ID_DOG: ClassVar[str] = Dog.ATTR_ID_DOG
ATTR_ID_DOG_COMMAND_LINK: ClassVar[str] = Dog_Command_Link.ATTR_ID_DOG_COMMAND_LINK
ATTR_ID_FILE_TYPE: ClassVar[str] = File_Type.ATTR_ID_FILE_TYPE
ATTR_ID_IMAGE: ClassVar[str] = Image.ATTR_ID_IMAGE
ATTR_ID_LOCATION: ClassVar[str] = Location.ATTR_ID_LOCATION
ATTR_TEXT_COLLAPSED: ClassVar[str] = 'textCollapsed'
ATTR_TEXT_EXPANDED: ClassVar[str] = 'textExpanded'
@@ -78,8 +90,10 @@ class Model_View_Base(BaseModel, ABC):
FLAG_BOOL_FALSE: ClassVar[str] = 'false'
FLAG_BOOL_TRUE: ClassVar[str] = 'true'
FLAG_BUTTON: ClassVar[str] = 'button'
FLAG_BUTTON_ICON: ClassVar[str] = Button_Icon.FLAG_BUTTON_ICON
FLAG_BUTTON_LIGHT: ClassVar[str] = 'button-light'
FLAG_BUTTON_PRIMARY: ClassVar[str] = 'button-primary'
FLAG_BUTTON_SHAPE: ClassVar[str] = Button_Shape.FLAG_BUTTON_SHAPE
FLAG_CANCEL: ClassVar[str] = 'button-cancel'
FLAG_CALLBACK: ClassVar[str] = 'callback'
FLAG_CAPTCHA: ClassVar[str] = 'captcha'
@@ -88,7 +102,9 @@ class Model_View_Base(BaseModel, ABC):
FLAG_CLOSE_TEMPORARY_ELEMENT: ClassVar[str] = 'button-temporary-element-close'
FLAG_CODE: ClassVar[str] = Base.FLAG_CODE
FLAG_COLLAPSIBLE: ClassVar[str] = 'collapsible'
FLAG_COLOUR: ClassVar[str] = Colour.FLAG_COLOUR
FLAG_COMMAND: ClassVar[str] = Command.FLAG_COMMAND
FLAG_COMMAND_BUTTON_LINK: ClassVar[str] = Command_Button_Link.FLAG_COMMAND_BUTTON_LINK
FLAG_COMMAND_CATEGORY: ClassVar[str] = Command_Category.FLAG_COMMAND_CATEGORY
FLAG_COLUMN: ClassVar[str] = 'column'
FLAG_COMMENT: ClassVar[str] = 'comment'
@@ -135,11 +151,15 @@ class Model_View_Base(BaseModel, ABC):
# FLAG_NAME_SINGULAR: ClassVar[str] = Base.FLAG_NAME_SINGULAR
FLAG_NAV_ADMIN_HOME: ClassVar[str] = 'navAdminHome'
FLAG_NAV_CONTACT: ClassVar[str] = 'navContact'
FLAG_NAV_DOG_BUTTON_ICONS: ClassVar[str] = 'navDogButtonIcons'
FLAG_NAV_DOG_COLOURS: ClassVar[str] = 'navDogColours'
FLAG_NAV_DOG_COMMAND_BUTTON_LINKS: ClassVar[str] = 'navDogCommandButtonLinks'
FLAG_NAV_DOG_COMMAND_CATEGORIES: ClassVar[str] = 'navDogCommandCategories'
FLAG_NAV_DOG_COMMANDS: ClassVar[str] = 'navDogCommands'
FLAG_NAV_DOG_DOGS: ClassVar[str] = 'navDogDogs'
FLAG_NAV_DOG_DOG_COMMAND_LINKS: ClassVar[str] = 'navDogDogCommandLinks'
FLAG_NAV_DOG_HOME: ClassVar[str] = 'navDogHome'
FLAG_NAV_DOG_LOCATIONS: ClassVar[str] = 'navDogLocations'
FLAG_NAV_HOME: ClassVar[str] = 'navHome'
FLAG_NAV_USER_ACCOUNT: ClassVar[str] = 'navUserAccount'
FLAG_NAV_USER_ADMIN: ClassVar[str] = 'navUserAdmin'
@@ -170,6 +190,8 @@ class Model_View_Base(BaseModel, ABC):
HASH_PAGE_CONTACT: ClassVar[str] = '/contact'
HASH_PAGE_CONTACT_SUCCESS: ClassVar[str] = '/contact-success'
HASH_PAGE_DATA_RETENTION_SCHEDULE: ClassVar[str] = '/retention-schedule'
HASH_PAGE_DOG_BUTTON_ICONS: ClassVar[str] = '/dog/button-icons'
HASH_PAGE_DOG_COMMAND_BUTTON_LINKS: ClassVar[str] = '/dog/command-button-links'
HASH_PAGE_DOG_COMMAND_CATEGORIES: ClassVar[str] = '/dog/command-categories'
HASH_PAGE_DOG_COMMANDS: ClassVar[str] = '/dog/commands'
HASH_PAGE_DOG_DOG_COMMAND_LINKS: ClassVar[str] = '/dog/dog-command-links'
@@ -183,7 +205,10 @@ class Model_View_Base(BaseModel, ABC):
HASH_PAGE_USER_ACCOUNT: ClassVar[str] = '/user'
HASH_PAGE_USER_LOGIN: ClassVar[str] = '/login'
HASH_PAGE_USER_LOGOUT: ClassVar[str] = '/logout'
HASH_SAVE_DOG_BUTTON_ICON: ClassVar[str] = '/dog/save-button-icon'
HASH_SAVE_DOG_COLOUR: ClassVar[str] = '/dog/save-colour'
HASH_SAVE_DOG_COMMAND: ClassVar[str] = '/dog/save-command'
HASH_SAVE_DOG_COMMAND_BUTTON_LINK: ClassVar[str] = '/dog/save-command-button-link'
HASH_SAVE_DOG_COMMAND_CATEGORY: ClassVar[str] = '/dog/save-command-category'
HASH_SAVE_DOG_DOG_COMMAND_LINK: ClassVar[str] = '/dog/save-dog-command-link'
HASH_SAVE_DOG_LOCATION: ClassVar[str] = '/dog/save-location'