diff --git a/.gitignore b/.gitignore index 8a41dc73..af5831e2 100644 --- a/.gitignore +++ b/.gitignore @@ -65,7 +65,9 @@ typings/ #remove vs code files .vs/ -.vscode/ extensionDirectory-build/index.css extensionDirectory-build/index.js extensionDirectory-build/payload.js + +build +dist diff --git a/extensionDirectory/.prettierrc.json b/.prettierrc.json similarity index 100% rename from extensionDirectory/.prettierrc.json rename to .prettierrc.json diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 00000000..ad16a4b5 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,13 @@ +{ + // See https://go.microsoft.com/fwlink/?LinkId=827846 to learn about workspace recommendations. + // Extension identifier format: ${publisher}.${name}. Example: vscode.csharp + + // List of extensions which should be recommended for users of this workspace. + "recommendations": [ + "tobermory.es6-string-html" + ], + // List of extensions recommended by VS Code that should not be recommended for users of this workspace. + "unwantedRecommendations": [ + + ] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..ff22a049 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,30 @@ +{ + "json.schemas": [{ + "fileMatch": [ + "manifest.json" + ], + "url": "https://json.schemastore.org/chrome-manifest" + }], + "markdownlint.config": { + "MD004": { + "style": "dash" + }, + "MD014": false + }, + "cSpell.words": [ + "Ancr", + "Bncr", + "Cacr", + "Cncr", + "Excr", + "Frcr", + "Gicr", + "Lecr", + "Oecr", + "Oscr", + "Rdcr", + "Wncr", + "Wmcr", + "Wrcr" + ] +} diff --git a/README.md b/README.md index bbbcf1ac..a04467b3 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ This project originated as a way for Vermont Legal Aid (VLA) to generate petitio VLA runs free clinics throughout the year, but copying information off state databases and filling out petitions by hand is slow. By creating a chrome extension that generates printable files at the push of a button, volunteer attorneys help more people clear their records in every clinic. -# The Chrome extension +## The Chrome extension [](https://chrome.google.com/webstore/detail/expungevt/kkooclhchngcejjphmbafbkkpnaimadn) @@ -30,11 +30,11 @@ But equally important are the things it **does not** do: ## Who can use Expunge-VT? -This tool was originally developed exclusively for use by VLA in their clincs in 2018. But as volunteer attorneys use the tool in clincs, they have started using it in their own practices as well. +This tool was originally developed exclusively for use by VLA in their clinics in 2018. But as volunteer attorneys use the tool in clinics, they have started using it in their own practices as well. - **Anyone with data access...** The extension can only be used by people who already have access to state criminal databases - the extension does not grant any data access itself. But the extension will work for anyone who has access to criminal dockets through [VT Courts Online](https://secure.vermont.gov/vtcdas/user) or [Vermont Judiciary Public Portal](https://publicportal.courts.vt.gov/Portal). -- **... but primarily attorneys.** Although anyone with data access can use this tool to generate petitions, they will need to be reviewed (and possibly corrected or modified) by an attorney familiar with expungement statutues. There are a lot of intracasies in expunging & sealing records and conflicts and inaccuracies in the official records that require expert review. +- **... but primarily attorneys.** Although anyone with data access can use this tool to generate petitions, they will need to be reviewed (and possibly corrected or modified) by an attorney familiar with expungement statutes. There are a lot of intricacies in expunging & sealing records and conflicts and inaccuracies in the official records that require expert review. ## Demo Expunge-VT @@ -64,12 +64,16 @@ If you are a programmer and are interested in how the extension works, it's easy 1. Open a sample html docket from the "sampleDocketHTML" folder. -1. While viewing the sample docket page, click the chrome extension icon to begin using the exention. +1. While viewing the sample docket page, click the chrome extension icon to begin using the extension. -1. Familiarlize yourself with [how chrome extensions work](./README_EXTENSIONS_OVERVIEW.md). +1. Familiarize yourself with [how chrome extensions work](./README_EXTENSIONS_OVERVIEW.md). ## Contact Us This tool was created by Code for BTV, in partnership with [Vermont Legal Aid](https://www.vtlegalaid.org/). Please send questions, comments, or feedback to expungevt@codeforbtv.org + +## Acronyms + +- **VCOL** - TODO diff --git a/extensionDirectory/README.md b/README_DEVELOPER.md similarity index 80% rename from extensionDirectory/README.md rename to README_DEVELOPER.md index 9db4d23f..9a0ab174 100644 --- a/extensionDirectory/README.md +++ b/README_DEVELOPER.md @@ -4,7 +4,7 @@ From the user's perspective this extension can be divided as follows: -- **Extention Popup**: the popup shown when the user clicks on the extension icon in the browser. +- **Extension Popup**: the popup shown when the user clicks on the extension icon in the browser. - **Manage Counts Page**: an edit page offering the user a web form where they can manually edit the information used by the extension - **Petition Page**: a read-only page that provides the user with a print-view of the petitions to be printed and a side navigation with summary information and links to each section - **CSV Export**: a button exporting (some? all?) information to CSV for download. @@ -14,11 +14,11 @@ From the user's perspective this extension can be divided as follows: From the developer's perspective all code for the chrome extension itself is found in `/extensionDirectory/`: -**Chrome Extention Boilerplate** +### Chrome Extension Boilerplate -The following files are part of any extension. The `manifest.json` is effectively a configuration file for the extention, but generally these files aren't used much: +The following files are part of any extension. The `manifest.json` is effectively a configuration file for the extension, but generally these files aren't used much: -``` +```none ├── extensionDirectory │   ├── manifest.json │   ├── node_modules @@ -30,7 +30,7 @@ The following files are part of any extension. The `manifest.json` is effectivel │   ├── ... ``` -**Chrome Extension "meat"** +### Chrome Extension "meat" These map to the 3 primary pieces of [Application Structure](#application-structure) @@ -38,7 +38,7 @@ These map to the 3 primary pieces of [Application Structure](#application-struct - manage-counts.html runs the Manage Counts page - filings.html/js/css runs the Petition page -``` +```none ├── extensionDirectory │   ├── ... │   ├── popup.css @@ -51,7 +51,7 @@ These map to the 3 primary pieces of [Application Structure](#application-struct │   ├── ... ``` -**Supporting Files** +### Supporting Files The remaining files have various purposes: @@ -59,7 +59,7 @@ The remaining files have various purposes: - `csv.js` some helper functions for letting users download a csv - `disclaimer.html` holds the Terms & Conditions -``` +```none │   ├── ... │   ├── components.js │   ├── csv.js @@ -72,50 +72,55 @@ The remaining files have various purposes: - **Gumshoe & Smooth Scroll**: Just a couple packages to help with the navigation links on the Manage Counts page. - **Bootstrap**: BS4 as a quick way to make things a little more pretty. -# Deploying this Chrome Extension +## Deploying this Chrome Extension + +### Publishing to the Chrome Store -## Publishing to the Chrome Store [The docs explain this](https://developer.chrome.com/docs/webstore/publish/). After you've done this once though, this all you'll need to do the next time. -**Log in** +#### Log in 1. Go to the [Chrome Developer Dashboard](https://chrome.google.com/webstore/devconsole) 2. Switch to the group publisher account (see below) 3. Click through to the ExpungeVT item -**Version bump** +#### Version bump 1. Note the current version published in the developer dashboard 2. Pick the next appropriate [semantic version](https://semver.org/) (major.minor.bug) 3. Commit -**Pem key** +### Pem key -**Create your item's zip file** -``` +#### Create your item's zip file + +```bash $ cd expunge-vt/ $ cd extensionDirectory $ zip -r ../text-only-7-19-2021.zip * ``` -**Upload the zip file** +### Upload the zip file In the Developer Dashboard, click the 'Package' nav link on the left and pick out your zip file. ## The 'ExpungeVT' publisher account -This extension is deployed under a '[group publisher](https://developer.chrome.com/docs/webstore/group-publishers/)' account which provides a group account where we can grant new developers permission to publish changes to the chrome store. + +This extension is deployed under a '[group publisher](https://developer.chrome.com/docs/webstore/group-publishers/)' account which provides a group account where we can grant new developers permission to publish changes to the chrome store. ### How to add someone to the publisher account -_TODO_ - I forget how to do this. Next time we go through [the instructions](https://developer.chrome.com/docs/webstore/group-publishers/), let's document it here. + +**TODO** - I forget how to do this. Next time we go through [the instructions](https://developer.chrome.com/docs/webstore/group-publishers/), let's document it here. ### Switching to the publisher acct + Simple, but hard to find: check the [top-right corner for a dropdown](https://developer.chrome.com/docs/webstore/group-publishers/) and switch from your user name to `expungevt`. If it's not there, then you'll need to be added to the group. ## Next Steps -* npm run build:watch works -* Fix images in components/popup.vue -* Create a eseparate components/filings.vue and somehow get filings.js to use the right app (filings Or popup) based on... presence of a div?? -* Move shared code between components/popup.vue and components/filings.vue so its imported instead of duplicated +- npm run build:watch works +- Fix images in components/popup.vue +- Create a separate components/filings.vue and somehow get filings.js to use the right app (filings Or popup) based on... presence of a div?? +- Move shared code between components/popup.vue and components/filings.vue so its imported instead of duplicated diff --git a/README_DIRECTORY_HIERARCHY.md b/README_DIRECTORY_HIERARCHY.md index 77e5a8c8..72c0cb67 100644 --- a/README_DIRECTORY_HIERARCHY.md +++ b/README_DIRECTORY_HIERARCHY.md @@ -1,9 +1,8 @@ - # Directory Hierarchy This is a brief orientation to the most significant parts of this repo directory: -``` +```none root/ ├── clinicDocs/ ├── extensionDirectory/ @@ -15,24 +14,31 @@ root/ ``` ## clinicDocs/ + This director contains copies of all the blank forms that this extension replicates and populates. These blanks are kept only as reference and not otherwise used by the extension. ## extensionDirectory/ + This directory contains the code for the ExpungeVT extension and is detailed in README_EXTENSIONS_OVERVIEW.md. ## meeting notes/ + Contains meeting notes from the earliest meetings with VLA during the initial attempts to define the ExpungeVT direction & purpose. Kept around mainly due nostalgia and laziness. Kinda neat tho. ## sampleDocketHTML/ -Contains sample criminal dockets that have been anonomized. Very useful for testing and allows the public to demo the extension if they don't have access via the offical Vermont Case Management System. + +Contains sample criminal dockets that have been anonymized. Very useful for testing and allows the public to demo the extension if they don't have access via the official Vermont Case Management System. ## civic.json + Metadata for the project. See http://open.dc.gov/civic.json/ ## README_EXTENSIONS_OVERVIEW.md + Brief overview of the chrome extension inside 'extensionDirectory'. ## README.md + A markdown file that generates the website at https://codeforbtv.github.io/expunge-vt/ -**NOTE**: Changes to this readme file will be deployed to the public facing site as soon as they are merged into master so make sure your changes are appropriate for the general public. \ No newline at end of file +**NOTE**: Changes to this readme file will be deployed to the public facing site as soon as they are merged into master so make sure your changes are appropriate for the general public. diff --git a/README_EXTENSIONS_OVERVIEW.md b/README_EXTENSIONS_OVERVIEW.md index 8f892711..a1b0f707 100644 --- a/README_EXTENSIONS_OVERVIEW.md +++ b/README_EXTENSIONS_OVERVIEW.md @@ -14,7 +14,7 @@ The structure of a chrome extension is primarily defined in the manifest.json fi - `background` [[Docs](https://developer.chrome.com/extensions/background_pages)]: Background scripts are triggered by browser events such as navigating toa new page, closing a tab, etc. -* `permissions`​​ [[Docs](https://developer.chrome.com/extensions/permission_warnings)]: Chrome extensions can behave in ways that most web content is prohibited from doing. Permissions allow extensions to use certain features, such as ​access the ​cookies​ & ​storage​ for other tabs​ and​ perform​ Cross-Origin XMLHttpRequsts. Reviewing [the permission list](https://developer.chrome.com/extensions/declare_permissions) gives you a good idea of the kinds of features an extension could implement. +- `permissions`​​ [[Docs](https://developer.chrome.com/extensions/permission_warnings)]: Chrome extensions can behave in ways that most web content is prohibited from doing. Permissions allow extensions to use certain features, such as ​access the ​cookies​ & ​storage​ for other tabs​ and​ perform​ Cross-Origin `XMLHttpRequest`s. Reviewing [the permission list](https://developer.chrome.com/extensions/declare_permissions) gives you a good idea of the kinds of features an extension could implement. ## Common Extension Elements diff --git a/civic.json b/civic.json index dee1773a..5e4075ab 100644 --- a/civic.json +++ b/civic.json @@ -1,40 +1,40 @@ { - "name": "ExpungeVT", - "description": "A chrome extension to help attorneys generate expungment & sealing petitions efficiently", - "license": "MIT", - "status": "Production", - "type": "Chrome Browser Extension", - "homepage": "https://codeforbtv.github.io/expunge-vt/", - "repository": "https://github.com/codeforbtv/expunge-vt", - "thumbnail": "https://codeforbtv.github.io/expunge-vt/extensionDirectory/images/icon_128.png", + "name": "ExpungeVT", + "description": "A chrome extension to help attorneys generate expungement & sealing petitions efficiently", + "license": "MIT", + "status": "Production", + "type": "Chrome Browser Extension", + "homepage": "https://codeforbtv.github.io/expunge-vt/", + "repository": "https://github.com/codeforbtv/expunge-vt", + "thumbnail": "https://codeforbtv.github.io/expunge-vt/extensionDirectory/images/icon_128.png", "geography": [ "Vermont" - ], + ], "contact": { - "name": "Jake Durell", - "email": "expungevt@codeforbtv.org", + "name": "Jake Durell", + "email": "expungevt@codeforbtv.org", "url": "" - }, + }, "partners": [ { - "url": "https://www.vtlegalaid.org/", - "name": "Vermont Legal Aid", + "url": "https://www.vtlegalaid.org/", + "name": "Vermont Legal Aid", "email": "" } - ], - "data": [], + ], + "data": [], "tags": [ "civictechindex", "code-for-all", "code-for-america", "code-for-btv" - ], + ], "links": [ "https://vtdigger.org/2019/11/12/legal-expungement-clinic-offers-vermonters-a-chance-to-start-over/", "https://vermontbiz.com/news/2020/october/24/state-hold-expungement-tele-clinic-brattleboro-nov-13", "https://www.govtech.com/civic/Vermont-Attorneys-Leverage-Open-Source-Expungement-Plug-In.html", "https://pmicv.org/index.php?option=com_content&view=article&id=369:pmi-cv-volunteerism-at-work-expunge-vt-with-code-for-btv&catid=112&acm=_304", "https://rotaryclubofcsh.org/Stories/code-for-btv" - ], + ], "id": "https://raw.githubusercontent.com/DCgov/civic.json/master/schemas/schema-v1.json" -} \ No newline at end of file +} diff --git a/clinicDocs/000_Expungement Clinic Intake Form.pdf b/docs/clinic/000_Expungement Clinic Intake Form.pdf similarity index 100% rename from clinicDocs/000_Expungement Clinic Intake Form.pdf rename to docs/clinic/000_Expungement Clinic Intake Form.pdf diff --git a/clinicDocs/001_Notice of Appearance - pro se.pdf b/docs/clinic/001_Notice of Appearance - pro se.pdf old mode 100755 new mode 100644 similarity index 100% rename from clinicDocs/001_Notice of Appearance - pro se.pdf rename to docs/clinic/001_Notice of Appearance - pro se.pdf diff --git a/clinicDocs/001_Notice of Appearance.pdf b/docs/clinic/001_Notice of Appearance.pdf similarity index 100% rename from clinicDocs/001_Notice of Appearance.pdf rename to docs/clinic/001_Notice of Appearance.pdf diff --git a/clinicDocs/007_Motion to Expunge Non-Conviction - 7603 Nonstipulated.pdf b/docs/clinic/007_Motion to Expunge Non-Conviction - 7603 Nonstipulated.pdf old mode 100755 new mode 100644 similarity index 100% rename from clinicDocs/007_Motion to Expunge Non-Conviction - 7603 Nonstipulated.pdf rename to docs/clinic/007_Motion to Expunge Non-Conviction - 7603 Nonstipulated.pdf diff --git a/clinicDocs/008_Expungement Clinic Retainer Agreement.pdf b/docs/clinic/008_Expungement Clinic Retainer Agreement.pdf similarity index 100% rename from clinicDocs/008_Expungement Clinic Retainer Agreement.pdf rename to docs/clinic/008_Expungement Clinic Retainer Agreement.pdf diff --git a/clinicDocs/009_Application to Waive Fees and Costs.pdf b/docs/clinic/009_Application to Waive Fees and Costs.pdf similarity index 100% rename from clinicDocs/009_Application to Waive Fees and Costs.pdf rename to docs/clinic/009_Application to Waive Fees and Costs.pdf diff --git a/clinicDocs/5119(g) Nonstipulated.pdf b/docs/clinic/5119(g) Nonstipulated.pdf old mode 100755 new mode 100644 similarity index 100% rename from clinicDocs/5119(g) Nonstipulated.pdf rename to docs/clinic/5119(g) Nonstipulated.pdf diff --git a/clinicDocs/5119(g) Stipulated.pdf b/docs/clinic/5119(g) Stipulated.pdf old mode 100755 new mode 100644 similarity index 100% rename from clinicDocs/5119(g) Stipulated.pdf rename to docs/clinic/5119(g) Stipulated.pdf diff --git a/clinicDocs/7602 NonStip.pdf b/docs/clinic/7602 NonStip.pdf old mode 100755 new mode 100644 similarity index 100% rename from clinicDocs/7602 NonStip.pdf rename to docs/clinic/7602 NonStip.pdf diff --git a/clinicDocs/7602 Stipulated.pdf b/docs/clinic/7602 Stipulated.pdf old mode 100755 new mode 100644 similarity index 100% rename from clinicDocs/7602 Stipulated.pdf rename to docs/clinic/7602 Stipulated.pdf diff --git a/clinicDocs/7603 stipulated.pdf b/docs/clinic/7603 stipulated.pdf old mode 100755 new mode 100644 similarity index 100% rename from clinicDocs/7603 stipulated.pdf rename to docs/clinic/7603 stipulated.pdf diff --git a/clinicDocs/Archive/002_Stipulated Motion to Expunge Nonconviction.pdf b/docs/clinic/Archive/002_Stipulated Motion to Expunge Nonconviction.pdf similarity index 100% rename from clinicDocs/Archive/002_Stipulated Motion to Expunge Nonconviction.pdf rename to docs/clinic/Archive/002_Stipulated Motion to Expunge Nonconviction.pdf diff --git a/clinicDocs/Archive/003_Motion to Expunge Conviction.pdf b/docs/clinic/Archive/003_Motion to Expunge Conviction.pdf similarity index 100% rename from clinicDocs/Archive/003_Motion to Expunge Conviction.pdf rename to docs/clinic/Archive/003_Motion to Expunge Conviction.pdf diff --git a/clinicDocs/Archive/004_Motion to Seal Conviction.pdf b/docs/clinic/Archive/004_Motion to Seal Conviction.pdf similarity index 100% rename from clinicDocs/Archive/004_Motion to Seal Conviction.pdf rename to docs/clinic/Archive/004_Motion to Seal Conviction.pdf diff --git a/clinicDocs/Archive/005_Stipulated Motion to Expunge Conviction.pdf b/docs/clinic/Archive/005_Stipulated Motion to Expunge Conviction.pdf similarity index 100% rename from clinicDocs/Archive/005_Stipulated Motion to Expunge Conviction.pdf rename to docs/clinic/Archive/005_Stipulated Motion to Expunge Conviction.pdf diff --git a/clinicDocs/Archive/006_Stipulated Motion to Seal Conviction.pdf b/docs/clinic/Archive/006_Stipulated Motion to Seal Conviction.pdf similarity index 100% rename from clinicDocs/Archive/006_Stipulated Motion to Seal Conviction.pdf rename to docs/clinic/Archive/006_Stipulated Motion to Seal Conviction.pdf diff --git a/clinicDocs/Archive/007_Motion to Expunge Non-Conviction.pdf b/docs/clinic/Archive/007_Motion to Expunge Non-Conviction.pdf similarity index 100% rename from clinicDocs/Archive/007_Motion to Expunge Non-Conviction.pdf rename to docs/clinic/Archive/007_Motion to Expunge Non-Conviction.pdf diff --git a/clinicDocs/Archive/info001_Post Expungement Steps.pdf b/docs/clinic/Archive/info001_Post Expungement Steps.pdf similarity index 100% rename from clinicDocs/Archive/info001_Post Expungement Steps.pdf rename to docs/clinic/Archive/info001_Post Expungement Steps.pdf diff --git a/clinicDocs/Archive/info002_States Attorney Contact Info.pdf b/docs/clinic/Archive/info002_States Attorney Contact Info.pdf similarity index 100% rename from clinicDocs/Archive/info002_States Attorney Contact Info.pdf rename to docs/clinic/Archive/info002_States Attorney Contact Info.pdf diff --git a/clinicDocs/Client Take Away Sheet.pdf b/docs/clinic/Client Take Away Sheet.pdf similarity index 100% rename from clinicDocs/Client Take Away Sheet.pdf rename to docs/clinic/Client Take Away Sheet.pdf diff --git a/clinicDocs/Expungement Clinic Checklist for Appts 5.1.pdf b/docs/clinic/Expungement Clinic Checklist for Appts 5.1.pdf similarity index 100% rename from clinicDocs/Expungement Clinic Checklist for Appts 5.1.pdf rename to docs/clinic/Expungement Clinic Checklist for Appts 5.1.pdf diff --git a/clinicDocs/Expungement Intake Form 5.1.pdf b/docs/clinic/Expungement Intake Form 5.1.pdf similarity index 100% rename from clinicDocs/Expungement Intake Form 5.1.pdf rename to docs/clinic/Expungement Intake Form 5.1.pdf diff --git a/clinicDocs/Mockup DUI.docx b/docs/clinic/Mockup DUI.docx similarity index 100% rename from clinicDocs/Mockup DUI.docx rename to docs/clinic/Mockup DUI.docx diff --git a/clinicDocs/Mockup DUI.pdf b/docs/clinic/Mockup DUI.pdf similarity index 100% rename from clinicDocs/Mockup DUI.pdf rename to docs/clinic/Mockup DUI.pdf diff --git a/clinicDocs/Petition Processing Check-out Worksheet.pdf b/docs/clinic/Petition Processing Check-out Worksheet.pdf similarity index 100% rename from clinicDocs/Petition Processing Check-out Worksheet.pdf rename to docs/clinic/Petition Processing Check-out Worksheet.pdf diff --git a/clinicDocs/info003_Offenses the Court will not Expunge in VT.pdf b/docs/clinic/info003_Offenses the Court will not Expunge in VT.pdf similarity index 100% rename from clinicDocs/info003_Offenses the Court will not Expunge in VT.pdf rename to docs/clinic/info003_Offenses the Court will not Expunge in VT.pdf diff --git a/clinicDocs/mockup.docx b/docs/clinic/mockup.docx similarity index 100% rename from clinicDocs/mockup.docx rename to docs/clinic/mockup.docx diff --git a/clinicDocs/mockup.pdf b/docs/clinic/mockup.pdf similarity index 100% rename from clinicDocs/mockup.pdf rename to docs/clinic/mockup.pdf diff --git a/meeting notes/2018-10-05_C4BTV_VLA_Meeting_Notes.md b/docs/meeting/2018-10-05_C4BTV_VLA_Meeting_Notes.md similarity index 100% rename from meeting notes/2018-10-05_C4BTV_VLA_Meeting_Notes.md rename to docs/meeting/2018-10-05_C4BTV_VLA_Meeting_Notes.md diff --git a/meeting notes/2018-11-12_C4BTV_Meeting_Notes.md b/docs/meeting/2018-11-12_C4BTV_Meeting_Notes.md similarity index 98% rename from meeting notes/2018-11-12_C4BTV_Meeting_Notes.md rename to docs/meeting/2018-11-12_C4BTV_Meeting_Notes.md index d7b4f1cd..a8a36a02 100644 --- a/meeting notes/2018-11-12_C4BTV_Meeting_Notes.md +++ b/docs/meeting/2018-11-12_C4BTV_Meeting_Notes.md @@ -1,55 +1,55 @@ -## Code for BTV Meeting (C4BTV) with Vermont Legal Aid (VLA) -### Monday, November 12, 2018 @ 3:00 PM - -| Meeting called by | Type of meeting | Note taker -| --- | --- | --- | -| Scott Friedman | Project Priority Discussion | Scott Friedman, Micah Mutrux - -### Attendees -##### Vermont Legal Aid -Mairead O’Reilly (Poverty Law Fellow) -(Note: we found out "Mairead" rhymes with "parade") -##### Code for BTV -Scott Friedman (PM), Micah Mutrux (Project Delivery Lead) - -### Notes - -| Agenda Item | Presenter | -| --- | --- | -| 1. What project is the most viable to address immediately? I am leaning to the ones we already have, either ExpungeVT or CourtBot, but maybe it is something different. We need to get this established straight away. | Open | -| 2. Who will be the sponsors and stakeholders be from VLA if we are to move forward with a project? We had a big group for our first meeting, so it is probably a subset (I hope). | Open | -| 3. Setting up initial checkpoints and milestones: I believe the best use of everyone's time is to schedule meetings based on milestones and work products. I can work with Mairead to outline what some of these can be so we can begin. | Open | -| 4. Other resources: There may be other people who need to be contacted to get either of these projects deployed and adopted. We'll try to figure out who those people are and the method of contact. | Open | - -#### Discussion on Agenda Items -1. Mairead was able to say that we're just going to focus on expungements. It sounds like everyone at the table in that last meeting agreed that they should let Mairead do her thing first, and we can talk with them afterwards about another project (CourtBot, etc) when the time comes. - - -2. Mairead will be the sponsor of the ExpungeVT project. Michael Benvenuto (ELP Director) and Kris Surette (Web Developer) may get involved also. - - -3. We scheduled meetings to be every other week on Friday at 2:00 PM starting 07-Dec-2018. The meeting following that will then be 21-Dec-2018. Meetings may be canceled or moved because of conflicts. Next steps: - 1. Mairead is going to meet with the prosecutor's office this Friday and I gave her a few questions to start the conversation about sharing/using their data. - 2. A flowchart is needed for the expungement rules. Jake and Mairead can communicate to set this up. Similarly, Micah requested to sit down with Mairead to see her current processes for filing an expungement petition. Micah can arrange with Mairead to have this demonstration. It may be beneficial for Jake, Micah, and Mairead to meet together the first time. - -The scheduled meeting details for the Friday meetings: - -| Call Details | -| --- | -| Join the call: http://www.uberconference.com/scottfvt | -| Dial in number: 720-835-5867; PIN: 51308 | - -4. __Notes on other resources__: Mairead mentioned that the prosecutor's office has said they are interested in broad, automated expungements and that they would have good data access. However she also mentioned that they are both overworked and perhaps not fully incentivized to expunge records. So we'll see what comes of that. - -#### Additional note from Micah's E-mail -Mairead said the prosecutor's office has "the same information that the courts have". I'm assuming "the courts" are referring to the VT Judiciary? It sounds like ultimately that might be the best source of data, but that the prosecutor might be a more expedient source. A big question remains who could make court data accessible, and how to make that relationship happen. - -#### Action items - -| Action items | Person responsible | Deadline | -| --- | --- | --- | -| Set up continuing conference calls | Scott | Done | -| Meeting with prosecutor's office | Mairead | 17-Nov-2018 | -| Set up meeting with Mairead for expungement process review | Micah | 27-Nov-2018 | -| Set up meeting with Mairead for expungement process flowchart | Jake | 27-Nov-2018 | -| Set up Trello board for ExpungeVT project | Scott | 19-Nov-2018 | +## Code for BTV Meeting (C4BTV) with Vermont Legal Aid (VLA) +### Monday, November 12, 2018 @ 3:00 PM + +| Meeting called by | Type of meeting | Note taker +| --- | --- | --- | +| Scott Friedman | Project Priority Discussion | Scott Friedman, Micah Mutrux + +### Attendees +##### Vermont Legal Aid +Mairead O’Reilly (Poverty Law Fellow) +(Note: we found out "Mairead" rhymes with "parade") +##### Code for BTV +Scott Friedman (PM), Micah Mutrux (Project Delivery Lead) + +### Notes + +| Agenda Item | Presenter | +| --- | --- | +| 1. What project is the most viable to address immediately? I am leaning to the ones we already have, either ExpungeVT or CourtBot, but maybe it is something different. We need to get this established straight away. | Open | +| 2. Who will be the sponsors and stakeholders be from VLA if we are to move forward with a project? We had a big group for our first meeting, so it is probably a subset (I hope). | Open | +| 3. Setting up initial checkpoints and milestones: I believe the best use of everyone's time is to schedule meetings based on milestones and work products. I can work with Mairead to outline what some of these can be so we can begin. | Open | +| 4. Other resources: There may be other people who need to be contacted to get either of these projects deployed and adopted. We'll try to figure out who those people are and the method of contact. | Open | + +#### Discussion on Agenda Items +1. Mairead was able to say that we're just going to focus on expungements. It sounds like everyone at the table in that last meeting agreed that they should let Mairead do her thing first, and we can talk with them afterwards about another project (CourtBot, etc) when the time comes. + + +2. Mairead will be the sponsor of the ExpungeVT project. Michael Benvenuto (ELP Director) and Kris Surette (Web Developer) may get involved also. + + +3. We scheduled meetings to be every other week on Friday at 2:00 PM starting 07-Dec-2018. The meeting following that will then be 21-Dec-2018. Meetings may be canceled or moved because of conflicts. Next steps: + 1. Mairead is going to meet with the prosecutor's office this Friday and I gave her a few questions to start the conversation about sharing/using their data. + 2. A flowchart is needed for the expungement rules. Jake and Mairead can communicate to set this up. Similarly, Micah requested to sit down with Mairead to see her current processes for filing an expungement petition. Micah can arrange with Mairead to have this demonstration. It may be beneficial for Jake, Micah, and Mairead to meet together the first time. + +The scheduled meeting details for the Friday meetings: + +| Call Details | +| --- | +| Join the call: http://www.uberconference.com/scottfvt | +| Dial in number: 720-835-5867; PIN: 51308 | + +4. __Notes on other resources__: Mairead mentioned that the prosecutor's office has said they are interested in broad, automated expungements and that they would have good data access. However she also mentioned that they are both overworked and perhaps not fully incentivized to expunge records. So we'll see what comes of that. + +#### Additional note from Micah's E-mail +Mairead said the prosecutor's office has "the same information that the courts have". I'm assuming "the courts" are referring to the VT Judiciary? It sounds like ultimately that might be the best source of data, but that the prosecutor might be a more expedient source. A big question remains who could make court data accessible, and how to make that relationship happen. + +#### Action items + +| Action items | Person responsible | Deadline | +| --- | --- | --- | +| Set up continuing conference calls | Scott | Done | +| Meeting with prosecutor's office | Mairead | 17-Nov-2018 | +| Set up meeting with Mairead for expungement process review | Micah | 27-Nov-2018 | +| Set up meeting with Mairead for expungement process flowchart | Jake | 27-Nov-2018 | +| Set up Trello board for ExpungeVT project | Scott | 19-Nov-2018 | diff --git a/meeting notes/2019-02-22_C4BTV_Meeting_Notes.md b/docs/meeting/2019-02-22_C4BTV_Meeting_Notes.md similarity index 100% rename from meeting notes/2019-02-22_C4BTV_Meeting_Notes.md rename to docs/meeting/2019-02-22_C4BTV_Meeting_Notes.md diff --git a/meeting notes/expunge-vt-ux-v1.pdf b/docs/meeting/expunge-vt-ux-v1.pdf similarity index 100% rename from meeting notes/expunge-vt-ux-v1.pdf rename to docs/meeting/expunge-vt-ux-v1.pdf diff --git a/sampleDocketHTML/sample1.html b/example/sample1.html similarity index 100% rename from sampleDocketHTML/sample1.html rename to example/sample1.html diff --git a/extensionDirectory-build/filings.html b/extensionDirectory-build/filings.html deleted file mode 100644 index c733bd10..00000000 --- a/extensionDirectory-build/filings.html +++ /dev/null @@ -1,1443 +0,0 @@ - - - - Petitions - - - - - - - - - -
- - - - - - - - -
- - - - - diff --git a/extensionDirectory-build/manage-counts.html b/extensionDirectory-build/manage-counts.html deleted file mode 100644 index 98cef6f2..00000000 --- a/extensionDirectory-build/manage-counts.html +++ /dev/null @@ -1,261 +0,0 @@ - - - - Add and Edit Counts - - - - - - - - - -
-
-
-

Counts for {{petitioner.name}}

-
- - - - View Petitions - -
-
-
- -
-

Petitioner Information

- -
- - -
- -
- -
-
- -
-

- Count {{index + 1}}: - {{group.description}} -

-

{{group.docketNum}} {{group.county | toCountyCode}}

- -
-
- - -
- - - - -
- - -
- -
- -
- - -
- - - -
- -
- - - -
-
- -
- -
- - - - - -
- -

- {{group.titleNum || '-'}} V.S.A. § {{group.sectionNum || - '-'}} ({{group.offenseClass || '-'}}) -

- -
- -
- -
- -
-
- - - - diff --git a/extensionDirectory-build/manifest.json b/extensionDirectory-build/manifest.json deleted file mode 100644 index 7884ead7..00000000 --- a/extensionDirectory-build/manifest.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "name": "ExpungeVT!", - "version": "4.1.1", - "description": "Co-counsel Edition - Expunge Harder. Expunge Smarter.", - "permissions": [ - "storage", - "declarativeContent", - "activeTab", - "downloads" - ], - "background": { - "service_worker": "background.js" - }, - "action": { - "default_icon": { - "16": "images/icon_16.png", - "32": "images/icon_32.png", - "48": "images/icon_48.png", - "128": "images/icon_128.png" - }, - "default_popup": "popup.html" - }, - "icons": { - "16": "images/icon_16.png", - "32": "images/icon_32.png", - "48": "images/icon_48.png", - "128": "images/icon_128.png" - }, - "manifest_version": 3, - "content_security_policy": { - "extension_pages": "script-src 'self'; object-src 'self'" - }, - "externally_connectable": { - "ids": [ - "*" - ] - } -} \ No newline at end of file diff --git a/extensionDirectory-build/popup.html b/extensionDirectory-build/popup.html deleted file mode 100644 index e35b4c25..00000000 --- a/extensionDirectory-build/popup.html +++ /dev/null @@ -1,321 +0,0 @@ - - - - - - - - - - -
-
-
- Home - Home -
- -
- - - -
-

-

- -

- Vermont Judiciary Public Portal - -

-
- -

Terms & Conditions

-
- -
-
-
-
-
- -
-
-

Name:

- -
-
-

DOB:

- -
-
-

Address:

- -
-
-

Email:

- -
-
-
- - Home - Home -
-
-
- - - -
-
- Closing all petition windows (without closing browser) may help - stop unexpected behavior. Save your file in the petitions screen - before closing the browser, and try restarting the browser. If you - are still experiencing issues, contact - Code for BTV for assistance. -
-
-
-
-
- - - -
-
- -
- - -
-
-
-
- -
- -
-
-
- -
-
-
- -
-
-

County: {{count.county}}

- -

- Statute: {{count.titleNum}} V.S.A. -  ({{count.offenseClass}}) -

-

- Disposition: {{count.offenseDisposition}} - Check Docket Sheet -

-
-
- Offense Date:
-  Not Entered - {{count.allegedOffenseDate | dateFormatSimple}} - ({{count.allegedOffenseDate | - stringAgeInYearsAtDate(saved.defDOB)}}) -
-
- Arrest/Citation Date:
-  Not Entered - {{count.arrestCitationDate | dateFormatSimple}} - ({{count.arrestCitationDate | - stringAgeInYearsAtDate(saved.defDOB)}}) -
-
- Disposition Date:
-  Pending - {{count.dispositionDate | dateFormatSimple}} - ({{count.dispositionDate | - stringAgeInYearsAtDate(saved.defDOB)}}) -
-
-
-
-
- -
-
-

- ExpungeVT is a Code for BTV product developed in coordination with - Vermont Legal Aid. - Reset Settings -

-
-
-
- - - diff --git a/extensionDirectory/.gitignore b/extensionDirectory/.gitignore deleted file mode 100644 index 567609b1..00000000 --- a/extensionDirectory/.gitignore +++ /dev/null @@ -1 +0,0 @@ -build/ diff --git a/extensionDirectory/build.js b/extensionDirectory/build.js deleted file mode 100644 index a980efc4..00000000 --- a/extensionDirectory/build.js +++ /dev/null @@ -1,25 +0,0 @@ -const vuePlugin = require("esbuild-plugin-vue3") -const esbuild = require('esbuild'); -const copyStaticFiles = require('esbuild-copy-static-files') - -esbuild.build({ - entryPoints: ['background.js', 'filings.js', 'index.js', 'payload.js', 'saveFile.js'], - bundle: true, - outdir: 'build/', - plugins: [vuePlugin(), - copyStaticFiles({ - src: './static', - dest: './build' - })], - loader: { - '.eot': 'dataurl', - '.png': 'file', - '.ttf': 'dataurl', - '.svg': 'dataurl', - '.woff': 'dataurl', - '.woff2': 'dataurl', - }, - define: { - "process.env.NODE_ENV": JSON.stringify("development"), - }, -}); diff --git a/extensionDirectory/index.js b/extensionDirectory/index.js deleted file mode 100644 index ca70290a..00000000 --- a/extensionDirectory/index.js +++ /dev/null @@ -1,13 +0,0 @@ -const jQuery = require('jquery'); -window.$ = jQuery; -window.jQuery = jQuery; -const Vue = require('vue'); -require('bootstrap'); -require('bootstrap/dist/css/bootstrap.min.css'); -require('bootstrap4-toggle'); -require('bootstrap4-toggle/css/bootstrap4-toggle.min.css'); -// require('./components.js'); -require('./filings.js'); -require('./saveFile.js'); -require('./popup.js'); -//require('./background.js'); diff --git a/extensionDirectory/static/disclaimer.html b/extensionDirectory/static/disclaimer.html deleted file mode 100644 index 79586d23..00000000 --- a/extensionDirectory/static/disclaimer.html +++ /dev/null @@ -1,47 +0,0 @@ - - - - Expunge VT Terms and Conditions - - - - - - - - -
-

Expunge VT Terms and Conditions

-

- ExpungeVT is a tool created by Code for BTV in collaboration with - Vermont Legal Aid (collectively the "Contributors"). ExpungeVT, as - referenced herein, is inclusive of, but is not limited to, the ExpungeVT - Google Chrome extension, any associated or linked web page, any document - generated through the extension or related pages, and any other linked - or otherwise related pages, documentation, materials or information. -

-

- ExpungeVT is intended only for attorney use and should only be used by, - or under the supervision of, a licensed Vermont attorney. Any - information provided through ExpungeVT, expressly or impliedly, does - not, and is not intended to, constitute legal advice. Instead, ExpungeVT - is provided for general informational purposes only. Information - obtained through ExpungeVT does not constitute the most up-to-date legal - or other information and should be verified with a more direct source of - legal or factual authority. ExpungeVT contains links to other - third-party websites. Such links are only for the convenience of the - user. The Contributors and their members do not recommend or endorse the - contents of the third-party sites. -

-

- All liability with respect to actions taken or not taken based on - information or materials obtained through ExpungeVT is hereby expressly - disclaimed. ExpungeVT is provided "as is" and no representations are - made that the content is error-free. -

-
- - diff --git a/extensionDirectory/static/filings.css b/extensionDirectory/static/filings.css deleted file mode 100644 index 92da609f..00000000 --- a/extensionDirectory/static/filings.css +++ /dev/null @@ -1,890 +0,0 @@ -/* Helpers */ - -.indent { - text-indent: 2em; -} -.bold { - font-weight: bold; -} -.italic { - font-style: italic; -} - -a.btn { - margin-left: 8px; -} - -/* No filings message */ - -.no-filings { - display: flex; - flex-direction: column; - justify-content: center; - height: 300px; - text-align: center; - padding: 4rem; -} - -.no-filings .alert { - max-width: 50%; - margin: auto; -} - -.disclaimer { - display: flex; - flex-direction: column; - justify-content: center; - text-align: left; - padding: 4rem; - max-width: 800px; - margin: auto; -} -.disclaimer-message { - max-width: 65rem; - width: 70%; - min-width: 50rem; - height: 100%; - margin-left: 17rem; - margin-right: auto; - margin-top: 2rem; - position: relative; - padding: 1.5rem; - background-color: #eee; -} - -/* reset page font sizes */ -.page p, -.page h1 { - margin-bottom: 0; - font-size: 20px; -} - -/* Fixed position header bar */ - -.header-bar { - position: fixed; - display: flex; - align-items: center; - background: #222; - color: #fff; - min-height: 60px; - top: 0; - left: 0; - right: 0; - z-index: 10; - padding: 0.6rem 0.8rem; -} -.header-bar-wrapper { - height: 50px; - position: relative; -} -.header-bar h1 { - font-size: 1.5rem; - margin: 0; - padding: 0; - margin-right: 1rem; - flex-grow: 1; -} -.header-bar__controls { - flex-grow: 0; - display: flex; - flex-wrap: nowrap; - align-items: center; -} -.header-bar__controls label { - margin: 0; - margin-left: 0.75rem; -} -.header-bar__controls button { - margin-left: 0.5rem; -} - -/* Sidebar Nav */ - -.filing-nav { - position: fixed; - top: 60px; - height: calc(100vh - 60px); - left: 0; - padding: 1rem; - z-index: 9; - background-color: #fff; - width: 17em; - overflow-y: scroll; - padding-top: 40px; -} -.filing-nav ol { - padding: 0; - padding-left: 0.25rem; -} -.filing-nav__parent-link { - font-weight: bold; - color: #000; - font-size: 1rem; - list-style: none; -} -.filing-nav__parent-link a { - color: #000; -} - -/* TODO: cover sheet links probably shouldn't have a "filing" class - they aren't filings */ -.cover-sheet .filing-nav__child-link, -.cover-sheet .filing-nav__child-link:last-child { - border-width: 0; -} -.filing-nav__child-link.petition-type__NoA, -.filing-nav__child-link.petition-type__NoA a { - color: white; - background-color: #66b0ff; -} -.filing-nav__child-link { - font-weight: normal; - transition: box-shadow 0.1s ease-in-out, transform 0.1s ease-in-out; - color: #007bff; - font-size: 16px; - margin-left: 0; - border: 1px solid #66b0ff; - border-top-color: transparent; - border-bottom-color: transparent; -} -.filing-nav__child-link:last-child { - border-bottom: 1px solid #66b0ff; -} -.filing-nav__child-link a { - color: #007bff; - line-height: 0.9em; -} -.active.filing-nav__child-link { - box-shadow: -5px 0 0 0 #007bff; - transform: translateX(5px); - border-right-width: 5px; - border-right-color: #007bff; -} -.filing-nav__counts { - color: #333; - text-transform: uppercase; - font-size: 12px; - font-weight: bold; - margin-bottom: 0.75em; -} - -/* Move list numbers inside blue
  • borders */ -.filing-nav__child-link::marker { - color: transparent; -} -.filing-nav__parent-link ol { - list-style: none; - counter-reset: petition-counter; -} - -li.filing-nav__child-link { - counter-increment: petition-counter; - padding-left: 30px; -} -li.filing-nav__child-link a::before { - content: counter(petition-counter) '. '; - padding: 5px; - font-size: 1rem; - position: absolute; - left: 24px; - text-align: right; - width: 2em; -} -li.filing-nav__child-link.active a::before { - left: 0px; -} - -/* Title section above each document */ - -.document-meta-data { - position: absolute; - top: -60px; - left: 0; - margin-bottom: -50px; - font-size: 1rem; - font-family: sans-serif; - text-align: left; -} -p.document-meta-data__title { - font-size: 1.25rem; - margin-bottom: 0; -} -p.document-meta-data__body { - font-size: 0.75rem; - text-transform: uppercase; - font-weight: 800; - font-size: 14px; -} - -/* Formatting for page elements Print & Screen */ - -.page { - font-family: 'Times New Roman', Times, serif; - text-align: left; - font-size: 20px; - margin-left: auto; - margin-right: auto; -} - -.filing-header { - display: flex; - flex-wrap: wrap; - justify-content: space-between; - align-items: stretch; - margin-bottom: 2rem; -} - -.filing-header__title { - text-transform: uppercase; - text-align: center; - width: 100%; - margin-top: 0.25rem; - margin-bottom: 0.2rem; -} - -.filing-header__half { - width: 50%; -} -.filing-header__court { - margin-bottom: 0.5rem; -} - -.docket-number__label { - opacity: 0; -} -.docket-number__numbers:nth-of-type(2) .docket-number__label { - opacity: 1; -} -.docket-caption { - display: flex; - border-right: 1px solid black; -} -.docket-caption__names { - width: 100%; - border-top: 1px solid black; - border-bottom: 1px solid black; -} -.docket-caption__label { - font-style: italic; -} -.docket-caption__party { - text-transform: uppercase; -} - -.filing-header__docket-number { - text-align: right; - display: inline-block; -} - -.filing-header__court, -.docket-number__division, -.docket-number__label { - text-transform: uppercase; -} -.docket-number input { - max-width: 11rem; - width: 50%; - min-width: 9rem; -} - -.page .filing-title { - margin:auto; - max-width: 500px; -} - -.page .filing-title, -.page .filing__title, -.page .petition__title { - text-decoration: underline; - text-transform: uppercase; - text-align: center; - margin-bottom: 1.5rem; -} - -.filing-body p { - line-height: 1.3; - margin-bottom: 0.5em; -} -.filing-body__response textarea { - width: 100%; -} - -.from-block, -.to-date-block { - display: flex; - flex-direction: row; -} - -.generic-logo { - width: 8.5%; - height: 8.5%; - margin-right: 35px; -} - -.vla-logo { - width: auto; - height: 8.5%; - margin-right: 35px; - min-height: 50px; -} - -.to-date-block { - width: 100%; -} -.to-block { - width: 70%; -} -.date-block { - text-align: right; - width: 30%; -} - -.count-table__header { - border-top: 1px solid #999; - border-bottom: 1px solid #999; -} -.count-table { - width: 100%; - margin-bottom: 1.5rem; -} -.count-table input { - width: 100%; -} -.count-table th, -.count-table td { - padding: 3px; - vertical-align: middle; - text-align: center; -} -.count-table td { - margin-top: 4px; -} -.count-table td:first-of-type { - width: 33%; -} -.count-table__body .count-item { - border-top: 1px solid #999; - line-height: 1.2em; -} -.filing-closing { - margin-top: 1.5rem; -} -.filing-closing.filing-closing--align-right { - display: flex; - justify-content: flex-end; -} -.filing-closing__signature-area { - display: flex; - line-height: 1.3; -} -.filing-closing__signature-box { - border-top: 1.5px solid black; - width: 65%; - margin-top: 2.5rem; - padding-top: 0.25rem; -} -.filing-closing__date-area-prose { - margin: 2.5rem 0 0 2.5rem; - border-top: 1.5px solid black; - width: 25%; -} - -.filing-closing__date-box { - border-top: 1.5px solid black; - margin-left: 35px; - width: 25%; - margin-top: 2.5rem; - padding-top: 0.25rem; -} -.filing-closing__contact-box { - margin-top: 2rem; -} -.filing-closing__phone { - margin-top: 1rem; -} - -.stipulated-closing { - margin-top: 1.5rem; -} -p.filing-dated-city { - margin-top: 1.5rem; - margin-bottom: 1.5rem; -} - -/* Ordered Lists */ - -.filing-body li { - list-style-position: inside; - text-indent: -1em; - } -/* Use "fill-in" for a solid underline where people need to fill in - * information. Use one of the cascading modifiers to get the desired width. - */ -.fill-in { - border-bottom: 1.5px solid #000; - display: inline-block; -} -.fill-in.half-width { - width: 360px; -} -.fill-in.quarter-width { - width: 180px; -} -.fill-in.word-width { - width: 100px; -} -.fill-in.digit-width { - width: 40px; -} - -/* CHeckout sheet */ -.client-checkout-header { - display: flex; - flex-direction: row; - margin-bottom: 1rem; -} - -.client-checkout-header-left { - width: 40%; - margin-right: 10px; -} -.client-checkout-header-right { - width: 55%; -} - -.pro-se { - outline: 2px solid black; - font-size: 18px !important; - padding: 3px; -} - -.county-header { - border-top: 3px solid black; - /*border-bottom: 1px solid black;*/ - margin-bottom: 3px; -} - -.atty-note-box { - border-bottom: 1px solid black; -} - -.client-text { - width: 80% !important; -} - -.summary-table td { - padding: 3px !important; -} - -.summary-table .count-row { - counter-increment: rowNumber; -} - -.summary-table .count-row td:first-child::before { - content: counter(rowNumber); - min-width: 1em; - margin-right: 0.5em; -} - -.footer__input { - width: 100%; - text-align: center; -} -.date-list { - text-align: center; - display: flex; - flex-direction: row; -} - -.pill { - text-align: center; - width: 150px; - font-size: 0.75rem; - font-weight: bold; - text-transform: uppercase; -} -.pill.pill--rounded { - border-radius: 500px; - margin: 0; - padding: 0; - margin-right: 5px; - padding: 0px 5px 0px 5px; -} - -.pill.pill--outline-black { - border: 1px solid #555; - color: #555; - background-color: transparent; -} - -@media screen { - body { - margin: 0; - } - .page { - max-width: 65rem; - width: 70%; - min-width: 50rem; - padding: 6rem; - height: 100%; - border: 2px solid #ddd; - margin-left: 19rem; - margin-right: auto; - margin-top: 8rem; - position: relative; - min-height: 50rem; - } - .footer, - .footer-space { - display: none; - } - .no-visible { - display: none !important; - } - .page:last-of-type { - margin-bottom: 100px; - } - .all-filings, - .extra-pages { - width: 100%; - min-width: 70rem; - } - - /* Styles UI Inputs */ - .page input, - .page textarea { - border: 1px dotted black; - background-color: #ffb; - padding: 0.25rem; - } - .count-item__textarea { - width: 100%; - height: 2.15rem; - margin-bottom: -2px; - margin-top: 3px; - } -} - -@media print { - @page { - size: letter portrait; - margin: 1in 0.25in 0.75in 0.25in; - } - body { - line-height: 1.3; - color: #000; - width: 8.5in; - } - .no-print { - display: none !important; - } - .page { - page-break-after: always !important; - position: relative; - overflow: visible; - background: #fff; - margin: 0; - padding-left: 0.25in; - padding-right: 0.25in; - } - .count-table + p { - padding-top: 0.5rem; - } - .spacer-page { - height: 0; - margin-bottom: -0.25in; - } - - .all-filings { - width: 93%; - border-left: 0.01in solid #000; - border-right: 0.01in solid #000; - margin-left: 15%; - } - .extra-pages { - box-sizing: border-box; - width: 100%; - margin-left: 0.75in; - margin-right: 0.75in; - page-break-after: always; - } - - .footer-space__vertical-spacer { - min-height: 50px; - } - .footer { - position: fixed; - bottom: 0; - text-align: center; - width: 100%; - display: flex; - flex-direction: column; - justify-content: flex-end; - border-bottom: 0.2in solid #fff; - margin-bottom: -0.1in; - height: 100px; - } - .footer__company { - margin: 0; - margin-bottom: 0.25em; - } - .footer__phone { - margin: 0; - } - - .count-table { - page-break-inside: auto; - } - .count-table tr { - page-break-inside: auto; - page-break-after: auto; - } - .filing-closing { - page-break-inside: avoid; - page-break-after: auto; - } - .filing-body__response { - page-break-inside: auto; - } - .filing-closing__signature-box, - .filing-closing__date-box { - margin-top: 0.5in; - } - - /* Font Size Adjustments */ - body { - font-size: 19pt; - } - .page, - p, - .page .filing-title, - .page .header__title, - td, - th { - font-size: 19pt; - } - .page p, - .page h1 { - font-size: 19pt; - } - .footer { - font-size: 14pt; - line-height: 1.2em; - font-family: 'Times New Roman', Times, serif; - } -} - -/* cover letter */ -.custom-note { - width: 100%; - height: auto; -} -.atty-block { - width: 100%; - padding-top: 15px; -} -.atty-block input, -.atty-block textarea { - width: 100%; -} - -/*manage-counts page*/ -.edit-count { - border: 1px solid #ddd; - padding: 30px; - border-radius: 5px; - position: relative; -} -.edit-count__title { - max-width: 60%; - overflow-wrap: break-word; -} - -/* MODAL SETTINGS */ -.modal-body { - display: flex; - flex-direction: column; - width: 100%; -} -.modal-body textarea, -.modal-body input, -.modal-body .card-header__select { - width: 100%; -} - -.modal-title { - font-weight: bolder; -} -.roleSelect { - width: 100%; - color: #222; -} -.modal-vla-check { - display: flex; - flex-direction: row; -} -.modal-vla-title { - width: 100%; -} -.modal-vla-check input { - width: 20%; - width: 1.2em; - height: 1.2em; - margin-left: 20px; -} - -.fee-label { - width: 100px; - margin-left: 25px; - font-weight: bold; -} -.dollar { - font: 1.5em bold; - margin: 0 3px 0 3px; -} -.fee-row input { - width: 100px; -} -.fee-row { - display: flex; - flex-direction: row; - margin: 3px; -} -.disable-box { - /* all: unset; */ - background-color: #656a70 !important; -} - -.fee-check-box { - display: flex; - flex-direction: column; - width: 300px; - margin: 20px auto 0 auto; - border: 1px solid black; - padding: 5px; -} - -.fee-check-box span { - margin: 5px 15px 5px 10px; -} -.consolidate-options label { - display: flex; - flex-direction: column; - width: 75px; - text-align: center; - font-weight: bold; -} -.consolidate-options { - display: flex; - flex-direction: row; - margin: 10px 0 0 0; -} - -.form-check { - display: flex; - flex-direction: row; -} - -.switch_box { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; -} - -/* Switch 4 Specific Style Start */ - -.form-check-label { - text-align: center; - width: 100%; -} - -.input_wrapper { - width: 80px; - height: 40px; - position: relative; - cursor: pointer; -} - -.input_wrapper input[type='checkbox'] { - width: 80px; - height: 40px; - cursor: pointer; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; - background: #315e7f; - border-radius: 2px; - position: relative; - outline: 0; - -webkit-transition: all 0.2s; - transition: all 0.2s; -} - -.input_wrapper input[type='checkbox']:after { - position: absolute; - content: ''; - top: 3px; - left: 3px; - width: 34px; - height: 34px; - background: #dfeaec; - z-index: 2; - border-radius: 2px; - -webkit-transition: all 0.35s; - transition: all 0.35s; -} - -.input_wrapper svg { - position: absolute; - top: 50%; - -webkit-transform-origin: 50% 50%; - transform-origin: 50% 50%; - fill: #fff; - -webkit-transition: all 0.35s; - transition: all 0.35s; - z-index: 1; -} - -.input_wrapper .is_checked { - width: 18px; - left: 18%; - -webkit-transform: translateX(190%) translateY(-30%) scale(0); - transform: translateX(190%) translateY(-30%) scale(0); -} - -.input_wrapper .is_unchecked { - width: 15px; - right: 10%; - -webkit-transform: translateX(0) translateY(-30%) scale(1); - transform: translateX(0) translateY(-30%) scale(1); -} - -/* Checked State */ -.input_wrapper input[type='checkbox']:checked { - background: #23da87; -} - -.input_wrapper input[type='checkbox']:checked:after { - left: calc(100% - 37px); -} - -.input_wrapper input[type='checkbox']:checked + .is_checked { - -webkit-transform: translateX(0) translateY(-30%) scale(1); - transform: translateX(0) translateY(-30%) scale(1); -} - -.input_wrapper input[type='checkbox']:checked ~ .is_unchecked { - -webkit-transform: translateX(-190%) translateY(-30%) scale(0); - transform: translateX(-190%) translateY(-30%) scale(0); -} - -/* Switch 4 Specific Style End */ diff --git a/extensionDirectory/static/filings.html b/extensionDirectory/static/filings.html deleted file mode 100644 index 2042fdd9..00000000 --- a/extensionDirectory/static/filings.html +++ /dev/null @@ -1,1474 +0,0 @@ - - - - Petitions - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - - - - - -
    - - - - - - diff --git a/extensionDirectory/static/images/VLA_logo-200-97px.png b/extensionDirectory/static/images/VLA_logo-200-97px.png deleted file mode 100644 index 7df4562c..00000000 Binary files a/extensionDirectory/static/images/VLA_logo-200-97px.png and /dev/null differ diff --git a/extensionDirectory/static/images/code4BTV-logo-300-300.png b/extensionDirectory/static/images/code4BTV-logo-300-300.png deleted file mode 100644 index b3817eb5..00000000 Binary files a/extensionDirectory/static/images/code4BTV-logo-300-300.png and /dev/null differ diff --git a/extensionDirectory/static/images/icon_128.png b/extensionDirectory/static/images/icon_128.png deleted file mode 100644 index 2554e541..00000000 Binary files a/extensionDirectory/static/images/icon_128.png and /dev/null differ diff --git a/extensionDirectory/static/images/icon_16.png b/extensionDirectory/static/images/icon_16.png deleted file mode 100644 index 2f033d67..00000000 Binary files a/extensionDirectory/static/images/icon_16.png and /dev/null differ diff --git a/extensionDirectory/static/images/icon_32.png b/extensionDirectory/static/images/icon_32.png deleted file mode 100644 index b979b67d..00000000 Binary files a/extensionDirectory/static/images/icon_32.png and /dev/null differ diff --git a/extensionDirectory/static/images/icon_48.png b/extensionDirectory/static/images/icon_48.png deleted file mode 100644 index db610253..00000000 Binary files a/extensionDirectory/static/images/icon_48.png and /dev/null differ diff --git a/extensionDirectory/static/manage-counts.html b/extensionDirectory/static/manage-counts.html deleted file mode 100644 index b6991696..00000000 --- a/extensionDirectory/static/manage-counts.html +++ /dev/null @@ -1,269 +0,0 @@ - - - - Add and Edit Counts - - - - - - - - - - - - - - - -
    -
    -
    -

    Counts for {{petitioner.name}}

    -
    - - - - View Petitions - -
    -
    -
    - -
    -

    Petitioner Information

    - -
    - - -
    - -
    - -
    -
    - -
    -

    - Count {{index + 1}}: - {{group.description}} -

    -

    {{group.docketNum}} {{group.county | toCountyCode}}

    - -
    -
    - - -
    - - - - -
    - - -
    - -
    - -
    - - -
    - - - -
    - -
    - - - -
    -
    - -
    - -
    - - - - - -
    - -

    - {{group.titleNum || '-'}} V.S.A. § {{group.sectionNum || - '-'}} ({{group.offenseClass || '-'}}) -

    - -
    - -
    - -
    - -
    -
    - - - diff --git a/extensionDirectory/static/popup.css b/extensionDirectory/static/popup.css deleted file mode 100644 index a6e85442..00000000 --- a/extensionDirectory/static/popup.css +++ /dev/null @@ -1,392 +0,0 @@ -body { - width: 475px; - min-height: 400px; - height: auto; - box-sizing: border-box; -} - -body:before { - content: ''; - border: 2px solid grey; - position: fixed; - top: 0; - left: 0; - right: 0; - bottom: 0; - z-index: 1000; - pointer-events: none; -} -button { - outline: none; -} - -.pet-label, -.pet-details { - margin: 0; -} - -#edit-petitioner { - margin-left: 20px; - height: 30px; -} -.pet-item .btn { - padding: 0 1rem; -} -.pet-detail { - padding: 0px 5px 0px 5px; - word-break: break-all; - width: 60%; -} -p.pet-detail { - margin: 0; -} -.pet-item { - display: flex; - margin-top: 5px; - align-items: baseline; -} - -.pet-label { - width: 100px; - padding-left: 15px; - font-size: 14px; - font-weight: bold; - font-family: Helvetica, Arial, sans-serif; -} -.pet-label-info { - width: 100%; - padding-left: 15px; - padding-right: 15px; - font-size: 14px; - font-weight: bold; - font-family: Helvetica, Arial, sans-serif; - display: flex; - flex-direction: column; - text-decoration: none; -} - -.pet-label-info a, -.pet-label-info a:hover, -.pet-label-info a:link, -.pet-label-info a:active, -.pet-label-info a:visited { - text-decoration: none; -} - -.pet-label-info .card { - display: block; -} - -.fa-exclamation-triangle { - color: red; -} - -.pet-detail[contenteditable='true'] { - outline: 1px solid black; -} -.count-cards { - margin-bottom: 15px; -} - -.accordion { - white-space: normal; - text-decoration: none !important; -} - -.empty-state { - width: 100%; - height: 100%; - background-color: white; - /* position:fixed; */ - padding: 0; - margin: 0; - box-sizing: border-box; - top: 0; - left: 0; - border: 2px solid grey; -} -.inset { - padding-left: 2px; - padding-right: 2px; -} -#bottomText { - position: relative; - font-size: 0.75rem; - z-index: 100; -} - -.popTop { - display: flex; - flex-direction: row; - width: 100%; -} - -#defendantInfo { - width: 70%; -} - -#logoDiv { - display: flex; - flex-direction: column; - text-align: center; - justify-content: flex-start; - align-items: center; - width: 25%; -} - -#logoDiv .logos { - width: 50px; -} - -#logoDivCover { - display: flex; - flex-direction: row; - align-content: center; - text-align: center; - width: 100%; - margin-top: 40px; -} - -#mainButtonDiv { - position: relative; - z-index: 0; -} - -#code4btv { - width: 20%; - height: 20%; - display: block; - margin-left: 100px; - margin-right: auto; -} - -#legal-aid { - width: 40%; - height: 40%; - display: block; - margin-left: auto; - margin-right: 60px; -} - -#introText { - margin-top: 10px; - width: 80%; - text-align: center; - margin-left: auto; - margin-right: auto; - border: 1px solid grey; -} - -.card-header__disposition-date { - white-space: nowrap; - font-size: 14px; -} - -.title-page__link { - margin-top: 10px; - margin-bottom: 10px; - width: 70%; - text-align: center; - margin-left: auto; - margin-right: auto; -} -#vtCourtsOnlineA { - position: relative; - z-index: 99; -} - -.section-label { - margin: 5px 10px; - font-weight: bold; -} - -hr { - margin-top: 2px !important; -} - -.dates-box { - display: flex; - flex-direction: row; -} - -.single-date { - outline: 1px solid blue; - padding: 2px; -} - -.card-body { - padding: 2px !important; - font-size: 14px; - font-family: Helvetica, Arial, sans-serif; -} - -.card-body p { - display: flex; - flex-direction: row; - margin: 1px !important; -} - -.card-body .table th, -.card-body .table td { - padding: 4px; -} - -.clear-data { - width: 100px; - margin-bottom: 3px; - margin: 10px 5px 10px 5px; - align-self: center; -} -.reset-settings { - font-weight: 500; - color: #777777; - cursor: pointer; -} -.reset-settings:hover { - color: #222222; -} -.button-div { - display: flex; - flex-direction: row; - width: auto; - justify-content: center; - margin: 15px 10px 5px 10px; - text-align: center; -} - -.button-div button { - margin: 5px; -} - -.add-docket-info { - width: 158px; -} - -.create-documents { - width: 250px; -} - -/* Count Cards */ -.card { - margin-bottom: 0.5rem; -} -.card .card-header { - padding: 0.5rem; - -webkit-appearance: none; - cursor: pointer; -} -.card-header__column { - position: relative; - display: flex; - flex-direction: column; - width: 100%; -} -.card-header__title-row { - position: relative; - display: flex; - flex-direction: row; - align-content: stretch; - justify-content: space-between; - width: 100%; - text-align: left; - margin-bottom: 0.5rem; -} -.card-header__title-row p { - margin-bottom: 0; -} -.card-header__title-row .btn { - white-space: normal; - text-align: left; - padding: 0; -} -.card-header__meta-data { - width: 55%; - hyphens: auto; -} -.card-header__select { - width: 45%; - margin-left: 0.5rem; -} -.card-header__select select { - width: 100%; -} - -.card-header__bottom-row { - display: flex; - flex-direction: row; -} - -.card-header__pills-row { - display: flex; - flex-direction: row; - width: 95%; - margin: 0; -} -.card-header__bottom-row i { - color: Red; -} - -.card-header__description { - text-decoration: none !important; - color: black !important; -} - -.card-header__description.btn-link:hover { - text-decoration: none !important; - color: black !important; -} - -/* Pills */ - -.pill { - min-width: 50px; - font-size: 0.75rem; - font-weight: bold; - text-transform: uppercase; -} -.pill.pill--rounded { - border-radius: 500px; - margin: 0; - padding: 0; - margin-right: 5px; - padding: 0px 5px 0px 5px; -} - -.pill.pill--outline-green { - border: 2px solid #2fa54a; - color: #2fa54a; - background-color: transparent; -} - -.pill.pill--outline-black { - border: 2px solid #555; - color: #555; - background-color: transparent; -} -.popup-edition-wrap { - width: 100%; -} -.popup-edition { - margin: 15px auto 0px auto; - width: 70%; - text-align: center; - border: 2px solid #003300; - color: #4d99d3; - font-weight: 800; -} - -.popup-edition-sub { - text-align: center; - color: #4d99d3; - font-style: italic; -} - -.donate-box { - width: 100%; - text-align: center; - margin-bottom: 10px; -} - -.donate { - margin: auto !important; -} diff --git a/extensionDirectory/static/popup.html b/extensionDirectory/static/popup.html deleted file mode 100644 index d270c167..00000000 --- a/extensionDirectory/static/popup.html +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - -
    -
    - - - diff --git a/extensionDirectory/webpack.config.js b/extensionDirectory/webpack.config.js deleted file mode 100644 index feea3703..00000000 --- a/extensionDirectory/webpack.config.js +++ /dev/null @@ -1,18 +0,0 @@ -// webpack.config.js -const { VueLoaderPlugin } = require('vue-loader') - -module.exports = { - module: { - rules: [ - // ... other rules - { - test: /\.vue$/, - loader: 'vue-loader' - } - ] - }, - plugins: [ - // make sure to include the plugin! - new VueLoaderPlugin() - ] -} \ No newline at end of file diff --git a/extensionDirectory/jsconfig.json b/jsconfig.json old mode 100755 new mode 100644 similarity index 94% rename from extensionDirectory/jsconfig.json rename to jsconfig.json index cd04420a..752e89d7 --- a/extensionDirectory/jsconfig.json +++ b/jsconfig.json @@ -1,9 +1,9 @@ -{ - "allowJs": true, - "compilerOptions": { - "baseUrl": ".", - "paths": { - "@/*": ["./*"] - } - } +{ + "allowJs": true, + "compilerOptions": { + "baseUrl": ".", + "paths": { + "@/*": ["./*"] + } + } } \ No newline at end of file diff --git a/meeting notes/.DS_Store b/meeting notes/.DS_Store deleted file mode 100644 index 8b5bd471..00000000 Binary files a/meeting notes/.DS_Store and /dev/null differ diff --git a/extensionDirectory/package-lock.json b/package-lock.json similarity index 79% rename from extensionDirectory/package-lock.json rename to package-lock.json index dae77918..ca8bd135 100644 --- a/extensionDirectory/package-lock.json +++ b/package-lock.json @@ -20,12 +20,15 @@ "vue": "^3.1.0" }, "devDependencies": { + "@rollup/plugin-inject": "^5.0.3", + "@vitejs/plugin-vue": "^4.0.0", "@vue/compiler-sfc": "^3.2.37", "esbuild": "^0.14.42", "esbuild-copy-static-files": "^0.1.0", "esbuild-plugin-vue3": "^0.3.0", "npm-run-all": "^4.1.5", - "prettier": "^2.0.5" + "prettier": "^2.0.5", + "vite": "^4.0.4" } }, "node_modules/@babel/parser": { @@ -39,6 +42,358 @@ "node": ">=6.0.0" } }, + "node_modules/@esbuild/android-arm": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.17.tgz", + "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz", + "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.17.tgz", + "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz", + "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz", + "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz", + "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz", + "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz", + "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz", + "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz", + "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz", + "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz", + "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz", + "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz", + "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz", + "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz", + "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz", + "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz", + "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz", + "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz", + "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz", + "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz", + "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@fortawesome/fontawesome-free": { "version": "5.13.0", "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-5.13.0.tgz", @@ -47,6 +402,87 @@ "node": ">=6" } }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "node_modules/@rollup/plugin-inject": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-inject/-/plugin-inject-5.0.3.tgz", + "integrity": "sha512-411QlbL+z2yXpRWFXSmw/teQRMkXcAAC8aYTemc15gwJRpvEVDQwoe+N/HTFD8RFG8+88Bme9DK2V9CVm7hJdA==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "estree-walker": "^2.0.2", + "magic-string": "^0.27.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-inject/node_modules/magic-string": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz", + "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.2.tgz", + "integrity": "sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@types/estree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", + "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==", + "dev": true + }, + "node_modules/@vitejs/plugin-vue": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.0.0.tgz", + "integrity": "sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==", + "dev": true, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.0.0", + "vue": "^3.2.25" + } + }, "node_modules/@vue/compiler-core": { "version": "3.2.37", "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz", @@ -817,6 +1253,20 @@ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, "node_modules/function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", @@ -1354,6 +1804,18 @@ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/pidtree": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", @@ -1386,9 +1848,9 @@ } }, "node_modules/postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", "funding": [ { "type": "opencollective", @@ -1452,12 +1914,12 @@ } }, "node_modules/resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dev": true, "dependencies": { - "is-core-module": "^2.8.1", + "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -1468,6 +1930,22 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/rollup": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.10.1.tgz", + "integrity": "sha512-3Er+yel3bZbZX1g2kjVM+FW+RUWDxbG87fcqFM5/9HbPCTpbVp6JOLn7jlxnNlbu7s/N/uDA4EV/91E2gWnxzw==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, "node_modules/semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -1680,6 +2158,92 @@ "spdx-expression-parse": "^3.0.0" } }, + "node_modules/vite": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.0.4.tgz", + "integrity": "sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==", + "dev": true, + "dependencies": { + "esbuild": "^0.16.3", + "postcss": "^8.4.20", + "resolve": "^1.22.1", + "rollup": "^3.7.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite/node_modules/esbuild": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz", + "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.16.17", + "@esbuild/android-arm64": "0.16.17", + "@esbuild/android-x64": "0.16.17", + "@esbuild/darwin-arm64": "0.16.17", + "@esbuild/darwin-x64": "0.16.17", + "@esbuild/freebsd-arm64": "0.16.17", + "@esbuild/freebsd-x64": "0.16.17", + "@esbuild/linux-arm": "0.16.17", + "@esbuild/linux-arm64": "0.16.17", + "@esbuild/linux-ia32": "0.16.17", + "@esbuild/linux-loong64": "0.16.17", + "@esbuild/linux-mips64el": "0.16.17", + "@esbuild/linux-ppc64": "0.16.17", + "@esbuild/linux-riscv64": "0.16.17", + "@esbuild/linux-s390x": "0.16.17", + "@esbuild/linux-x64": "0.16.17", + "@esbuild/netbsd-x64": "0.16.17", + "@esbuild/openbsd-x64": "0.16.17", + "@esbuild/sunos-x64": "0.16.17", + "@esbuild/win32-arm64": "0.16.17", + "@esbuild/win32-ia32": "0.16.17", + "@esbuild/win32-x64": "0.16.17" + } + }, "node_modules/vue": { "version": "3.2.36", "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.36.tgz", @@ -1790,11 +2354,217 @@ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.4.tgz", "integrity": "sha512-FDge0dFazETFcxGw/EXzOkN8uJp0PC7Qbm+Pe9T+av2zlBpOgunFHkQPPn+eRuClU73JF+98D531UgayY89tow==" }, + "@esbuild/android-arm": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.17.tgz", + "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==", + "dev": true, + "optional": true + }, + "@esbuild/android-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz", + "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==", + "dev": true, + "optional": true + }, + "@esbuild/android-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.17.tgz", + "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==", + "dev": true, + "optional": true + }, + "@esbuild/darwin-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz", + "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==", + "dev": true, + "optional": true + }, + "@esbuild/darwin-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz", + "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz", + "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz", + "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz", + "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz", + "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ia32": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz", + "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==", + "dev": true, + "optional": true + }, + "@esbuild/linux-loong64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz", + "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-mips64el": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz", + "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ppc64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz", + "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==", + "dev": true, + "optional": true + }, + "@esbuild/linux-riscv64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz", + "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==", + "dev": true, + "optional": true + }, + "@esbuild/linux-s390x": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz", + "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==", + "dev": true, + "optional": true + }, + "@esbuild/linux-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz", + "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==", + "dev": true, + "optional": true + }, + "@esbuild/netbsd-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz", + "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==", + "dev": true, + "optional": true + }, + "@esbuild/openbsd-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz", + "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==", + "dev": true, + "optional": true + }, + "@esbuild/sunos-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz", + "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==", + "dev": true, + "optional": true + }, + "@esbuild/win32-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz", + "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==", + "dev": true, + "optional": true + }, + "@esbuild/win32-ia32": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz", + "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==", + "dev": true, + "optional": true + }, + "@esbuild/win32-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz", + "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==", + "dev": true, + "optional": true + }, "@fortawesome/fontawesome-free": { "version": "5.13.0", "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-5.13.0.tgz", "integrity": "sha512-xKOeQEl5O47GPZYIMToj6uuA2syyFlq9EMSl2ui0uytjY9xbe8XS0pexNWmxrdcCyNGyDmLyYw5FtKsalBUeOg==" }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "@rollup/plugin-inject": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-inject/-/plugin-inject-5.0.3.tgz", + "integrity": "sha512-411QlbL+z2yXpRWFXSmw/teQRMkXcAAC8aYTemc15gwJRpvEVDQwoe+N/HTFD8RFG8+88Bme9DK2V9CVm7hJdA==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^5.0.1", + "estree-walker": "^2.0.2", + "magic-string": "^0.27.0" + }, + "dependencies": { + "magic-string": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz", + "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", + "dev": true, + "requires": { + "@jridgewell/sourcemap-codec": "^1.4.13" + } + } + } + }, + "@rollup/pluginutils": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.2.tgz", + "integrity": "sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==", + "dev": true, + "requires": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^2.3.1" + } + }, + "@types/estree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", + "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==", + "dev": true + }, + "@vitejs/plugin-vue": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.0.0.tgz", + "integrity": "sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==", + "dev": true, + "requires": {} + }, "@vue/compiler-core": { "version": "3.2.37", "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz", @@ -2318,6 +3088,13 @@ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "optional": true + }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", @@ -2703,6 +3480,12 @@ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, "pidtree": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", @@ -2721,9 +3504,9 @@ "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==" }, "postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", "requires": { "nanoid": "^3.3.4", "picocolors": "^1.0.0", @@ -2759,16 +3542,25 @@ } }, "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dev": true, "requires": { - "is-core-module": "^2.8.1", + "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" } }, + "rollup": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.10.1.tgz", + "integrity": "sha512-3Er+yel3bZbZX1g2kjVM+FW+RUWDxbG87fcqFM5/9HbPCTpbVp6JOLn7jlxnNlbu7s/N/uDA4EV/91E2gWnxzw==", + "dev": true, + "requires": { + "fsevents": "~2.3.2" + } + }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -2935,6 +3727,51 @@ "spdx-expression-parse": "^3.0.0" } }, + "vite": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.0.4.tgz", + "integrity": "sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==", + "dev": true, + "requires": { + "esbuild": "^0.16.3", + "fsevents": "~2.3.2", + "postcss": "^8.4.20", + "resolve": "^1.22.1", + "rollup": "^3.7.0" + }, + "dependencies": { + "esbuild": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz", + "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==", + "dev": true, + "requires": { + "@esbuild/android-arm": "0.16.17", + "@esbuild/android-arm64": "0.16.17", + "@esbuild/android-x64": "0.16.17", + "@esbuild/darwin-arm64": "0.16.17", + "@esbuild/darwin-x64": "0.16.17", + "@esbuild/freebsd-arm64": "0.16.17", + "@esbuild/freebsd-x64": "0.16.17", + "@esbuild/linux-arm": "0.16.17", + "@esbuild/linux-arm64": "0.16.17", + "@esbuild/linux-ia32": "0.16.17", + "@esbuild/linux-loong64": "0.16.17", + "@esbuild/linux-mips64el": "0.16.17", + "@esbuild/linux-ppc64": "0.16.17", + "@esbuild/linux-riscv64": "0.16.17", + "@esbuild/linux-s390x": "0.16.17", + "@esbuild/linux-x64": "0.16.17", + "@esbuild/netbsd-x64": "0.16.17", + "@esbuild/openbsd-x64": "0.16.17", + "@esbuild/sunos-x64": "0.16.17", + "@esbuild/win32-arm64": "0.16.17", + "@esbuild/win32-ia32": "0.16.17", + "@esbuild/win32-x64": "0.16.17" + } + } + } + }, "vue": { "version": "3.2.36", "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.36.tgz", diff --git a/extensionDirectory/package.json b/package.json similarity index 77% rename from extensionDirectory/package.json rename to package.json index 92644353..536d7968 100644 --- a/extensionDirectory/package.json +++ b/package.json @@ -3,6 +3,11 @@ "version": "3.3.0", "description": "", "main": "background.js", + "scripts": { + "build": "vite build --emptyOutDir", + "pretty-up": "npx prettier --write \"./**/*.{js,html,css}\"", + "pretty-check": "npx prettier --check \"./**/*.{js,html,css}\"" + }, "dependencies": { "@fortawesome/fontawesome-free": "^5.13.0", "bootstrap": "^4.4.1", @@ -15,20 +20,15 @@ "vue": "^3.1.0" }, "devDependencies": { + "@rollup/plugin-inject": "^5.0.3", + "@vitejs/plugin-vue": "^4.0.0", "@vue/compiler-sfc": "^3.2.37", "esbuild": "^0.14.42", "esbuild-copy-static-files": "^0.1.0", "esbuild-plugin-vue3": "^0.3.0", "npm-run-all": "^4.1.5", - "prettier": "^2.0.5" - }, - "scripts": { - "pretty-up": "npx prettier --write \"./**/*.{js,html,css}\"", - "pretty-check": "npx prettier --check \"./**/*.{js,html,css}\"", - "test": "echo \"Error: no test specified\" && exit 1", - "build": "node build.js", - "build:watch": "echo 'TODO: Setup watch building'", - "postbuild": "npm i --production --prefix=./build" + "prettier": "^2.0.5", + "vite": "^4.0.4" }, "keywords": [], "author": "", diff --git a/extensionDirectory-build/background.js b/public/background.js similarity index 100% rename from extensionDirectory-build/background.js rename to public/background.js diff --git a/extensionDirectory-build/images/VLA_logo-200-97px.png b/public/images/VLA_logo-200-97px.png similarity index 100% rename from extensionDirectory-build/images/VLA_logo-200-97px.png rename to public/images/VLA_logo-200-97px.png diff --git a/extensionDirectory-build/images/code4BTV-logo-300-300.png b/public/images/code4BTV-logo-300-300.png similarity index 100% rename from extensionDirectory-build/images/code4BTV-logo-300-300.png rename to public/images/code4BTV-logo-300-300.png diff --git a/extensionDirectory-build/images/icon_128.png b/public/images/icon_128.png similarity index 100% rename from extensionDirectory-build/images/icon_128.png rename to public/images/icon_128.png diff --git a/extensionDirectory-build/images/icon_16.png b/public/images/icon_16.png similarity index 100% rename from extensionDirectory-build/images/icon_16.png rename to public/images/icon_16.png diff --git a/extensionDirectory-build/images/icon_32.png b/public/images/icon_32.png similarity index 100% rename from extensionDirectory-build/images/icon_32.png rename to public/images/icon_32.png diff --git a/extensionDirectory-build/images/icon_48.png b/public/images/icon_48.png similarity index 100% rename from extensionDirectory-build/images/icon_48.png rename to public/images/icon_48.png diff --git a/extensionDirectory/static/manifest.json b/public/manifest.json similarity index 85% rename from extensionDirectory/static/manifest.json rename to public/manifest.json index f7226919..ca2e6164 100644 --- a/extensionDirectory/static/manifest.json +++ b/public/manifest.json @@ -1,13 +1,13 @@ { - "name": "ExpungeVT!", - "version": "4.1.1", + "name": "ExpungeVT NEW!", + "version": "5.1.1", "description": "Co-counsel Edition - Expunge Harder. Expunge Smarter.", "permissions": [ - "activeTab", + "storage", "declarativeContent", + "activeTab", "downloads", - "scripting", - "storage" + "scripting" ], "background": { "service_worker": "background.js" @@ -19,7 +19,7 @@ "48": "images/icon_48.png", "128": "images/icon_128.png" }, - "default_popup": "popup.html" + "default_popup": "popup/index.html" }, "icons": { "16": "images/icon_16.png", @@ -36,4 +36,4 @@ "*" ] } -} \ No newline at end of file +} diff --git a/extensionDirectory-build/payload.js b/public/payload.js similarity index 100% rename from extensionDirectory-build/payload.js rename to public/payload.js diff --git a/extensionDirectory/components/checkout-offense-row.vue b/src/components/checkout-offense-row.vue similarity index 100% rename from extensionDirectory/components/checkout-offense-row.vue rename to src/components/checkout-offense-row.vue diff --git a/extensionDirectory/components/docket-caption.vue b/src/components/docket-caption.vue similarity index 100% rename from extensionDirectory/components/docket-caption.vue rename to src/components/docket-caption.vue diff --git a/extensionDirectory/components/filing-dated-city.vue b/src/components/filing-dated-city.vue similarity index 100% rename from extensionDirectory/components/filing-dated-city.vue rename to src/components/filing-dated-city.vue diff --git a/extensionDirectory/components/filing-footer.vue b/src/components/filing-footer.vue similarity index 100% rename from extensionDirectory/components/filing-footer.vue rename to src/components/filing-footer.vue diff --git a/extensionDirectory/components/filing-nav.vue b/src/components/filing-nav.vue similarity index 100% rename from extensionDirectory/components/filing-nav.vue rename to src/components/filing-nav.vue diff --git a/extensionDirectory/components/filing-type-heading.vue b/src/components/filing-type-heading.vue similarity index 100% rename from extensionDirectory/components/filing-type-heading.vue rename to src/components/filing-type-heading.vue diff --git a/src/components/index.js b/src/components/index.js new file mode 100644 index 00000000..034b91ba --- /dev/null +++ b/src/components/index.js @@ -0,0 +1,17 @@ +import pillsRow from './pills-row.vue'; +import checkoutOffenseRow from './checkout-offense-row.vue' +import docketCaption from './docket-caption.vue' +import filingDatedCity from './filing-dated-city.vue' +import filingFooter from './filing-footer.vue' +import filingNav from './filing-nav.vue' +import filingTypeHeading from './filing-type-heading.vue' + +export { + pillsRow, + checkoutOffenseRow, + docketCaption, + filingDatedCity, + filingFooter, + filingNav, + filingTypeHeading +} diff --git a/extensionDirectory/components/pills-row.vue b/src/components/pills-row.vue similarity index 100% rename from extensionDirectory/components/pills-row.vue rename to src/components/pills-row.vue diff --git a/extensionDirectory/components/popup.vue b/src/components/popup.vue similarity index 98% rename from extensionDirectory/components/popup.vue rename to src/components/popup.vue index f73d65e4..37e24e9d 100644 --- a/extensionDirectory/components/popup.vue +++ b/src/components/popup.vue @@ -13,7 +13,7 @@ import filingFooter from './filing-footer.vue' import filingNav from './filing-nav.vue' import filingTypeHeading from './filing-type-heading.vue' -import { devLog, getError } from '../utils'; +import { devLog, getError } from '../scripts/utils'; const maxCountsOnNoA = 10; // Vue.config.devtools = true; @@ -312,7 +312,7 @@ export default { methods: { saveSettings: function () { // devLog("save settings", this.settings) - settingString = JSON.stringify(this.settings); + var settingString = JSON.stringify(this.settings); localStorage.setItem('localExpungeVTSettings', settingString); }, saveResponses: function () { @@ -335,7 +335,7 @@ export default { callback = function () { }; } devLog(localStorage.getItem('localExpungeVTSettings')); - localResult = JSON.parse(localStorage.getItem('localExpungeVTSettings')); + var localResult = JSON.parse(localStorage.getItem('localExpungeVTSettings')); if ( localResult !== undefined && localResult !== '' && @@ -879,7 +879,7 @@ export default { (tabs) => { let index = tabs[0].index; chrome.tabs.create({ - url: chrome.runtime.getURL('./filings.html'), + url: chrome.runtime.getURL('./filings/index.html'), index: index + 1, }); } @@ -901,7 +901,7 @@ export default { (tabs) => { let index = tabs[0].index; chrome.tabs.create({ - url: chrome.runtime.getURL('./manage-counts.html'), + url: chrome.runtime.getURL('./manage-counts/index.html'), index: index + 1, }); } @@ -1265,13 +1265,13 @@ export default {
    Home Home @@ -1315,7 +1315,7 @@ export default { >

    - +

    Terms & Conditions