14487 Commits

Author SHA1 Message Date
Oliver Walters
59ffdcaa19 Return 404 on API requests other than GET
- Other request methods need love too!
2023-07-28 21:15:57 +10:00
Oliver Walters
28d9e6e12b Framework for a submit data query 2023-07-28 17:39:39 +10:00
Oliver Walters
b5f8a9bc3c Account for "read only" property 2023-07-27 22:05:20 +10:00
Oliver Walters
00cbac5f06 Add icon to clear text input value 2023-07-27 21:10:05 +10:00
Oliver Walters
b54a77baad More demo data 2023-07-27 21:03:54 +10:00
Oliver Walters
292536d8ef Smaller spacing 2023-07-27 20:54:58 +10:00
Oliver Walters
542aa19c28 Don't render hidden fields 2023-07-27 20:53:52 +10:00
Oliver Walters
a3b6cb36a0 Add support for pre-form and post-form content 2023-07-27 20:52:39 +10:00
Oliver Walters
502e78d1ad Split ApiFormField into separate file 2023-07-27 20:48:43 +10:00
Oliver Walters
3a24e7a27f Create components for different form types
- Create
- Edit
- Delete
2023-07-27 20:43:02 +10:00
Oliver Walters
65a0a8ff4b Add icon support
- Cannot hash react nodes!
2023-07-27 19:22:26 +10:00
Oliver Walters
d39ce6701b Support url and email fields 2023-07-27 19:12:12 +10:00
Oliver Walters
096e210e77 Use LoadingOverlay component 2023-07-27 19:03:56 +10:00
Oliver Walters
5f9e18e0c0 Fix for optional callback function 2023-07-27 18:59:05 +10:00
Oliver Walters
b8ef27f072 Fix error messae 2023-07-27 18:43:38 +10:00
Oliver Walters
776000847f Make date input clearable 2023-07-27 18:42:38 +10:00
Oliver Walters
a0a9b0c4e6 Handle date type fields 2023-07-27 18:39:09 +10:00
Oliver Walters
6da240e07f Framework for related field query manager 2023-07-27 17:37:54 +10:00
Oliver Walters
a210a862df Add skeleton for a 'related field' 2023-07-27 16:26:42 +10:00
Oliver Walters
a6b00bb490 Use form state to update values 2023-07-27 16:09:36 +10:00
Oliver Walters
be57bee1a8 Add callback for value changes 2023-07-27 15:42:32 +10:00
Oliver Walters
fd8621fae4 Implement boolean and number fields 2023-07-27 15:32:02 +10:00
Oliver Walters
f1ddebebdb Add some more fields 2023-07-27 15:27:16 +10:00
Oliver Walters
fb6083a5ab Handle text fields 2023-07-27 15:26:03 +10:00
Oliver Walters
62caf6aaf2 Extract specific field definition 2023-07-27 15:09:29 +10:00
Oliver Walters
256ef5792c Render basic field stack, and extract field data from API 2023-07-27 15:02:29 +10:00
Oliver Walters
f8412aa971 Add cancel and submit buttons 2023-07-27 14:21:26 +10:00
Oliver Walters
c57b1c0b33 Fetch field definition data via AP 2023-07-27 14:14:03 +10:00
Oliver Walters
e1eb157485 Very basic form implementation 2023-07-27 13:33:47 +10:00
Oliver
7e7d4d01a2
Global search input drawer (#5346)
* First pass at global search input drawer

* Perform debounced query

* Build custom search query

* Render basic search results

* Flesh out more search types

* Add TODO

* Remove "bold" property

* Updates

* Improve rendering of search results

* Center loader

* Implement better "refresh" button

* Add alert on error

* Add "no results" alert

* Fix regex and whole word search
2023-07-27 13:05:39 +10:00
Matthias Mair
39464f645a
Add netlify for fast previews (#5353)
* Add netlify to readme

* add redirect for testing

* fix command

* add SPA redirect

* run desktop lighthouse tests

* add base dir

* remove base dir - use app redirect

* remove unneeded redirect

* remove status

* remove status

* static redirects

* remove toml redirect

* use toml again

* make redirect conditional

* add debug msg

* remove check section
2023-07-27 11:17:44 +10:00
Oliver
339eae53a1
[WIP] Mantine datatables (#5218)
* Create dependency-review.yml

* Create scan.yml

* Create sonar-project.properties

* add option to use sections and refactro

* translate error messages

* remove unneeded vars

* move function code

* move data inside

* add global section

* add plugin section

* use translated section titles

* add translation strings

* rename scan action

* add user settings

* use ordered data

* fix settings url

* use debounced value for strings (not choices!)

* rename contex to context

* move i18n provider up

* move theme options into seperate context/ component

* renmae statrtup vars

* move translations out

* reactivate sentry

* move i18n provider to seperate context

* move langauge state completly out of App

* use theme out

* move theme context

* move LanguageContext

* move function into state

* make sentry optional for now

* add key to accordion

* init langauge context on top

* remove unneeded css files

* move errorpage to tsx

* add translation for error page

* Add error to title

* add typecast for error

* move type definition out

* remove todo -> type was already added

* upgrade deps

* add bootstrap

* remove @mantine/core

* readd core

* switch to bootstrap

* simplify import

* Add SPA views for react #2789

* split up frontend urls

* Add settings for frontend url loading

* add new UI scaffold

* remove tracking insert

* add platform app

* ensure static indexes work too

* add lingui

* add lingui config

* add mgmt tasks

* add base locales

* settings for frontend dev

* fix typo

* update deps

* add pre-commit

* add eslint

* add testing scaffold

* fix paths

* remove error - tests trip correctly

* merge workflow

* cleanup samples

* use name inline with other tests

* Add real worl frontend tests

* setup env

* tun migrations first

* optimize setup time

* setup demo dataset

* optimize run setup

* add test for class ui

* rename

* fix typo

* and another typo

* do install

* run migrations first

* fix name

* cleanup

* use other credentials

* use other credentials

* fix qc

* move envs to qc

* remove create_site

* reduce testing env

* fix test

* fix test call

* allaccess user

* add ui plattform check

* add better check

* remove unneeded env

* enable debug

* reduce wait time

* also build frontend on static

* add sekeleton

* fix various issues

* add locales

* clean output before building

* cleanup dir

* remove bootstrap

* clean up deps

* fix settings panel

* remove assets

* move logo

* split out router

* split up chunks

* fix zustand import syntax

* bundl

* update pre-render

* use vendor splitting

* maximes space usage

* enlarge breakpoints

* remove wired color changes

* cleanup tabs

* fix error

* update auth functions

* default to mail login

* add placeholder marking

* Add text to placeholder

* readd codespell

* add another test

* add sort plugin

* add sort plugin

* sort imports

* fix order

* Add mega menu

* run pre-commit fixes

* add node min version

* Docker container (#129)

* Fix allocation check for completing build order (#5199)

- Allocation check only applies to untracked line items

* docker dev

Install required node packages to docker development image

* add import order settings

* cleanout built ui

* Add "parttable" component

* Add task to serve front-end code dev

* remove default arg from build

* remove eslint

* optimize svg

* Adds generic function for rendering a table with server-side data

* Implement pagination and sorting

* Add more example columns

* Enable selection of table data rows

* add build step for plattform UI

* fix install command

* optional parameters

* Add simple stock table

* Add optional parameter for default sort

* Change "no records" text based on query result

* Translate

* Start writing some helper functions

* Add thumbnail component

* Fill out more columns for stock table

* Add simple skeleton for table search input

* Adjust default table properties

* Change loader variant

* Drop-down for selecting table columns

* Add search text callback

* use alpine commands

* do not use cache when creating image

* More updates for inventree table

- Fix search text entry
- Add "refresh" button
- Adjust variable names

* Search input improvements

- Add button to clear search input

* Enable mantine notification system

* Add "not yet implemented" notification message

* Add download action button

* Adds ButtonMenu component

- Button which expands to show other actions
- Add hooks for adding action menus to tables

* Add basic build order list table

* Add custom filters button for table

* Allow columns to be toggled

* Column visibility saved across table loads

* Adds display for table filters

- Define interface for table filter definition
- Add component for displaying filters
- Cleanup for part table

* Cleanup

* Define type for controlling column data

* Allow custom ordering term for table column

- Replaces "sortName" concept from bootstrap-table

* Improve build order table

- Fancy progress bars

* Reimplement invoke task to serve frontend files via yarn

* Update package files with mantine

* Implement callback when record selection is changed

* Adds generic "actionbutton" component

* Remove duplicate form components

* Remove tracked files in web/static

* Remove a bunch of files

- tracked in from the wrong original branch

* More page fixes

* Revert changes to reqiurements-dev.txt

* Spelling fix

* Component updates

* Cleanup components

* Cleanup

* Use spread operator

* Add some new dummy pages for testing

* Cleanup / simplify stockitem table

* Cleanup for part table

* Cleanup build order table

* Cleanup column toggle function

* Remove hard-coded URL

* Format updates

* Update deps

* npm required for inventree-python checks

* Fix search input

- Better debouncing
- Cleaner code

* Update package files

* vite polling fixes

* Implementation for download button

- Dropdown menu with file format options

* Implement callback for download of table data

* Better state management for hidden columns

* Implement state framework for active custom filters

* Silence some errors

* Revert change to vite config

* Implement collapsible filter list group

- Save active filters to local storage
- Add some example filters to the part table
- Add FilterBadge component

* Fix page names

* Simplify search input

- useDebouncedValue

* linting

* Refactor

* Remove debug msg

* Simplify search state

* Refactor function for constructing API query

* Add tooltip

* Update icons

* Add modal for selecting filter options

* Add more table filters for part table

* render custom item for filter select

* Complete implementation for selectable filters

- Allow choices to be specified as attribute
- Allow choices to be specified as function
- Handle state management for filter choice form

* Tweak badge

* Cleanup top-level yarn and npm files

* Less roundy

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2023-07-27 10:10:07 +10:00
Oliver
941451203a
Exclude some common fields from django-import-export (#5349)
- Add "get_fields()" method to InvenTreeResource
- Override default behaviour and exclude some common fields
- Will flow down to any inheriting classes
2023-07-26 16:54:02 +10:00
Oliver
6660508326
Allow duplicate BOM items when duplicating a part (#5347) 2023-07-26 16:47:59 +10:00
Matthias Mair
c614b78faf
Add old dashboard page for now (#5325) 2023-07-26 10:10:18 +10:00
Lukas
073a275d89
Skip ready functions if not in main thread or plugins are not loaded yet (#5005)
* Skip ready functions if not in main thread or plugins are not loaded yet

* Debug integration tests

* Update ready.py

* Update ready.py

* Fix isInMainThread and isPluginRegistryLoaded ready functions

* Preload gunicorn app to only invoke the appconfig ready functions once

* debug: test prints for statistics

* Remove debug print

* Test without

* Revert "Test without"

This reverts commit 1bc18728935f2cebed38ae64ffe9f4e2f1d8e539.

* Second test

* Add checks back to part, label, user model

* Add checks back to inventree, plugin apps

* log server output for debugging

* hopefully I can get the log this time+

* Next test

* Test with --noreload

* Next test

* trigger: ci, because session expired

* block the second ready execution instead of the first

* fix: load order

* Fix test and revert gh actions workflow change

* Added all_apps method to reload machanism

* Changed detect reload mechanism

* Also trigger ready on reload

* Add skipping second reload back for testing mode

* Added doc string back

* Update InvenTree/plugin/base/integration/AppMixin.py
2023-07-26 08:33:13 +10:00
Seth Price
60f344a360
Remove container-name:s from Compose file (#5339)
* Remove `container-name:`s from Compose file

* Remove `container-name:`s from dev Compose file

I forgot this one existed, oops.
2023-07-25 12:51:37 +10:00
Oliver
bfedb9cf87
Email config fix (#5336)
* Change for DEFAULT_FROM_EMAIL

- Use USERNAME if not specified

(cherry picked from commit 487ac917c90e9fe3da4effaa9326b707ceecd321)

* Email configuration fails if DEFAULT_FROM_EMAIL not set

(cherry picked from commit 01e573c3a2702e7c21ed13b0cb44280c89d3dee1)

* Docs update
2023-07-25 11:41:17 +10:00
Ulices
c3cdb9cd7e
Fix "your" word duplicated (#5335) 2023-07-25 08:02:40 +10:00
Matthias Mair
13b9b57698
P-UI: Dependency bumps (#5298)
* add option to use sections and refactro

* translate error messages

* remove unneeded vars

* move function code

* move data inside

* add global section

* add plugin section

* use translated section titles

* add translation strings

* rename scan action

* add user settings

* use ordered data

* fix settings url

* use debounced value for strings (not choices!)

* rename contex to context

* move i18n provider up

* move theme options into seperate context/ component

* renmae statrtup vars

* move translations out

* reactivate sentry

* move i18n provider to seperate context

* move langauge state completly out of App

* use theme out

* move theme context

* move LanguageContext

* move function into state

* make sentry optional for now

* add key to accordion

* init langauge context on top

* remove unneeded css files

* move errorpage to tsx

* add translation for error page

* Add error to title

* add typecast for error

* move type definition out

* remove todo -> type was already added

* upgrade deps

* add bootstrap

* remove @mantine/core

* readd core

* switch to bootstrap

* simplify import

* Add SPA views for react #2789

* split up frontend urls

* Add settings for frontend url loading

* add new UI scaffold

* remove tracking insert

* add platform app

* ensure static indexes work too

* add lingui

* add lingui config

* add mgmt tasks

* add base locales

* settings for frontend dev

* fix typo

* update deps

* add pre-commit

* add eslint

* add testing scaffold

* fix paths

* remove error - tests trip correctly

* merge workflow

* cleanup samples

* use name inline with other tests

* Add real worl frontend tests

* setup env

* tun migrations first

* optimize setup time

* setup demo dataset

* optimize run setup

* add test for class ui

* rename

* fix typo

* and another typo

* do install

* run migrations first

* fix name

* cleanup

* use other credentials

* use other credentials

* fix qc

* move envs to qc

* remove create_site

* reduce testing env

* fix test

* fix test call

* allaccess user

* add ui plattform check

* add better check

* remove unneeded env

* enable debug

* reduce wait time

* also build frontend on static

* add sekeleton

* fix various issues

* add locales

* clean output before building

* cleanup dir

* remove bootstrap

* clean up deps

* fix settings panel

* remove assets

* move logo

* split out router

* split up chunks

* fix zustand import syntax

* bundl

* update pre-render

* use vendor splitting

* maximes space usage

* enlarge breakpoints

* remove wired color changes

* cleanup tabs

* fix error

* update auth functions

* default to mail login

* add placeholder marking

* Add text to placeholder

* readd codespell

* add another test

* add sort plugin

* add sort plugin

* sort imports

* fix order

* Add mega menu

* run pre-commit fixes

* add node min version

* Docker container (#129)

* Fix allocation check for completing build order (#5199)

- Allocation check only applies to untracked line items

* docker dev

Install required node packages to docker development image

* add import order settings

* cleanup settings

* cleanup dashboard

* clanup part tab

* refactor header to only use 1 line

* cleanup reqs for py3.9

* remove compiled UI

* revert reqs change

* cleanup tasks

* cleanout built ui

* remove default user

* cleanup package.json

* fix doctip

* remove sentry

* optimize loading

* reset versions

* clean

* factor out menu items

* refactor Navtabs

* refactor HoverMenu

* remove part

* remove prettier

* remove default arg from build

* remove eslint

* Merge branch 'plattform' of https://github.com/matmair/InvenTree into platform-ui_base

* optimize svg

* add build step for plattform UI

* fix install command

* fix test

* remove extra test

* set default host if none is set

* set nicer names

* fix tests

* fix logged-in test

* update translations

* ensure more path matches

* make loading of serverrefs dynamic

* use default radius

* fix issues / code smells

* clean code smell

* fix password reset

* fix error messages

* detect small screens

* use loader meachanism for views

* refactor structure

* move auth functions out

* use text

* refactor defaults

* Add email login
FR] Add email link based logins Closes #3531

* fix name error

* fix reqs

* fix backend for magic login

* fix frontend

* remove unused route

* remove now unneeded test section

* cleanup code

* add navigation header

* fix logo component for nesting

* factor out menu

* refactor style

* clean code

* Translate items and use unique ids

* use alpine commands

* increase margins to remove drawer scroller

* only render plugins if they are defined

* remove sample content

* fix assertation

* open on hover

* refactor

* merge fix

* cleanup navigation drawer

* change dependencies for UI testing

* add highlight filter

* Add correct menu items

* move design component out

* move pre-commit out

* move deps again

* move js styles in

* revert CI changes

* remove unneeded exclution

* changed placeholder user

* refactored EditButton to component

* refactored app loading to useEffect

* moved color lookup into global scope

* reafactored UserPanel render block

* marked placeholder pages in doc links

* made doc tooltip optional for MenuLink

* changed MenuLinkItem names

* fixes missing Link item in MenuLink

* fixed merge error

* bump deps

* bump python

* downgrade for py3.9

* bump further

---------

Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2023-07-24 08:32:18 +10:00
Matthias Mair
da4e506411
Added install step to trans (#5327) 2023-07-24 08:31:19 +10:00
Marcel Pörner
9b377ccfbf
Fix admin url to point to right model (#5319) 2023-07-23 22:32:14 +10:00
Miklós Márton
25334c0d91
Fix selecting the default stock item template (#5318) 2023-07-23 19:42:56 +10:00
Miklós Márton
feeccc5c91
Fix selecting default label template (#5317) 2023-07-23 17:09:41 +10:00
Matthias Mair
4a211dd48d
P UI: Show server version on auth (#5314)
* added language toggle component

* added language and theme controls onto start page

* moved host selection out of auth

* optimized rendering

* make server option less obvious

* changed EditButton save symbol

* longer welcome text

* removed ColorToggle color schema

* reduced code

* disabled host selection when options are changing

* fix type error

* use GH reporter

* fix tests?

* compile frontend

* fix assertation

* revert unneeded change

* split up into more components

* add server version info

* fix merge

* fix merge
2023-07-23 12:22:54 +10:00
Oliver
e6cd0b05ce
Remove error message (#5315)
- Polluting logs without benefit
2023-07-23 12:21:33 +10:00
Matthias Mair
507205ca78
Add DIO identifier (#5312)
* Add info for installer, branch, publisher

* include version info

* fix permissions

* fix typo

* add more info

* use GH url

* fix node

* remove publisher

* remove more logging

* Add info to version view

* enable branch discovery when not set

* fix ref to github version

* add branch to about dialog

* use precise plattform information - if no env is set

* fix ref names

* load VERSION info

* rename plattform to target

* extend installer var

* add generic plattform info

* add docs for version info

* add more info

* add installer codes

* Add DIO code
2023-07-23 09:09:28 +10:00
Oliver
4e0f22aa00
Typo fix (#5307)
* successfull -> successful

* Fix backtick
2023-07-22 22:54:01 +10:00
Matthias Mair
f227315ad1
P-UI: Fast language / theme / server selection (#5301)
* added language toggle component

* added language and theme controls onto start page

* moved host selection out of auth

* optimized rendering

* make server option less obvious

* changed EditButton save symbol

* longer welcome text

* removed ColorToggle color schema

* reduced code

* disabled host selection when options are changing

* fix type error

* use GH reporter

* fix tests?

* compile frontend

* fix assertation

* revert unneeded change

* split up into more components

* separated functions / use cases for LanguageToggle more

* moved color toggle to profile

* moved language out of main menu into profile

* remapped settings link
2023-07-22 22:19:19 +10:00
Oliver
f70294b247
Stock installed table fix (#5305)
* Prevent installed items from being hidden

* Fix parent / child relationship
2023-07-21 23:53:58 +10:00