Commit Graph
53 Commits
Author SHA1 Message Date
Sebastian Malton 0d0c67f13f Update docs to be correct with the new api changes (#2916)
* Update docs to be correct with the new api changes

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix renderer-extension.md

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-04 12:44:25 +03:00
Sebastian Malton 2e0ff6c928 Extension Api docs should point to generated index files (#2898)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-05-28 10:22:38 -04:00
steve richards 88edeeef43 Remove non-extension API docs (#2877)
All documents that related to Lens IDE in general will move to the private lens-ide repository. All extension API documents will remain in the lens repository and be served on a new url.

Signed-off-by: Steve Richards <srichards@mirantis.com>
2021-05-27 14:09:15 +01:00
Sebastian Malton 81a35737fd Fix spelling and grammar in Ipc docs (#2880)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-05-27 08:12:53 -04:00
Sebastian Malton 57c87a2e71 Change where extension IPC is exported (#2845)
- Fix documentation and guide
2021-05-26 17:10:39 -04:00
RomanandJari Kolehmainen 2c3b510997 Mobx-6 migration (#2718)
* mobx-6 migration -- part 1

Signed-off-by: Roman <ixrock@gmail.com>

* mobx-6 migration -- part 2 (npx mobx-undecorate --keepDecorators)

Signed-off-by: Roman <ixrock@gmail.com>

* mobx-6 migration -- part 3 (more fixes)

Signed-off-by: Roman <ixrock@gmail.com>

* unwrap possible observables from IPC-messaging

Signed-off-by: Roman <ixrock@gmail.com>

* mobx-6 migration -- remove @autobind as class-decorator

Signed-off-by: Roman <ixrock@gmail.com>

* mobx-6: replacing @autobind() as method-decorator to @boundMethod

Signed-off-by: Roman <ixrock@gmail.com>

* mobx-6: use toJS()-wrapper since monkey-patching require(mobx).toJS doesn't work

Signed-off-by: Roman <ixrock@gmail.com>

* removed `@observable static`

Signed-off-by: Roman <ixrock@gmail.com>

* use {useDefineForClassFields: true} in tsconfig.json

Signed-off-by: Roman <ixrock@gmail.com>

* remove ExtendedObservableMap

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix: removed makeObservable(this) from "terminal-tab.tsx"

Signed-off-by: Roman <ixrock@gmail.com>

* storage-helper refactoring

Signed-off-by: Roman <ixrock@gmail.com>

* normalize usages of #observable-value.toJSON() / attempt to catch the wind

Signed-off-by: Roman <ixrock@gmail.com>

* refactoring, more possible branch fixes + lint

Signed-off-by: Roman <ixrock@gmail.com>

* debugging cluster-view error -- part 1

Signed-off-by: Roman <ixrock@gmail.com>

* fix: refreshing cluster-view on ready

Signed-off-by: Roman <ixrock@gmail.com>

* fix: various app-crashes related to KubeObject.spec.* access from "undefined"
fix: config-map-details crash

Signed-off-by: Roman <ixrock@gmail.com>

* fix: namespace-store refactoring / saving selected-namespaces to external json-file

Signed-off-by: Roman <ixrock@gmail.com>

* fix: don't cache mobx.when(() => this.someObservable) cause might not work as expected due later call of makeObservable(this) in constructor

Signed-off-by: Roman <ixrock@gmail.com>

* fix: app-crash on editing k8s resource

Signed-off-by: Roman <ixrock@gmail.com>

* fix: restore "all namespaces" on page reload

Signed-off-by: Roman <ixrock@gmail.com>

* - fix: persist table-sort params and cluster-view's sidebar state to lens-local-storage
- new-feature: auto-open main-window's devtools in development-mode (yes/no/ugly?)

Signed-off-by: Roman <ixrock@gmail.com>

* fix: crd definition details -> crashing with <AceEditor mode="json"> (added missing mode-file in ace-editor.tsx)

Signed-off-by: Roman <ixrock@gmail.com>

* fix: crd definitions -> groups selector couldn't deselect last selected option

Signed-off-by: Roman <ixrock@gmail.com>

* refactoring: extensions-api exports clarification for "@k8slens/extensions"

Signed-off-by: Roman <ixrock@gmail.com>

* fix: various app-crashes related to kube-events (events page, some details page, overview, etc.)

Signed-off-by: Roman <ixrock@gmail.com>

* Reverted "use {useDefineForClassFields: true} in tsconfig.json" (various app-crash fixes)
This flag seems to be not possible to use with class-inheritance in some cases.

Example / demo:
`KubeObject` class has initial type definitions for the fields like: "metadata", "kind", etc.
and constructor() has Object.assign(this, data);
Meanwhile child class, e.g. KubeEvent inherited from KubeObject and has it's own extra type definitions for underlying resource, e.g. "involvedObject", "source", etc.

So calling super(data) doesn't work as expected for child class as it's own type definitions overwrites data from parent's constructor with `undefined` at later point.

Signed-off-by: Roman <ixrock@gmail.com>

* master-merge lint-fixes

Signed-off-by: Roman <ixrock@gmail.com>

* catalog.tsx / catalog-entities.store.ts refactoring & fixes

Signed-off-by: Roman <ixrock@gmail.com>

* fix: Catalog -> Browse all tab

Signed-off-by: Roman <ixrock@gmail.com>

* fix: CommandPalette doesn't appear from global menu by click/hotkey

Signed-off-by: Roman <ixrock@gmail.com>

* - Merging interfaces & classses to avoid overwriting fields from parent's super(data)-call with Object.assign(this, data). Otherwise use "declare" keyword at class field definition.

- Revamping {useDefineForClassFields: true} to avoid issues with non-observable class fields in some cases (from previous commit):

```
@observer
export class CommandContainer extends React.Component<CommandContainerProps> {
  // without some defined initial value "commandComponent" is non-observable for some reasons
  // when tsconfig.ts has {useDefineForClassFields:false}
  @observable.ref commandComponent: React.ReactNode = null;

  constructor(props: CommandContainerProps) {
    super(props);
    makeObservable(this);
  }
```

Signed-off-by: Roman <ixrock@gmail.com>

* update KubeObject class type definition

Signed-off-by: Roman <ixrock@gmail.com>

* clean up / responding to comments

Signed-off-by: Roman <ixrock@gmail.com>

* fix: app-crash when navigating to catalog from active cluster-view, refactoring `catalog-entity-store`

Signed-off-by: Roman <ixrock@gmail.com>

* catalog-pusher clean up, replaced .observe_() to external observe() helper from "mobx"

Signed-off-by: Roman <ixrock@gmail.com>

* fix: catalog's items stale/non-observable (after connection to the cluster status still "disconnected"), lint-fixes

Signed-off-by: Roman <ixrock@gmail.com>

* fix: Catalog is empty after closing main-window and re-opening app from Tray

Signed-off-by: Roman <ixrock@gmail.com>

* fix: HotBar's icon context menu items non-observable (no "disconnect cluster", etc.)

Signed-off-by: Roman <ixrock@gmail.com>

* lint-fix/license check

Signed-off-by: Roman <ixrock@gmail.com>

* fix: redirect to catalog when disconnecting active cluster

Signed-off-by: Roman <ixrock@gmail.com>

* fix: refresh visibility of active cluster-view on switching from hotbar/catalog

Signed-off-by: Roman <ixrock@gmail.com>

* updated package.json for built-in extensions to use "*" version for packages served from main app

Signed-off-by: Roman <ixrock@gmail.com>

* - added missing makeObservable(this) to metrics-settings.tsx
- updated package-lock.json for built-in extensions
- lint fixes

Signed-off-by: Roman <ixrock@gmail.com>

* master-merge clean up fix, updated package-lock.json for built-in extensions after `make clean-extensions && make build-extensions`

Signed-off-by: Roman <ixrock@gmail.com>

* fix unit-tests

Signed-off-by: Roman <ixrock@gmail.com>

* master-merge fixes

Signed-off-by: Roman <ixrock@gmail.com>

* make lint happy

Signed-off-by: Roman <ixrock@gmail.com>

* reverted some changes, removed auto-opening devtools in dev-mode

Signed-off-by: Roman <ixrock@gmail.com>

* merge fixes

Signed-off-by: Roman <ixrock@gmail.com>

* master-merge conflict fixes:
- proper handling and navigating into catalog's active category via URL-builder

Signed-off-by: Roman <ixrock@gmail.com>

* reverting splitted params for catalog's page route to "/catalog/:group?/:kind?"

Signed-off-by: Roman <ixrock@gmail.com>

* clean-up: remove app's injecting dependencies from `extensions/kube-object-event-status/package.json`

Signed-off-by: Roman <ixrock@gmail.com>

* master-merge fix: added missing makeObservable(this) for extensions.tsx

Signed-off-by: Roman <ixrock@gmail.com>

* fix: catalog entity context menu stale/unobservable

Signed-off-by: Roman <ixrock@gmail.com>

Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-05-25 10:24:31 +03:00
Mario Sarcher 08db118832 Removes links to ClusterFeature API docs as these no longer exist >=Lens.5.0.0-beta.5 (#2809)
Signed-off-by: Mario Sarcher <mario@sarcher.de>
2021-05-19 09:23:34 +03:00
Sebastian Malton 6be465858b Add IPC capabilities for Extensions (#2775)
* Add IPC capabilities for Extensions

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* revert onA|D change:

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Switch to pushing the disposer in the methods

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* improve documentation, switch to a singleton instead of extension methods

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* fix build

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* make exported class abstract, improve guide

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* fix docs

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* fix lint

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Change guide demo to initialization in constructor

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-05-18 12:24:43 +03:00
Alex Andreev 1e16e0bdae Removing color reference from docs (#2757)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-05-12 09:23:46 -04:00
Sebastian Malton 9563ead2e6 Fixing Singleton typing to correctly return child class (#1914)
- Add distinction between `getInstance` and `getInstanceOrCreate` since
  it is not always possible to create an instance (since you might not
  know the correct arguments)

- Remove all the `export const *Store = *Store.getInstance<*Store>();`
  calls as it defeats the purpose of `Singleton`. Plus with the typing
  changes the appropriate `*Store.getInstance()` is "short enough".

- Special case the two extension export facades to not need to use
  `getInstanceOrCreate`. Plus since they are just facades it is always
  possible to create them.

- Move some other types to be also `Singleton`'s: ExtensionLoader,
  ExtensionDiscovery, ThemeStore, LocalizationStore, ...

- Fixed dev-run always using the same port with electron inspect

- Update Store documentation with new recommendations about creating
  instances of singletons

- Fix all unit tests to create their dependent singletons

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-04-21 09:59:59 -04:00
Sebastian MaltonandJim Ehrismann 49a01b7922 Fix Extension Docs (#2377)
Co-authored-by: Jim Ehrismann <40840436+jim-docker@users.noreply.github.com>
2021-04-19 11:46:07 -04:00
Sebastian Malton 0561f6bfd0 Add common app routes to the protocol renderer router (#2272) 2021-03-17 13:57:49 -04:00
Sebastian Malton 1470103fd4 Add lens:// protocol handling with a routing mechanism (#1949)
- Add lens:// protocol handling with a routing mechanism

- document the methods in an extension guide

- remove handlers when an extension is deactivated or removed

- make sure that the found extension when routing a request is currently enabled (as a backup)

- added documentation about the above behaviour to the guide

- tweaked the naming convention so that it is clearer that the router uses extension names as not IDs (which currently are folder paths)

- Convert the extension API to use an array for registering handlers

- switch design to execute both main and renderer handlers simultaneously, without any overlap checking

- change open to be a dev dep

- improve docs, export types for extensions, skip integration tests

- switch to event emitting renderer being ready

- Add logging and fix renderer:loaded send to main

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-02-25 09:32:40 -05:00
Sebastian Malton a61425124f Add auto-update notifications and confirmation (#1941)
* add auto-update notifications and confirmation

* Show single update notification (#1985)

* Moving notification icons to top (#1987)

* Switch to EventEmitter (producer&consumer) model

* Add `onCorrect` and `onceCorrect` to ipc module for typechecking ipc  messages

* move type enforced ipc methods to seperate file, add unit tests

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-02-09 10:47:24 -05:00
Sebastian Malton 0727456aa1 Convert StatusBarRegistration to use components field (#1598)
* Convert StatusBarRegistration to use components field

- More similar to all other *Registration types for extensions

- Simpler fix for using the components.Icon type, now accepts functions
  that return component instance like all other *Registration types

- Kept old fix for backwards compatability

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* fix docs

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-02-04 19:18:31 +02:00
pauljwilandPaul Williams 5dba28ab5e Rework extensions guides (#1803)
* Edited Stores extensions guide.

Signed-off-by: Paul Williams <pawilliams@mirantis.com>

Co-authored-by: Paul Williams <pawilliams@mirantis.com>
2021-01-15 12:42:38 -05:00
3e6d8fc732 Rework extensions guides (#1802)
* Rework extensions guides

* Edited MobX guide.
* Changed MobX in mkdocs.yml nav.

Signed-off-by: Paul Williams <pawilliams@mirantis.com>

* split line by sentances

Signed-off-by: Sebastian Malton <sebastian@malton.name>

Co-authored-by: Paul Williams <pawilliams@mirantis.com>
Co-authored-by: Sebastian Malton <sebastian@malton.name>
2021-01-15 12:41:03 -05:00
pauljwilandJari Kolehmainen 3062fbe44a Fix Electron 9.4 frame ipc bug (#1888) (#1789)
* use pid+frameId

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* use correct process id

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Signed-off-by: Paul Williams <pawilliams@mirantis.com>

Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-01-15 12:40:19 -05:00
c609ea1d96 Reworked Extension Guides (#1727)
Edited and reworked content in the Extension Guides Overview and the Generator and Main Extension guides.

Signed-off-by: Paul Williams <pawilliams@mirantis.com>

Update docs/extensions/guides/main-extension.md

Co-authored-by: Panu Horsmalahti <panu.horsmalahti@iki.fi>

Update docs/extensions/guides/generator.md

Co-authored-by: chh <1474479+chenhunghan@users.noreply.github.com>
Signed-off-by: Paul Williams <pawilliams@mirantis.com>

Co-authored-by: Paul Williams <pawilliams@mirantis.com>
Co-authored-by: chh <1474479+chenhunghan@users.noreply.github.com>
2020-12-15 11:55:04 +08:00
Jim Ehrismann 831fb80bfe extension store guide (#1663)
* extension store guide

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* improve docs as per reviews and rereading

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* more doc tweaks

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2020-12-07 15:25:17 -05:00
Sebastian MaltonandJari Kolehmainen 22a8442a89 Write up on some ways to publish extensions (#1660)
* write up on some ways to publish extensions

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* tweak text

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-07 14:43:36 +02:00
Lauri Nevala d3026d4dd0 Add initial KubeObjectListLayout sample (#1662)
* Add initial KubeObjectListLayout sample

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Fine tuning

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Fix typos

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-12-07 12:46:39 +02:00
Jim Ehrismann aa508f9b0a Status bar item and kube object menu/detail item extension guides (#1629)
* extension guides for statusBarItems, kubeObjectMenuItems, and kubeObjectDetailItems

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* address extension guide review comments

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* fix typos found in  review

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2020-12-04 08:38:55 -05:00
Sebastian Malton 111c518bf5 add basic usage docs for extensions (#1583)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-12-01 11:30:01 -05:00
Jim Ehrismann 63ead8e65a appPreferences guide (#1584)
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2020-12-01 08:57:03 -05:00
Jari Kolehmainen 2de1acde10 Tweak extensions page texts (#1550)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-01 11:20:59 +02:00
chh 997fb22d80 Add section for extension testing (#1576)
Signed-off-by: Hung-Han (Henry) Chen <1474479+chenhunghan@users.noreply.github.com>
2020-11-30 21:58:04 +08:00
Sebastian Malton 686cb122a3 add step to verify docs on area/documentation PRs (#1528)
* add step to verify docs on area/documentation PRs

* use GH actions to run the verification

* add check if label is set to area/documentation

* fix broken links in docs with WIP files

* add generating API docs before verifying

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-27 10:13:53 -05:00
Alex Andreev 168385385b Adding links to styling samples (#1534)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-27 11:51:19 +03:00
Jim Ehrismann 238756be72 cluster feature extension guide (#1527)
* added more sample extensions to overvew list, started clusterFeatures doc

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* cluster-feature extension guide

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* resolve merge conflict, plus address review comments, tweaks

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2020-11-26 08:55:27 -05:00
Sebastian Malton 1547142125 Add starting point for mobx related documentaion (#1422)
* add a brief overview to our use of mobx and mark all observable fields as observable in our docs

* add to navigation

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-25 14:05:58 -05:00
Sebastian Malton c93ee4ea6d [BREAKING]: remove deprecated routePath before GA (#1505)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-25 12:03:57 +02:00
chh b94e523ad5 Add documentation on how to use Lens Extension Generator (#1411)
* Add generator docs

Signed-off-by: Hung-Han (Henry) Chen <1474479+chenhunghan@users.noreply.github.com>

* 'Welcome' > 'You are welcome to ...'

Signed-off-by: Hung-Han (Henry) Chen <1474479+chenhunghan@users.noreply.github.com>

* Add missing backslash

Signed-off-by: Hung-Han (Henry) Chen <1474479+chenhunghan@users.noreply.github.com>

* Move Generator section to Extension Guides

Signed-off-by: Hung-Han (Henry) Chen <1474479+chenhunghan@users.noreply.github.com>
2020-11-24 16:38:43 +02:00
Jim Ehrismann cd4660b85b Doc/renderer extension guide (#1476)
* lens renderer extension guide

* renderer extension guide (pages and page menus)

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2020-11-23 17:06:19 -05:00
Jim Ehrismann b0b2a99372 Extension Guides documentation (#1427)
- overview
- main extension guide

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2020-11-18 09:01:42 +02:00
pauljwil 532b10e357 Reworked remaining docs (#1402)
Signed-off-by: Paul Williams <pawilliams@mirantis.com>
2020-11-17 08:48:24 +02:00
pauljwil 656797abc7 Resolved conflicts in Your First Extension, Styling, and Color Reference after rebasing from master (#1379)
Signed-off-by: Paul Williams <pawilliams@mirantis.com>
2020-11-16 11:14:33 +02:00
Jari KolehmainenandRoman df0f080380 Simplify pages/menus/registry extension api internal implementation (#1364)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Co-authored-by: Roman <ixrock@gmail.com>
2020-11-13 17:04:39 +02:00
Alex Andreev d7febf5e89 Docs: fixing typos in styling (#1363)
* Adding dashes -- before variable names

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Fixing typos

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-13 15:55:49 +03:00
Stefan Cameron dd925a87de Update styling docs (#1339)
Building on https://github.com/lensapp/lens/pull/1267 and iterating on the docs,
re-organizing them into Layout and Theme sections.

Also adding sample code on how to detect theme changes in JavaScript.

Signed-off-by: Stefan Cameron <stefancameron@SC-MBPt13-2018.austin.rr.com>
2020-11-13 10:09:47 +03:00
RomanandJari Kolehmainen faa1cef307 PageRegistration & BaseRegistry refactoring (#1334)
Signed-off-by: Roman <ixrock@gmail.com>
Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-12 16:29:02 +02:00
Lauri Nevalaandsteve richards 89f575701d Add extension development instructions for Windows users (#1350)
* Add extension development instructions for Windows users

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

Co-authored-by: steve richards <steve.james.richards@gmail.com>
2020-11-12 12:57:40 +02:00
Jari Kolehmainen 00be4aa184 Remove windowManager from extension api (#1323)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-11 21:55:49 +02:00
Jari Kolehmainen 469b723469 Generate extension api reference docs using library mode (#1307)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-11 09:02:26 +02:00
Mario Sarcher de85229512 Generate API Reference documentation using typedocs and gh-actions
Signed-off-by: Mario Sarcher <msarcher@mirantis.com>
2020-11-10 09:36:28 +01:00
Lauri Nevala b7fde0c6a6 Fix KubeObjectDetails example in common capabilities (#1299)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-10 09:46:50 +02:00
Alex Andreev 8d1c29ae4c Docs: extension styling and theming (#1267)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-09 19:05:27 +02:00
Sebastian Malton 6e77e7eabb add some overview documentation to the getting started page (#1269)
* add some overview documentation to the getting started page

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-09 10:48:09 -05:00
Jari Kolehmainen 1b71106ed5 Docs: extension common capabilities (#1259)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-06 16:50:11 +02:00
Lauri Nevala b5cef916a2 Docs: Extension Anatomy (#1265)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-06 16:34:48 +02:00