feat(ui): new dynamic agenda view (#4086)

* feat: agenda page in vue (wip)

* feat: scroll to agenda day

* fix: vue 3 composition api + eslint settings

* fix: agenda day scroll match indicator

* fix: convert vite deps to yarn

* fix: missing lodash + legacy build step

* fix: agenda - move calendar into drawer

* fix: improve agenda filter UI

* fix: download ics + move agenda into own component

* feat: use fullcalendar for agenda calendar view (wip)

* feat: add events to agenda calendar

* feat: agenda filter UI improvements

* feat: agenda add to calendar dropdown

* feat: agenda calendar filter + timezone + event coloring

* feat: agenda calendar color improvements

* chore: exclude dist-neue from git

* feat: agenda calendar event modal

* fix: rebuild yarn deps

* chore: add run migration task to vscode

* fix: agenda buttons display flag

* feat: agenda event modal component

* feat: show calendar event quick info on hover

* fix: clear calendar quick info on timezone change

* feat: agenda list view improvements

* feat: agenda list row coloring

* feat: agenda list note

* feat: agenda list icons for office hours + hackathon

* fix: agenda top links

* refactor: use pinia as store for agenda components

* feat: agenda jump to now

* fix: agenda mobile improvements

* feat: agenda search

* feat: agenda search improvements

* feat: agenda event recordings buttons for post-meeting

* fix: agenda switch to meeting timezone on load

* feat: agenda pre & live session buttons

* fix: remove agenda utc + personalize links in top menu

* feat: add pre-vue loading state on page load

* feat: filter from agenda picker mode

* fix: agenda UI improvements

* fix: django-vite non-dev mode

* chore: update yarn dependencies for vue + vite

* feat: agenda settings panel + UI improvements

* feat: agenda settings colors + import/export feature

* feat: agenda color assignments + responsive UI improvements

* feat: agenda realtime red line + debug datetime offset

* feat: agenda add aria labels for settings

* feat: add new agenda path + pages/menu

* fix: bring base/menu.html up to main

* fix: agenda various fixes

* test: add new agenda item to meetings menu for item count

* chore: restore devcontainer extensions list

* fix: agenda UI improvements + montserrat default font

* feat: agenda bolder text + hide event icons options

* feat: agenda warning badge

* fix: agenda various UI improvements + intersectionObserver fix

* feat: agenda floorplan page + various UI improvements

* feat: agenda floor plan pin

* feat: view floor plan room from agenda

* feat: agenda floor plan mobile optimization

* feat: adjust calendar options + default calendar view in settings

* feat: agenda persist picked events + change base font only on new agenda page

* feat: agenda mobile view optimizations

* fix: add .vite to cached volumes

* fix: mobile view for filters, calendar, settings panels

* test: upgrade cypress existing tests to work on bs5 + update dependencies

* fix: use named url patterns to avoid hardcoded URLs. Add rudimentary test coverage for the neue views.

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
This commit is contained in:
Nicolas Giard 2022-07-13 17:20:23 -04:00 committed by GitHub
parent 495df36a77
commit aa9490faf6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
298 changed files with 11323 additions and 119 deletions

View file

@ -76,7 +76,7 @@
"ms-python.python",
"ms-python.vscode-pylance",
"mtxr.sqltools-driver-mysql",
"mtxr.sqltools",
"mtxr.sqltools",
"mutantdino.resourcemonitor",
"oderwat.indent-rainbow",
"redhat.vscode-yaml",

View file

@ -8,6 +8,8 @@ services:
- .:/workspace
- /workspace/.parcel-cache
- /workspace/__pycache__
- /workspace/.vite
- /workspace/.yarn/unplugged
- app-assets:/assets
- datatracker-vscode-ext:/root/.vscode-server/extensions
# Runs app on the same network as the database container, allows "forwardPorts" in devcontainer.json function.

View file

@ -31,7 +31,7 @@ indent_size = 2
[client/**]
indent_size = 2
[package.json]
[{package.json,.eslintrc.js,.yarnrc.yml,vite.config.js,cypress.config.js}]
indent_size = 2
# Settings for cypress tests

View file

@ -1,24 +1,29 @@
module.exports = {
extends: ["eslint:recommended"],
rules: {
indent: ["error", 4],
quotes: "off",
"no-multiple-empty-lines": ["error", { max: 2, maxEOF: 0 }],
"quote-props": ["error", "as-needed"],
"brace-style": ["error", "1tbs", { allowSingleLine: true }],
semi: ["error", "always"],
"newline-per-chained-call": ["error"]
},
env: {
browser: true,
jquery: true,
node: true
},
globals: {
d3: true
},
parserOptions: {
sourceType: "module",
ecmaVersion: 2015
}
};
root: true,
env: {
browser: true,
es2021: true,
jquery: true,
node: true,
'vue/setup-compiler-macros': true
},
extends: [
// 'plugin:vue/vue3-essential', // Priority A: Essential (Error Prevention)
'plugin:vue/vue3-strongly-recommended', // Priority B: Strongly Recommended (Improving Readability)
'plugin:cypress/recommended'
],
globals: {
d3: true
},
parserOptions: {
ecmaVersion: 'latest',
sourceType: 'module'
},
plugins: [
'vue'
],
rules: {
'vue/script-setup-uses-vars': 'error',
'vue/multi-word-component-names': 'off'
}
}

3
.gitignore vendored
View file

@ -10,11 +10,14 @@ datatracker.sublime-workspace
/.Python
/.settings
/.tmp
/.vite
/data
/dist
/docker/docker-compose.extend-custom.yml
/env
/ghostdriver.log
/htmlcov
/ietf/static/dist-neue
/latest-coverage.json
/media
/node_modules

3304
.pnp.cjs generated

File diff suppressed because it is too large Load diff

View file

@ -46,5 +46,10 @@
"**/.yarn": true,
"**/.pnp.*": true
},
"eslint.nodePath": ".yarn/sdks"
"eslint.nodePath": ".yarn/sdks",
"eslint.validate": [
"javascript",
"javascriptreact",
"vue"
]
}

21
.vscode/tasks.json vendored
View file

@ -22,6 +22,25 @@
},
"problemMatcher": []
},
{
"label": "Run Migrations",
"type": "shell",
"command": "/usr/local/bin/python",
"args": [
"${workspaceFolder}/ietf/manage.py",
"migrate",
"--settings=settings_local"
],
"presentation": {
"echo": true,
"reveal": "always",
"focus": false,
"panel": "shared",
"showReuseMessage": true,
"clear": false
},
"problemMatcher": []
},
{
"label": "Run All Tests",
"type": "shell",
@ -148,4 +167,4 @@
"problemMatcher": []
}
]
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show more