Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bookworm #530

Draft
wants to merge 285 commits into
base: dev
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
285 commits
Select commit Hold shift + click to select a range
23594bc
fix: temp fix for reactivity problems on nested obj request
Axolotle Mar 12, 2024
1d2aa33
migration: remove @vue/compat + update to vue 3.4.21
Axolotle Mar 12, 2024
bba1aa8
migration(vue3): COMPILER_V_ON_NATIVE
Axolotle Mar 12, 2024
ccc7298
migration(vue-i18n): legacy mode off
Axolotle Mar 12, 2024
1f45899
migration: bootstrap-vue to bootstrap-vue-next
Axolotle Mar 13, 2024
ad2f792
refactor: rm previous light/dark theme hacks
Axolotle Mar 13, 2024
4f047d9
migration(vue3): COMPONENT_V_MODEL
Axolotle Mar 14, 2024
5892842
migration: rework dark theme enabling
Axolotle Mar 14, 2024
c7bd9af
migration(bvn): add BSkeleton & BSkeletonWrapper component missing in…
Axolotle Mar 14, 2024
6241ba4
migration(bs5): media-breakpoint-down(): use breakpoint itself instea…
Axolotle Mar 14, 2024
9eb4b29
migration(bs5): update to new color functions
Axolotle Mar 14, 2024
6d26ef5
migration(bs5): rename left/right classes to start/end
Axolotle Mar 14, 2024
915023d
migration(bs5): update scss variables (colors, etc.)
Axolotle Mar 14, 2024
622e5be
migration(bvn): update modals and modal system
Axolotle Mar 17, 2024
6229e40
fix: validation on blur
Axolotle Mar 18, 2024
2156196
fix: DomainAdd event bubbling
Axolotle Mar 18, 2024
6be1609
migration(vuex): currentRoute is now a ref
Axolotle Mar 18, 2024
9ec1fbd
fix: ConfigPanels event bubbling
Axolotle Mar 18, 2024
cb7b13f
fix: temp fix for RoutableTabs link active class
Axolotle Mar 19, 2024
cc02444
fix: ExplainWhat popover
Axolotle Mar 19, 2024
620694c
fix: CardDeckFeed slots slicing + keyboard navigation
Axolotle Mar 19, 2024
c730de8
fix: FileItem display
Axolotle Mar 19, 2024
4b33e67
fix: misc component issues
Axolotle Mar 19, 2024
94956c5
fix: adapt `choices` data structure
Axolotle Mar 19, 2024
e87d76e
fix: Diagnosis ignored count and display
Axolotle Mar 19, 2024
183e281
fix: css misc fixes
Axolotle Mar 19, 2024
e53c2c1
migration(bs5): font-weight-* to fw-*
Axolotle Mar 19, 2024
357405d
migration(bvn): remove no longer necessary BInputGroupAppend|Prepend
Axolotle Mar 19, 2024
26b691d
migration(bs5): r/sr-only/visually-hidden
Axolotle Mar 19, 2024
dc530e3
migration(bvn): BAlert needs explicit show value
Axolotle Mar 19, 2024
e4ab46b
chore: update yarn.lock
Axolotle Mar 19, 2024
c28d6dd
rename js files to ts
Axolotle May 17, 2024
f67f504
refactor: add ts libs and config
Axolotle May 17, 2024
0f67370
refactor: add ts libs and config
Axolotle May 17, 2024
cc7952a
Update changelog for 12.0.1
alexAubin Jul 26, 2024
dd4bede
Require yunohost >= 12.0
alexAubin Jul 30, 2024
2cce638
Merge remote-tracking branch 'origin/dev' into bookworm
alexAubin Jul 30, 2024
7123ba6
refactor: quickly turn components to script setup + ts
Axolotle May 29, 2024
7c6092e
refactor: mv ReadOnlyField -> FormFieldReadonly + AdressInputSelect -…
Axolotle Jul 1, 2024
cdaf8a7
ts: add api modules typing
Axolotle Jul 5, 2024
f9ddae3
refactor: simplify tree class + add typing
Axolotle Jul 5, 2024
0414f82
refactor: AdressItem typing
Axolotle Jul 5, 2024
5cd0ed2
refactor: CheckboxItem typing
Axolotle Jul 5, 2024
15b512f
refactor: FileItem typing
Axolotle Jul 5, 2024
9a48aa1
refactor: InputItem typing
Axolotle Jul 5, 2024
ea7f070
refactor: SelectItem typing
Axolotle Jul 5, 2024
2977ed4
refactor: TagsItem typing
Axolotle Jul 5, 2024
0f8fbd4
refactor: TagsSelectizeItem typing
Axolotle Jul 5, 2024
32da3d9
refactor: TextAreaItem typing
Axolotle Jul 5, 2024
906d9ca
refactor: ButtonItem typing
Axolotle Jul 5, 2024
4242b55
refactor: DisplayTextItem typing
Axolotle Jul 5, 2024
cc90c50
refactor: MarkdownItem typing
Axolotle Jul 5, 2024
b9cf8b9
refactor: ReadOnlyAlertItem typing
Axolotle Jul 5, 2024
01ff371
refactor: FormField ts + composition
Axolotle Jul 6, 2024
50fda78
refactor: FormFieldReadonly ts + composition
Axolotle Jul 6, 2024
509f68e
ts: add FormFieldDisplay types
Axolotle Jul 6, 2024
f8b7f89
feat: add FormFieldMultiple component to handle array form element
Axolotle Jul 9, 2024
3c3f50c
refactor: CardForm ts + composition
Axolotle Jul 6, 2024
25482b6
refactor: add useInitialQueries composable to replace ViewBase querie…
Axolotle Jul 6, 2024
3054c3e
refactor: use useInitialQueries in views
Axolotle Jul 6, 2024
85b4980
feat: add useForm composable
Axolotle Jul 6, 2024
a22ee09
feat: add useArrayRule to generate rules for each array elem
Axolotle Jul 11, 2024
026ccb6
refactor: use useForm in some views
Axolotle Jul 8, 2024
3e60b96
ts: add useAutoModal typing
Axolotle Jul 8, 2024
501bce4
feat: add useSearch composable to search in Array or AnyTreeNode
Axolotle Jul 9, 2024
8bb2451
refactor: use useSearch in views
Axolotle Jul 9, 2024
00fe9f4
ts: add i18n typing
Axolotle Jul 11, 2024
1634aa3
chore: update eslint rules
Axolotle Jul 11, 2024
fbf861a
chore: add vueuse dep
Axolotle Jul 11, 2024
0262aaa
chore: update bootstrap-vue-next dep
Axolotle Jul 11, 2024
317bf7f
refactor: use useForm + rework mapStoreGetSet of ToolWebadmin
Axolotle Jul 11, 2024
f7c5349
feat: add `asTab` prop to YCard to render the card without header and…
Axolotle Jul 22, 2024
dbd753c
ts: add core config panels types
Axolotle Jul 22, 2024
83e09d6
refactor: rework config panels and options formating
Axolotle Jul 22, 2024
016acc7
ts: add types to common helpers
Axolotle Jul 22, 2024
ab30cb8
ts: type core data formating functions
Axolotle Jul 24, 2024
7a1b4ba
feat: add useConfigPanels composable
Axolotle Jul 24, 2024
d3f843b
feat: add config panels sections display in CardForm
Axolotle Jul 24, 2024
8af40dd
refactor: update ConfigPanels component to receive useConfigPanels data
Axolotle Jul 24, 2024
6786385
refactor: update config panels views using useConfigPanels
Axolotle Jul 25, 2024
4f59343
refactor: rework form api formating
Axolotle Jul 25, 2024
67ab4a2
refactor: reflect formatForm changes to views
Axolotle Jul 25, 2024
5408b05
fix: `visible` + `enabled` reactivity
Axolotle Jul 25, 2024
ea6cf5e
refactor: update AppInstall with async useForm
Axolotle Jul 25, 2024
be782c7
refactor: update validators with ref and typing
Axolotle Jul 25, 2024
3c6f4f3
refactor: rm no longer used configpanel related components
Axolotle Jul 25, 2024
a875d6f
fix: update ColorVariant => DEFAULT_STATUS_ICON
Axolotle Jul 25, 2024
9fac9f3
ts: add typing to filters
Axolotle Jul 25, 2024
6e6ce88
refactor: use useForm in ToolFirewall port form
Axolotle Jul 25, 2024
49cfe93
chore: rename vuex types overrides to generic 'overrides'
Axolotle Jul 29, 2024
144b276
ts: add vue-router custom RouteMeta types
Axolotle Jul 29, 2024
f3c1931
refactor: update locales handling
Axolotle Jul 29, 2024
2edfe94
refactor: reflect other settings changes
Axolotle Jul 29, 2024
c34e05d
refactor: rework ToolWebadmin form view
Axolotle Jul 29, 2024
cb344f2
refactor: merge all api calls args in one object
Axolotle Aug 5, 2024
254e1ac
refactor: requests handling
Axolotle Aug 5, 2024
9f8ee2f
refactor: APIError handling
Axolotle Aug 5, 2024
aabd7d0
refactor: reconnection handling
Axolotle Aug 5, 2024
ab2c8a9
chore: move requests modals to /components
Axolotle Aug 5, 2024
e553925
refactor: update QueryHeader component to new requests
Axolotle Aug 5, 2024
6ad9728
refactor: update YSpinner to use useSettings
Axolotle Aug 5, 2024
fa22d11
refactor: update MessageListGroup to new requests messages
Axolotle Aug 5, 2024
4979058
refactor: update HistoryConsole to new request messages + use accordion
Axolotle Aug 5, 2024
13ce366
refactor: rework ModalOverlay to new requests
Axolotle Aug 5, 2024
f0bd35e
refactor: rework ModalWaiting to new requests
Axolotle Aug 5, 2024
519de69
refactor: rework ModalWarning to new requests
Axolotle Aug 5, 2024
24b28b3
refactor: rework ModalError to new requests
Axolotle Aug 5, 2024
0cf60ea
refactor: rework ModalReconnecting to new requests
Axolotle Aug 5, 2024
f05d576
feat: add new MainLayout to handle lock and modals with Suspense (asy…
Axolotle Aug 5, 2024
deae132
chore: mv store/infos.ts -> composables/useInfos.ts
Axolotle Aug 5, 2024
60b5134
refactor: turn infos store to global state
Axolotle Aug 5, 2024
66f4864
chore: mv store/data.ts to composables/data.ts
Axolotle Aug 5, 2024
13dc8de
refactor: turn data store to global state with cache handing
Axolotle Aug 5, 2024
b3df504
refactor: update api calls 'cachePath' + useInitialQueries
Axolotle Aug 5, 2024
de3c680
refactor: use data global state in views
Axolotle Aug 5, 2024
1b14c78
chore: rm remaning stores and vuex
Axolotle Aug 5, 2024
931e74f
fix: form types & useForm fields rules reactivity
Axolotle Aug 11, 2024
59f7b59
refactor: add errors when data is not present in cache
Axolotle Aug 11, 2024
e0816d1
feat: add more complex skeleton definitions
Axolotle Aug 11, 2024
5b5cac5
feat: add api.refetch method that force reload a view and its data qu…
Axolotle Aug 11, 2024
da02692
refactor: normalize status to variants + icons
Axolotle Aug 11, 2024
1f1dac1
refactor: rework useSearch and ViewSearch to no longer use ViewBase a…
Axolotle Aug 11, 2024
c17da2c
fix: add maybeMainDomain getter which do not error out
Axolotle Aug 11, 2024
b2a233f
refactor: update form fields definition in views
Axolotle Aug 11, 2024
354a06a
refactor: return the same content when cache is not present
Axolotle Aug 12, 2024
311d5fd
feat: add cache policy from settings
Axolotle Aug 12, 2024
cba781d
feat: add useFormQuery to pair url params and a form
Axolotle Aug 12, 2024
837e927
refactor: rework TagsSelectizeItem with multiple choices types
Axolotle Aug 12, 2024
7f867e3
fix: misc
Axolotle Aug 12, 2024
38859f5
refactor: rework async AppCatalog
Axolotle Aug 12, 2024
a5714e5
refactor: rework async AppInfo
Axolotle Aug 12, 2024
301fd4d
refactor: rework async AppInstall
Axolotle Aug 12, 2024
2478f53
refactor: rework async AppList
Axolotle Aug 12, 2024
ccc65b0
refactor: rework async BackupCreate
Axolotle Aug 12, 2024
a0dc769
refactor: rework async BackupInfo
Axolotle Aug 12, 2024
dd6522a
refactor: rework async BackupList
Axolotle Aug 12, 2024
50a4640
refactor: rework async DiagnosisView
Axolotle Aug 12, 2024
20bbdb7
refactor: rework async DomainAdd
Axolotle Aug 12, 2024
e99a50e
refactor: rework async DomainDns
Axolotle Aug 12, 2024
ddf872d
refactor: rework async DomainInfo
Axolotle Aug 12, 2024
3e44d95
refactor: rework async DomainList
Axolotle Aug 12, 2024
fe38000
refactor: rework async GroupList
Axolotle Aug 12, 2024
e8b0e3b
refactor: rework async ServiceInfo
Axolotle Aug 12, 2024
b915490
refactor: rework async ServiceList
Axolotle Aug 12, 2024
7325781
refactor: rework async ToolFirewall
Axolotle Aug 12, 2024
27f87ee
refactor: rework async ToolLog
Axolotle Aug 12, 2024
68e6c78
refactor: rework async ToolLogs
Axolotle Aug 12, 2024
ab506a5
refactor: rework async ToolMigrations
Axolotle Aug 12, 2024
09e9c27
refactor: rework async ToolSettings
Axolotle Aug 12, 2024
f7c563a
refactor: rework async SystemUpdate
Axolotle Aug 12, 2024
1e2a1e2
refactor: rework async UserCreate
Axolotle Aug 12, 2024
66bf3a5
refactor: rework async UserEdit
Axolotle Aug 12, 2024
9dcdc65
refactor: rework async UserInfo
Axolotle Aug 12, 2024
06ce2a5
refactor: rework async UserList
Axolotle Aug 12, 2024
8507e35
ts: types to ToolPower
Axolotle Aug 12, 2024
a12e168
refactor: format InputItem type=number as number
Axolotle Aug 12, 2024
c786d47
feat: add routes skeletons
Axolotle Aug 12, 2024
c9eedc4
chore: rm no longer used useInitialQueries.ts
Axolotle Aug 13, 2024
4f0df60
chore: rm no longer used ViewBase component
Axolotle Aug 13, 2024
445b1bd
refactor: use YAlert everywhere
Axolotle Aug 13, 2024
de143bb
chore: lint
Axolotle Aug 13, 2024
fe81ebb
chore: update components.d.ts
Axolotle Aug 13, 2024
181c1e1
chore: update package.json
Axolotle Aug 13, 2024
fcfcd76
fix: scss text-$variant contrast, font-weight and outlined button var…
Axolotle Aug 15, 2024
42e97c7
fix: improve skeletons
Axolotle Aug 15, 2024
f9b4fd4
chore: rm no longer used CardButtonsSkeleto
Axolotle Aug 15, 2024
4c9938e
feat: add quick add item dropdown in home
Axolotle Aug 16, 2024
55d8170
fix: buttons should not be rotated + rename prop collapsable -> colla…
Axolotle Aug 16, 2024
eb0597b
fix: misc styling fixes
Axolotle Aug 17, 2024
457225b
fix: configpanels form + validation
Axolotle Aug 18, 2024
8b16a3e
fix: alert's icon variants
Axolotle Aug 18, 2024
4542ae0
feat: add YListItem to display common list fields
Axolotle Aug 21, 2024
12399ca
fix: views's modal variant and position
Axolotle Aug 21, 2024
7f79fc8
feat: show modal on action error when no form
Axolotle Aug 21, 2024
008c2c5
fix: misc form related issues
Axolotle Aug 21, 2024
9649627
fix: InputItem: return empty string for none value in type number
Axolotle Aug 21, 2024
3e877c1
fix: SelectItem: handle `_none` choice
Axolotle Aug 21, 2024
66f0ed2
fix: waiting modal flickering when quick response or error
Axolotle Aug 21, 2024
fa29cbb
fix: Diagnosis badges reactivity
Axolotle Aug 21, 2024
5ad3738
fix: cache payloads + delay data deletion to avoid view error before …
Axolotle Aug 21, 2024
6cf9fa3
fix: ToolLog moar logs button condition
Axolotle Aug 21, 2024
55cdc2a
fix: new tactic to display properly translated title and breadcrumb a…
Axolotle Aug 21, 2024
65da87b
fix: postinstall form
Axolotle Aug 21, 2024
bdb283a
fix: load base data before view data
Axolotle Aug 21, 2024
6888ccb
fix: use different strategy for domains not available in DomainForm i…
Axolotle Aug 21, 2024
2ba27d6
fix: redirect to home in PostInstall if already installed
Axolotle Aug 21, 2024
d2cf952
refactor: use defineModel
Axolotle Aug 21, 2024
ee6f935
fix: wrong route name in breadcrumb
Axolotle Aug 21, 2024
4004e68
chore: lint
Axolotle Aug 21, 2024
d60dc92
chore: downgrade eslint + upgrade vueuse
Axolotle Aug 21, 2024
052da9d
chore: update components.d.ts
Axolotle Aug 21, 2024
931c0bc
chore: update yarn.lock
Axolotle Aug 21, 2024
bb49879
chore: rm tsconfig.node.json
Axolotle Aug 23, 2024
d549d3f
fix: misc ts errors
Axolotle Aug 23, 2024
75925a2
chore: rm some FIXME
Axolotle Aug 23, 2024
fbde9f9
locales: add missing keys
Axolotle Aug 23, 2024
f18825d
Merge remote-tracking branch 'origin/bookworm' into vue3
Axolotle Aug 23, 2024
be8b077
chore: add prettier ignore
Axolotle Aug 23, 2024
7859b22
fix: ConfigPanel help message
Axolotle Aug 29, 2024
f578b19
Update changelog for 12.0.2
alexAubin Aug 31, 2024
e02eaf5
fix: update router key before router key to avoid double api queries
Axolotle Sep 5, 2024
6c0aef4
fix: show login view on unauthorized api error
Axolotle Sep 5, 2024
4c3bd73
fix: handle api not responding errors
Axolotle Sep 5, 2024
9a55416
fix: handle errors in history that are not actions
Axolotle Sep 5, 2024
c294b17
fix: handle api queries errors that prevents views to display
Axolotle Sep 5, 2024
7a8061e
fix: update router key in router after hook
Axolotle Sep 5, 2024
79db49c
fix: also close modal on APIErrorLog
Axolotle Sep 9, 2024
9737882
fix: deepSetErrors form: do not reset deep error if not already there
Axolotle Sep 9, 2024
99fdd4f
refactor: add `postinstall` prop to DomainForm to query or not domains
Axolotle Sep 9, 2024
5f820c1
feat: add `subdomain` radio choice to DomainForm with auto install le…
Axolotle Sep 9, 2024
5e0c3e5
feat: add ModalForm component
Axolotle Sep 9, 2024
cdf6ee4
feat: add `modal` prop to DomainForm to display has a modal
Axolotle Sep 9, 2024
95192f8
feat: add ability to add a domain in the AppInstall view from the `do…
Axolotle Sep 9, 2024
8393410
fix: dns push records type + display
Axolotle Sep 10, 2024
93dd810
feat: add tos acknowledgement in post install
Axolotle Sep 11, 2024
bfd70bc
feat: allow html in CheckboxItem labels
Axolotle Sep 11, 2024
993c0f7
feat: add 'checked' validator
Axolotle Sep 11, 2024
c4836c1
feat: add tos acknowledgement in DomainForm for dyn domains
Axolotle Sep 11, 2024
a21f955
feat: add TOS link in footer
Axolotle Sep 11, 2024
b79c81f
i18n: add new TOS translations
Axolotle Sep 11, 2024
8a96643
fix: display wrong password or username error on failed login
Axolotle Sep 12, 2024
43f8e8b
feat: save logged in username
Axolotle Sep 12, 2024
4f2e693
feat: ask confirmation before removing current user from 'admins' group
Axolotle Sep 12, 2024
d20619e
feat: display custom antifeature text in AppInstall
Axolotle Sep 12, 2024
322c3dc
Merge remote-tracking branch 'origin/bookworm' into vue3
Axolotle Sep 12, 2024
4875c0d
i18n: escape `@` char
Axolotle Sep 12, 2024
10579ad
chore: clean locales
Axolotle Sep 12, 2024
a9fa376
i18n: replace `{c}` with `{n}` for pluralization
Axolotle Sep 12, 2024
6d5911e
Merge pull request #575 from YunoHost/vue3
alexAubin Sep 12, 2024
2be0d28
refactor(DomainForm): get all domains cert status instead of invidual…
Axolotle Sep 13, 2024
cc3f8c4
i18n: TOS precisions
Axolotle Sep 15, 2024
fa53aff
feat: display domain auto dns not configured if option is activated
Axolotle Sep 15, 2024
07bdfd0
fix: do not display manual dns card if domain is special tld
Axolotle Sep 15, 2024
6ef1d11
i18n: remove count info in `items`
Axolotle Sep 15, 2024
76342bb
fix: not translated item name in `TagsSelectizeItem`
Axolotle Sep 15, 2024
667305b
Merge pull request #582 from YunoHost/bug-fixes
alexAubin Sep 15, 2024
0d13843
chore: bump packages versions
Axolotle Sep 16, 2024
96ba919
chore: update yarn.lock
Axolotle Sep 16, 2024
06a8264
refactor: update date-fns locales files location
Axolotle Sep 16, 2024
2658c44
feat(Catalog): when no search results warn if criterias or propose to…
Axolotle Sep 16, 2024
e53f0e2
feat(AppInstall): if app lowquality or not working, display a message…
Axolotle Sep 16, 2024
effab79
Merge pull request #583 from YunoHost/app-catalog-wishlist
alexAubin Sep 16, 2024
049774e
Merge pull request #580 from YunoHost/enh-tos
alexAubin Sep 16, 2024
54cbdef
Merge pull request #581 from YunoHost/enh-auto-dns
alexAubin Sep 16, 2024
bb5c4d4
Merge pull request #584 from YunoHost/update-deps
alexAubin Sep 16, 2024
7a567ea
Merge pull request #579 from YunoHost/enh-domain-add-subdomain
alexAubin Sep 16, 2024
8efa2e4
Update changelog for 12.0.3
alexAubin Sep 16, 2024
6dde7f1
fix: v-b-tooltip doesn't work on build, use Popover component instead
Axolotle Sep 16, 2024
0cf55c5
fix: FormField links
Axolotle Sep 16, 2024
b750780
Update changelog for 12.0.3.1
alexAubin Sep 25, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 11 additions & 3 deletions app/.eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,22 @@ module.exports = {
node: true,
},
extends: [
'plugin:vue/strongly-recommended',
'plugin:vue/vue3-recommended',
'eslint:recommended',
'@vue/eslint-config-typescript',
'plugin:prettier/recommended',
],
rules: {
'no-unused-vars': [
'vue/no-v-html': 'off',
'no-unused-vars': 'off',
'@typescript-eslint/no-unused-vars': [
'warn',
{ varsIgnorePattern: '^_', destructuredArrayIgnorePattern: '^_' },
{
varsIgnorePattern: '^_',
argsIgnorePattern: '^_',
destructuredArrayIgnorePattern: '^_',
},
],
'no-console': ['error', { allow: ['warn', 'error'] }],
},
}
126 changes: 126 additions & 0 deletions app/components.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
/* eslint-disable */
// @ts-nocheck
// Generated by unplugin-vue-components
// Read more: https://github.com/vuejs/core/pull/3399
export {}

/* prettier-ignore */
declare module 'vue' {
export interface GlobalComponents {
AdressItem: typeof import('./src/components/globals/formItems/AdressItem.vue')['default']
AppCatalogSkeleton: typeof import('./src/components/globals/skeletons/AppCatalogSkeleton.vue')['default']
BAccordion: typeof import('bootstrap-vue-next')['BAccordion']
BAccordionItem: typeof import('bootstrap-vue-next')['BAccordionItem']
BBadge: typeof import('bootstrap-vue-next')['BBadge']
BBreadcrumb: typeof import('bootstrap-vue-next')['BBreadcrumb']
BBreadcrumbItem: typeof import('bootstrap-vue-next')['BBreadcrumbItem']
BButton: typeof import('bootstrap-vue-next')['BButton']
BButtonGroup: typeof import('bootstrap-vue-next')['BButtonGroup']
BButtonToolbar: typeof import('bootstrap-vue-next')['BButtonToolbar']
BCard: typeof import('bootstrap-vue-next')['BCard']
BCardBody: typeof import('bootstrap-vue-next')['BCardBody']
BCardGroup: typeof import('bootstrap-vue-next')['BCardGroup']
BCardHeader: typeof import('bootstrap-vue-next')['BCardHeader']
BCardText: typeof import('bootstrap-vue-next')['BCardText']
BCardTitle: typeof import('bootstrap-vue-next')['BCardTitle']
BCol: typeof import('bootstrap-vue-next')['BCol']
BCollapse: typeof import('bootstrap-vue-next')['BCollapse']
BDropdown: typeof import('bootstrap-vue-next')['BDropdown']
BDropdownDivider: typeof import('bootstrap-vue-next')['BDropdownDivider']
BDropdownForm: typeof import('bootstrap-vue-next')['BDropdownForm']
BDropdownGroup: typeof import('bootstrap-vue-next')['BDropdownGroup']
BDropdownItem: typeof import('bootstrap-vue-next')['BDropdownItem']
BDropdownItemButton: typeof import('bootstrap-vue-next')['BDropdownItemButton']
BDropdownText: typeof import('bootstrap-vue-next')['BDropdownText']
BForm: typeof import('bootstrap-vue-next')['BForm']
BFormCheckbox: typeof import('bootstrap-vue-next')['BFormCheckbox']
BFormCheckboxGroup: typeof import('bootstrap-vue-next')['BFormCheckboxGroup']
BFormFile: typeof import('bootstrap-vue-next')['BFormFile']
BFormGroup: typeof import('bootstrap-vue-next')['BFormGroup']
BFormInput: typeof import('bootstrap-vue-next')['BFormInput']
BFormInvalidFeedback: typeof import('bootstrap-vue-next')['BFormInvalidFeedback']
BFormRadio: typeof import('bootstrap-vue-next')['BFormRadio']
BFormRadioGroup: typeof import('bootstrap-vue-next')['BFormRadioGroup']
BFormSelect: typeof import('bootstrap-vue-next')['BFormSelect']
BFormSelectOption: typeof import('bootstrap-vue-next')['BFormSelectOption']
BFormTag: typeof import('bootstrap-vue-next')['BFormTag']
BFormTags: typeof import('bootstrap-vue-next')['BFormTags']
BFormTextarea: typeof import('bootstrap-vue-next')['BFormTextarea']
BImg: typeof import('bootstrap-vue-next')['BImg']
BInputGroup: typeof import('bootstrap-vue-next')['BInputGroup']
BInputGroupText: typeof import('bootstrap-vue-next')['BInputGroupText']
BLink: typeof import('bootstrap-vue-next')['BLink']
BListGroup: typeof import('bootstrap-vue-next')['BListGroup']
BListGroupItem: typeof import('bootstrap-vue-next')['BListGroupItem']
BModal: typeof import('bootstrap-vue-next')['BModal']
BModalOrchestrator: typeof import('bootstrap-vue-next')['BModalOrchestrator']
BNav: typeof import('bootstrap-vue-next')['BNav']
BNavbar: typeof import('bootstrap-vue-next')['BNavbar']
BNavbarBrand: typeof import('bootstrap-vue-next')['BNavbarBrand']
BNavbarNav: typeof import('bootstrap-vue-next')['BNavbarNav']
BNavItem: typeof import('bootstrap-vue-next')['BNavItem']
BNavText: typeof import('bootstrap-vue-next')['BNavText']
BOverlay: typeof import('bootstrap-vue-next')['BOverlay']
BPopover: typeof import('bootstrap-vue-next')['BPopover']
BProgress: typeof import('bootstrap-vue-next')['BProgress']
BProgressBar: typeof import('bootstrap-vue-next')['BProgressBar']
BRow: typeof import('bootstrap-vue-next')['BRow']
BSkeleton: typeof import('./src/components/globals/skeletons/BSkeleton.vue')['default']
BSkeletonWrapper: typeof import('./src/components/globals/skeletons/BSkeletonWrapper.vue')['default']
BTab: typeof import('bootstrap-vue-next')['BTab']
BTable: typeof import('bootstrap-vue-next')['BTable']
BTabs: typeof import('bootstrap-vue-next')['BTabs']
ButtonItem: typeof import('./src/components/globals/formItems/ButtonItem.vue')['default']
CardCollapse: typeof import('./src/components/CardCollapse.vue')['default']
CardDeckFeed: typeof import('./src/components/CardDeckFeed.vue')['default']
CardForm: typeof import('./src/components/globals/CardForm.vue')['default']
CardFormSkeleton: typeof import('./src/components/globals/skeletons/CardFormSkeleton.vue')['default']
CardInfoSkeleton: typeof import('./src/components/globals/skeletons/CardInfoSkeleton.vue')['default']
CardListSkeleton: typeof import('./src/components/globals/skeletons/CardListSkeleton.vue')['default']
CheckboxItem: typeof import('./src/components/globals/formItems/CheckboxItem.vue')['default']
ConfigPanels: typeof import('./src/components/ConfigPanels.vue')['default']
DescriptionRow: typeof import('./src/components/globals/DescriptionRow.vue')['default']
DisplayTextItem: typeof import('./src/components/globals/formItems/DisplayTextItem.vue')['default']
ExplainWhat: typeof import('./src/components/globals/ExplainWhat.vue')['default']
FileItem: typeof import('./src/components/globals/formItems/FileItem.vue')['default']
FormField: typeof import('./src/components/globals/FormField.vue')['default']
FormFieldMultiple: typeof import('./src/components/globals/FormFieldMultiple.vue')['default']
FormFieldReadonly: typeof import('./src/components/globals/FormFieldReadonly.vue')['default']
InputItem: typeof import('./src/components/globals/formItems/InputItem.vue')['default']
LazyRenderer: typeof import('./src/components/LazyRenderer.vue')['default']
ListGroupSkeleton: typeof import('./src/components/globals/skeletons/ListGroupSkeleton.vue')['default']
MainLayout: typeof import('./src/components/layouts/MainLayout.vue')['default']
MarkdownItem: typeof import('./src/components/globals/formItems/MarkdownItem.vue')['default']
MessageListGroup: typeof import('./src/components/MessageListGroup.vue')['default']
ModalError: typeof import('./src/components/modals/ModalError.vue')['default']
ModalForm: typeof import('./src/components/globals/ModalForm.vue')['default']
ModalOverlay: typeof import('./src/components/modals/ModalOverlay.vue')['default']
ModalReconnecting: typeof import('./src/components/modals/ModalReconnecting.vue')['default']
ModalWaiting: typeof import('./src/components/modals/ModalWaiting.vue')['default']
ModalWarning: typeof import('./src/components/modals/ModalWarning.vue')['default']
QueryHeader: typeof import('./src/components/QueryHeader.vue')['default']
ReadOnlyAlertItem: typeof import('./src/components/globals/formItems/ReadOnlyAlertItem.vue')['default']
RecursiveListGroup: typeof import('./src/components/RecursiveListGroup.vue')['default']
RouterLink: typeof import('vue-router')['RouterLink']
RouterView: typeof import('vue-router')['RouterView']
SelectItem: typeof import('./src/components/globals/formItems/SelectItem.vue')['default']
TagsItem: typeof import('./src/components/globals/formItems/TagsItem.vue')['default']
TagsSelectizeItem: typeof import('./src/components/globals/formItems/TagsSelectizeItem.vue')['default']
TextAreaItem: typeof import('./src/components/globals/formItems/TextAreaItem.vue')['default']
TopBar: typeof import('./src/components/globals/TopBar.vue')['default']
ViewSearch: typeof import('./src/components/globals/ViewSearch.vue')['default']
YAlert: typeof import('./src/components/globals/YAlert.vue')['default']
YBreadcrumb: typeof import('./src/components/globals/YBreadcrumb.vue')['default']
YCard: typeof import('./src/components/globals/YCard.vue')['default']
YIcon: typeof import('./src/components/globals/YIcon.vue')['default']
YListGroupItem: typeof import('./src/components/globals/YListGroupItem.vue')['default']
YListItem: typeof import('./src/components/globals/YListItem.vue')['default']
YSpinner: typeof import('./src/components/globals/YSpinner.vue')['default']
}
export interface ComponentCustomProperties {
vBModal: typeof import('bootstrap-vue-next')['vBModal']
vBPopover: typeof import('bootstrap-vue-next')['vBPopover']
vBToggle: typeof import('bootstrap-vue-next')['vBToggle']
vBTooltip: typeof import('bootstrap-vue-next')['vBTooltip']
}
}
1 change: 1 addition & 0 deletions app/env.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/// <reference types="vite/client" />
2 changes: 1 addition & 1 deletion app/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,6 @@
</strong>
</noscript>
<div id="app"></div>
<script type="module" src="/src/main.js"></script>
<script type="module" src="/src/main.ts"></script>
</body>
</html>
22 changes: 22 additions & 0 deletions app/overrides.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import type { Skeleton } from '@/types/commons'
import 'vue-router'

declare module 'vue-router' {
interface RouteMeta {
noAuth?: boolean
routerParams?: string[]
args: { trad?: string; param?: string }
breadcrumb?: string[]
skeleton?: (Skeleton | string)[] | Skeleton | string
}
}

declare module 'bootstrap-vue-next' {
interface BaseColorVariant {
best: unknown
}
interface BaseSize {
// `xs` size is available only for BButton
xs: unknown
}
}
49 changes: 28 additions & 21 deletions app/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,34 +10,41 @@
"lint:js": "eslint --ext \".ts,.vue,.cjs,.js\" --ignore-path ../.gitignore .",
"lint:prettier": "prettier --check .",
"lint": "yarn lint:js && yarn lint:prettier",
"lintfix": "prettier --write --list-different . && yarn lint:js --fix"
"lintfix": "prettier --write --list-different . && yarn lint:js --fix",
"type-check": "vue-tsc --noEmit -p tsconfig.json"
},
"dependencies": {
"@fontsource/fira-code": "^4.5.13",
"@fontsource/firago": "^4.5.3",
"bootstrap-vue": "^2.22.0",
"date-fns": "^2.29.3",
"@fontsource/fira-code": "^5.1.0",
"@fontsource/firago": "^5.1.0",
"@vuelidate/core": "^2.0.3",
"@vuelidate/validators": "^2.0.4",
"@vueuse/core": "^11.1.0",
"bootstrap": "^5.3.3",
"bootstrap-vue-next": "^0.24.16",
"date-fns": "^4.0.0",
"fork-awesome": "^1.2.0",
"simple-evaluate": "^1.4.6",
"vue": "^2.7.14",
"vue-i18n": "^8.28.2",
"vue-router": "^3.6.5",
"vue-showdown": "^2.4.1",
"vuelidate": "^0.7.7",
"vuex": "^3.6.2"
"uuid": "^10.0.0",
"vue": "^3.5.6",
"vue-i18n": "^10.0.1",
"vue-router": "^4.4.5",
"vue-showdown": "^4.2.0"
},
"devDependencies": {
"@vitejs/plugin-vue2": "^2.2.0",
"bootstrap": "^4.6.0",
"eslint": "^8.36.0",
"@types/uuid": "^10.0.0",
"@vitejs/plugin-vue": "^5.1.3",
"@vue/eslint-config-typescript": "^13.0.0",
"@vue/tsconfig": "^0.5.1",
"eslint": "^8.57.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-vue": "^9.10.0",
"popper.js": "^1.16.0",
"portal-vue": "^2.1.7",
"prettier": "^3.2.5",
"sass": "^1.60.0",
"vite": "^4.5.3"
"eslint-plugin-prettier": "^5.2.1",
"eslint-plugin-vue": "^9.28.0",
"prettier": "^3.3.3",
"sass": "^1.78.0",
"typescript": "^5.6.2",
"unplugin-vue-components": "^0.27.4",
"vite": "^5.4.5",
"vue-tsc": "^2.1.6"
},
"browserslist": [
"> 1%",
Expand Down
Loading