From 2a55b3917c880f9eebb0c9017d89525b87bd3c06 Mon Sep 17 00:00:00 2001 From: Rafael Araujo Lehmkuhl Date: Sun, 10 Nov 2024 19:16:13 -0300 Subject: [PATCH] widgets: Add new "DoItYourself" widget This is a widget that runs bare Javascript code created by the user. It does nothing this the user writes the code. The idea with this widget is to allow people to add any type of functionality to Cockpit without actually knowing the Cockpit codebase previously. We expect a lot of cool stuff to come from this! --- src/assets/widgets/DoItYourself.png | Bin 0 -> 14136 bytes src/components/EditMenu.vue | 2 + src/components/widgets/DoItYourself.vue | 340 ++++++++++++++++++++++++ src/types/widgets.ts | 1 + 4 files changed, 343 insertions(+) create mode 100644 src/assets/widgets/DoItYourself.png create mode 100644 src/components/widgets/DoItYourself.vue diff --git a/src/assets/widgets/DoItYourself.png b/src/assets/widgets/DoItYourself.png new file mode 100644 index 0000000000000000000000000000000000000000..776166b9c658aa345be2e1d4b4ae83b4701da685 GIT binary patch literal 14136 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 + + + + + diff --git a/src/types/widgets.ts b/src/types/widgets.ts index ff29d6536..1fb31168a 100644 --- a/src/types/widgets.ts +++ b/src/types/widgets.ts @@ -53,6 +53,7 @@ export enum WidgetType { CompassHUD = 'CompassHUD', CustomWidgetBase = 'CustomWidgetBase', DepthHUD = 'DepthHUD', + DoItYourself = 'DoItYourself', IFrame = 'IFrame', ImageView = 'ImageView', Map = 'Map',