9c6838e5c8
* Setup basic storybook page * storybook preview pages don’t have padding * Added a storybook story for the side menu * WIP on a new side menu component * New variant for the side menu button style * Side menu items can now recieve a badge ‘count’ * Storybook side menu update * Added a new font size * you can now set the spacing between an icon and the text * Moving the error and count badge to the right side of the button * Added a menu sub item button style * added sub items to the menu and all the rest of the items * Proper background class used * Added a side menu header and main org header * Removed the no-mobile blocker overlay so you can use the site on a phone * Better section name * Created a cusom popover trigger that can take anything as children. Also the popover titles can now take a variant * Added a popover for the user avatar menu item * Removed the tool tip * Arrow Popover can no also go full width * neater conditiona; * Removed unnessary div. And error icon can display an error message * menu item buttons can take a variant * Added placeholder items for the org dropdown * add a max height to the org menu popover and handle scrollbars * Added a border if the menu scrolls when you have lots of project items * warning badges display tooltips if you give them some error text * Removed the sticky header so the scrollbar looks better * Fixed a layout issue from removing the sticky header * Better spacing between lists * Popover can take any react component icon and an icon classname * Side menu headers now have a dropdown by clicking the ellipsis icon * Side menu items can take an icon colour * Updated styling for the dropdown Popover menus * Installed Tabler icons * Updated some icons to use Tabler * Started defining the HttpTrigger class * RequestFilterSchema is part of core * Use the RequestFilterSchema from core * EventSpecificationExample now derived from schema * Need to define the class like EventTrigger * Catalog reference that uses the httpTrigger * The logic for the httpTrigger is in the separate file, just call it from the client using defineHttpTrigger * Basic HttpTrigger * Import fixes * Transforming httpTrigger to the format we want * Initial httpTrigger types working * Added HTTP generic type * Added some notes * Rejigged some things to support verifying payloads * Use new security function for verifying * Added truncating text support if side menu names get long * Renamed some stuff * Removed test copy * HttpEndpoin that isn’t a trigger * Renamed hostname to source * Created HttpEndpoint as a top-level concept, it produces triggers using onRequest * Started working on registration of the httpEndpoints * Removed the new TriggerMetadata for now, http will use static * Added PayloadType to EventRecord. Default is JSON. * The payload from an HTTPEndpoint is now a Request * Initial TriggerHttpEndpoint migrations * Initial server side work * Migration to add shortcode to RuntimeEnvironment * Added TriggerHttpEndpointEnvironment table * Made the httptrigger catalog example runnable * Progress creating/updating httpEndpoints * HTTPEndpointEnvironment updating now works * Added a note about EventRecord HttpEndpoint relationship * When creating environments, create a shortcode * Fix for secret not being retrieved correctly * Request filtering * Add DOM types to Core * Early work dealing with a webhook arriving * Added some todo notes to discuss tomorrow * Added relations to the endpoint so we can call the user’s server * Basic handling of immediate responses * The immediate responses are now going back to the webhook provider * Handling is now generating events and responding where relevant. Not yet matching filters and doing verification * Added source to TriggerHttpEndpointEnvironment * The event filter is now optional * The source is passed through from the httpEndpointEnv * Added optional payloadType when ingesting an event * Added tabler * Updated @remix-run/testing usage for remix 2 * Fixed org menu header width and added org and project types * Added custom icons for Runs and Endpoints * Updated the menu icons * storybook side menu shows static project and org data * Updated side menu * Plumbed in paths * Updated eventFilter to deal with undefined/null payloads * Started work on filtering, but it’s not working * Strict null * async filtering it working * Added environment shortcodes to the seedCloud script * Don’t pass the secret back, added a verifyPayload function that gets called before runs start * Fix for skipping triggering runs * The verify callback is now passed through to the trigger so it can be called * If verifying fails, have a reason which we can show to the user * Don’t verify if it’s a test run * Fixed the log in the example code * Added loader and action to storybook preview * Fix for svg attribute name issues in EndpointIcon * Started work on the side menu * This logic has moved to a separate file, in a different branch * Don’t get the environments when getting orgs * Lots of fixes for the new SideMenu * Refactored some org/project things to fit the new structure better * Some progress restructuring the app for the new sidebar * More changes to data loading * Deleted some old pages. The redirecting is working if you’re on the root but logged in * Basic styling for the account page. We need a back button * Fixes for the integrations pages * Breadcrumb implemented * Add a border to the bottom of the breadcrumb * Feedback is working, not in Storybook * Removed expandSidebar from the Handle * Org level breadcrumbs * Getting the project in the org route now works properly * orgslug route before using the presenter * More UI improvements * Removed commented out line * Use presenters for org and root * Removed forceActive * Split the project selector and user menu out * The side menu items have correct active states * Fixed the scrolling * Put the org name in * Improved the admin features * Created the HTTP Endpoints list page * Work on the HTTP endpoint page * WIP on the HTTP Endpoint page * Fix for response filter not showing * Change page URLs to “http-endpoints” (from httpendpoints) * Slugify the HTTP endpoint id * Added todos for EventRecord associations * Removed the Job/Trigger tab for now * First draft of the help panels * Rejigged the HTTP endpoint page so it splits out the deployed and not deployed environments * Removed irrelevant columns * Added a link to the deployment guide * Removed the background image from the frameworks pages Also… - reordered the frameworks so supported ones come first in the list - added logos to 3 framework pages that were missing them - removed lots of un-used imports * Fixed an issue where the breadcrumb could be hidden on small screens so broken the pages The breadcrumb is always visible now * Renamed ‘Onboarding’ to ‘Framework setup’ * Added a new http-endpoint icon to the side menu * Side menu now has a nice looking scrollbar * Scrollbar on the usage and billing page updated to the nice style * Icon and colour updates to the side bar menu items * Small copy improvement * Fixed bug with the height of the org menu dropdown * Page breadcrumbs now don’t include duplicate path links * renamed uiBorder to ui-border * Remove the padding from the small menu item if it’s used as a button * Made the paragraph text a bit smaller * EventRecord has relationships with TriggerHttpEndpoint/TriggerHttpEndpointEnvironment * Improved the presenter used by the side menu. Also added the HTTP Endpoint badge count to the sidebar * The dropdown org menu has the same badge as the side menu * Improved the Projects page * Fixed button style miss-match in the jobs table dropdown * Made the popover dialogs support Headers and improved the regenerate API key popover * Made the active status of a job more subtle * Allow the Job to have a link on its Trigger * Simplified loader because we ditched the Jobs menu. Also showing no runs help panel now * Fixed type errors * Pages that are org level can scroll if the content gets too long * Fixed a redirect bug so you now redirect to the org page * Updated the shortcode migration, to add additional letters to the end * Removed the nav bar from the welcome onboarding page * Only show the countBadge if the number is > 0 * Jobs icon now has a default colour the same as the nav menu * Capital I for integration * Clone the request before calling verify * Separate the checks out so they can be easily logged * Make the failure reason optional * Made the verification error look better, if it’s provided * Working WhatsApp example * Can set the immediateResponseFilter to null in an update * Deal with a null immediateResponseFilter * Cal.com webhook working * Header height reduced slightly * Fixed button padding * Removed un-used imports * http endpoint table displays a message if you have no entries in the table * Removed some duplicate text and swapped primary buttons for secondary style * All ‘HTTP Endpoints’ now ‘HTTP endpoints’ * You have to use a RequestFilter when using HTTP Trigger * Synchronous eventDispatcher filtering again. Better content-type check * Stripe example * Side menu “Usage & Billing” is just “Usage” if self-hosting * Fix for filtering not working * Removed filter log * Fix for jobs being optional and null * Removed old nav bar from the invite page * Deleted old nav bar component * import cleanup * NoTask message only displays if the run has status “SUCCESS” * Added a global page loading indicator * Added documentation buttons to the most important pages * Added GitHub * Use “verifyRequestSignature” helpr * Removed todo * Fixed the layout of the Rerun Job popover * Jobs table has margin bottom so it sits off the bottom of the page * Small improvement to the search bar layout on the integration page * HTTP endpoint and Trigger concept docs * Reference docs and JSDocs for HTTP endpoint * SDK reference docs for HttpEndpoint * Added an HttpTrigger SDK reference, which mainly just point you elsewhere * Improved the copy in the help panels * Removed unused code * Improved HTTP endpoint comment about setting the secret * Delete unused asyncFilter * Fixed the delete modal not having a title * Always try get the arrayBuffer for an HTTP request, catch and use undefined as the default * Add extra method to invokeTrigger * Use a transaction for the secret store * verifyRequestSignature docs page and JSDocs * Added verifyRequestSignature docs page to nav * Warn if they use the same HttpEndpoint id twice * Added another job using the same HttpEndpoint * Renamed the api route to http-endpoints from httpendpoints * Debug bar for VSCode is now in the commandCenter --------- Co-authored-by: James Ritchie <james@jamesritchie.co.uk>
187 lines
6.3 KiB
JSON
187 lines
6.3 KiB
JSON
{
|
|
"private": true,
|
|
"name": "webapp",
|
|
"version": "1.0.0",
|
|
"sideEffects": false,
|
|
"scripts": {
|
|
"build": "run-s build:**",
|
|
"build:db:seed": "esbuild --platform=node --bundle --minify --format=cjs ./prisma/seed.ts --outdir=prisma",
|
|
"build:remix": "remix build",
|
|
"build:server": "esbuild --platform=node --format=cjs ./server.ts --outdir=build",
|
|
"dev": "cross-env PORT=3030 remix dev",
|
|
"format": "prettier --write .",
|
|
"lint": "eslint --cache --cache-location ./node_modules/.cache/eslint .",
|
|
"start": "cross-env NODE_ENV=production node --max-old-space-size=8192 ./build/server.js",
|
|
"start:local": "cross-env node --max-old-space-size=8192 ./build/server.js",
|
|
"typecheck": "tsc -p ./tsconfig.check.json",
|
|
"db:seed": "node prisma/seed.js",
|
|
"db:seed:local": "ts-node prisma/seed.ts",
|
|
"generate:sourcemaps": "remix build --sourcemap",
|
|
"clean:sourcemaps": "run-s clean:sourcemaps:*",
|
|
"clean:sourcemaps:public": "rimraf ./build/**/*.map",
|
|
"clean:sourcemaps:build": "rimraf ./public/build/**/*.map",
|
|
"storybook": "storybook dev -p 6006 --no-open",
|
|
"build-storybook": "storybook build"
|
|
},
|
|
"eslintIgnore": [
|
|
"/node_modules",
|
|
"/build",
|
|
"/public/build"
|
|
],
|
|
"dependencies": {
|
|
"@codemirror/autocomplete": "^6.3.1",
|
|
"@codemirror/commands": "^6.1.2",
|
|
"@codemirror/lang-javascript": "^6.1.1",
|
|
"@codemirror/lang-json": "^6.0.1",
|
|
"@codemirror/language": "^6.3.1",
|
|
"@codemirror/lint": "^6.4.2",
|
|
"@codemirror/search": "^6.2.3",
|
|
"@codemirror/state": "^6.1.3",
|
|
"@codemirror/view": "^6.5.0",
|
|
"@conform-to/react": "^0.6.1",
|
|
"@conform-to/zod": "^0.6.1",
|
|
"@headlessui/react": "^1.7.8",
|
|
"@heroicons/react": "^2.0.12",
|
|
"@highlight-run/node": "^3.1.0",
|
|
"@highlight-run/react": "^3.2.0",
|
|
"@lezer/highlight": "^1.1.6",
|
|
"@radix-ui/react-alert-dialog": "^1.0.4",
|
|
"@radix-ui/react-dialog": "^1.0.3",
|
|
"@radix-ui/react-label": "^2.0.1",
|
|
"@radix-ui/react-popover": "^1.0.5",
|
|
"@radix-ui/react-radio-group": "^1.1.3",
|
|
"@radix-ui/react-select": "^1.2.1",
|
|
"@radix-ui/react-switch": "^1.0.3",
|
|
"@radix-ui/react-tabs": "^1.0.3",
|
|
"@radix-ui/react-tooltip": "^1.0.5",
|
|
"@remix-run/express": "2.1.0",
|
|
"@remix-run/node": "2.1.0",
|
|
"@remix-run/react": "2.1.0",
|
|
"@remix-run/serve": "2.1.0",
|
|
"@remix-run/server-runtime": "2.1.0",
|
|
"@remix-run/v1-meta": "^0.1.3",
|
|
"@tabler/icons-react": "^2.39.0",
|
|
"@team-plain/typescript-sdk": "^2.2.0",
|
|
"@trigger.dev/companyicons": "^1.5.14",
|
|
"@trigger.dev/core": "workspace:*",
|
|
"@trigger.dev/core-backend": "workspace:*",
|
|
"@trigger.dev/database": "workspace:*",
|
|
"@trigger.dev/sdk": "workspace:*",
|
|
"@types/pg": "8.6.6",
|
|
"@uiw/react-codemirror": "^4.19.5",
|
|
"@whatwg-node/fetch": "^0.9.14",
|
|
"class-variance-authority": "^0.5.2",
|
|
"clsx": "^1.2.1",
|
|
"compression": "^1.7.4",
|
|
"cron-parser": "^4.7.1",
|
|
"cross-env": "^7.0.3",
|
|
"cuid": "^2.1.8",
|
|
"emails": "workspace:*",
|
|
"express": "^4.18.1",
|
|
"framer-motion": "^10.12.11",
|
|
"graphile-worker": "^0.13.0",
|
|
"highlight.run": "^7.3.4",
|
|
"humanize-duration": "^3.27.3",
|
|
"intl-parse-accept-language": "^1.0.0",
|
|
"isbot": "^3.6.5",
|
|
"jsonpointer": "^5.0.1",
|
|
"lodash.omit": "^4.5.0",
|
|
"lucide-react": "^0.229.0",
|
|
"marked": "^4.0.18",
|
|
"morgan": "^1.10.0",
|
|
"nanoid": "^3.3.4",
|
|
"postcss-import": "^14.1.0",
|
|
"posthog-js": "^1.83.0",
|
|
"posthog-node": "^3.1.1",
|
|
"prism-react-renderer": "^1.3.5",
|
|
"prismjs": "^1.29.0",
|
|
"random-words": "^2.0.0",
|
|
"react": "^18.2.0",
|
|
"react-dom": "^18.2.0",
|
|
"react-hotkeys-hook": "^4.4.1",
|
|
"react-use": "^17.4.0",
|
|
"recharts": "^2.8.0",
|
|
"remix-auth": "^3.6.0",
|
|
"remix-auth-email-link": "^2.1.0",
|
|
"remix-auth-github": "^1.6.0",
|
|
"remix-typedjson": "0.3.1",
|
|
"remix-utils": "^7.1.0",
|
|
"semver": "^7.5.0",
|
|
"simple-oauth2": "^5.0.0",
|
|
"simplur": "^3.0.1",
|
|
"slug": "^6.0.0",
|
|
"sonner": "^1.0.3",
|
|
"tailwind-merge": "^1.12.0",
|
|
"tailwind-scrollbar-hide": "^1.1.7",
|
|
"tailwindcss-animate": "^1.0.5",
|
|
"tiny-invariant": "^1.2.0",
|
|
"ulid": "^2.3.0",
|
|
"zod": "3.22.3",
|
|
"zod-error": "1.5.0",
|
|
"zod-validation-error": "^1.5.0"
|
|
},
|
|
"devDependencies": {
|
|
"@remix-run/dev": "2.1.0",
|
|
"@remix-run/eslint-config": "2.1.0",
|
|
"@remix-run/testing": "^2.1.0",
|
|
"@storybook/addon-backgrounds": "^7.0.7",
|
|
"@storybook/addon-docs": "^7.0.12",
|
|
"@storybook/addon-essentials": "^7.0.7",
|
|
"@storybook/addon-interactions": "^7.0.7",
|
|
"@storybook/addon-links": "^7.0.7",
|
|
"@storybook/addon-styling": "^1.0.5",
|
|
"@storybook/addon-viewport": "^7.0.7",
|
|
"@storybook/blocks": "^7.0.7",
|
|
"@storybook/react": "^7.0.7",
|
|
"@storybook/react-webpack5": "^7.0.7",
|
|
"@storybook/testing-library": "^0.0.14-next.2",
|
|
"@swc/core": "^1.3.4",
|
|
"@swc/helpers": "^0.4.11",
|
|
"@tailwindcss/forms": "^0.5.3",
|
|
"@tailwindcss/typography": "^0.5.9",
|
|
"@total-typescript/ts-reset": "^0.4.2",
|
|
"@trigger.dev/tailwind-config": "workspace:*",
|
|
"@types/bcryptjs": "^2.4.2",
|
|
"@types/compression": "^1.7.2",
|
|
"@types/eslint": "^8.4.6",
|
|
"@types/express": "^4.17.13",
|
|
"@types/humanize-duration": "^3.27.1",
|
|
"@types/json-query": "^2.2.3",
|
|
"@types/lodash.omit": "^4.5.7",
|
|
"@types/marked": "^4.0.3",
|
|
"@types/morgan": "^1.9.3",
|
|
"@types/node": "^18.11.15",
|
|
"@types/node-fetch": "^2.6.2",
|
|
"@types/prismjs": "^1.26.0",
|
|
"@types/qs": "^6.9.7",
|
|
"@types/react": "18.2.17",
|
|
"@types/react-dom": "18.2.7",
|
|
"@types/semver": "^7.3.13",
|
|
"@types/simple-oauth2": "^5.0.4",
|
|
"@types/slug": "^5.0.3",
|
|
"@types/tar": "^6.1.4",
|
|
"@typescript-eslint/eslint-plugin": "^5.59.6",
|
|
"@typescript-eslint/parser": "^5.59.6",
|
|
"autoprefixer": "^10.4.13",
|
|
"esbuild": "^0.15.10",
|
|
"eslint": "^8.24.0",
|
|
"eslint-config-prettier": "^8.5.0",
|
|
"npm-run-all": "^4.1.5",
|
|
"postcss": "^8.4.21",
|
|
"prettier": "^2.8.8",
|
|
"prettier-plugin-tailwindcss": "^0.3.0",
|
|
"prop-types": "^15.8.1",
|
|
"rimraf": "^3.0.2",
|
|
"storybook": "^7.0.7",
|
|
"storybook-addon-designs": "7.0.0-beta.2",
|
|
"storybook-addon-variants": "^0.2.0",
|
|
"tailwind-scrollbar": "^3.0.1",
|
|
"tailwindcss": "3.3.2",
|
|
"ts-node": "^10.7.0",
|
|
"tsconfig-paths": "^3.14.1",
|
|
"typescript": "^5.1.6"
|
|
},
|
|
"engines": {
|
|
"node": ">=16.0.0"
|
|
}
|
|
} |