kibana/x-pack/plugins/saved_objects_tagging
2021-06-17 14:46:30 -04:00
..
common Fix "to to" spelling error (#93885) 2021-03-10 17:46:31 +02:00
public Converts saved object tagging to new management layout (#102284) 2021-06-17 14:46:30 -04:00
server ES client : use the new type definitions (#83808) 2021-03-25 04:47:16 -04:00
jest.config.js
kibana.json
README.md
tsconfig.json Revert "TS Incremental build exclude test files (#95610)" (#96223) 2021-04-05 11:59:26 -07:00

SavedObjectsTagging

Add tagging capability to saved objects

Integrating tagging on a new object type

In addition to use the UI api to plug the tagging feature in your application, there is a couple things that needs to be done on the server:

Add read-access to the tag SO type to your feature's capabilities

In order to be able to fetch the tags assigned to an object, the user must have read permission for the tag saved object type. Which is why all features relying on SO tagging must update their capabilities.

features.registerKibanaFeature({
  id: 'myFeature',
  // ...
  privileges: {
    all: {
      // ...
      savedObject: {
        all: ['some-type'],
        read: ['tag'], // <-- HERE
      },
    },
    read: {
      // ...
      savedObject: {
        all: [],
        read: ['some-type', 'tag'], // <-- AND HERE
      },
    },
  },
});

Update the SOT telemetry collector schema to add the new type

The schema is located here: x-pack/plugins/saved_objects_tagging/server/usage/schema.ts. You just need to add the name of the SO type you are adding.

export const tagUsageCollectorSchema: MakeSchemaFrom<TaggingUsageData> = {
  // ...
  types: {
    dashboard: perTypeSchema,
    visualization: perTypeSchema,
    // <-- add your type here
  },
};

Update the taggableTypes constant to add your type

Edit the taggableTypes list in x-pack/plugins/saved_objects_tagging/common/constants.ts to add the name of the type you are adding.