Especificação de ações para manipuladores de arquivos 2.0

Ao registrar um identificador de arquivos, você pode especificar um conjunto de ações habilitado pelo manipulador de arquivos.

Há três ações internas que um manipulador de arquivos pode escolher para oferecer suporte:

  • newFile: o tipo de arquivo aparece no menu Novo no OneDrive e no SharePoint.
  • open: Os arquivos podem ser abertos pelo manipulador de arquivos, que aparece no menu Abrir no OneDrive e no SharePoint. As ações abertas são iniciadas em uma nova guia do navegador.
  • preview: os arquivos podem ser visualizados pelo manipulador de arquivos. A visualização ocorre quando o usuário clica com o botão esquerdo do mouse em um arquivo no OneDrive e no SharePoint. As ações de visualização são carregadas em um elemento <IFRAME> dentro dos sites do OneDrive e do SharePoint.

Os manipuladores de arquivos adicionais suportam um tipo de ação custom que permite que um manipulador de arquivo crie ações definidas do aplicativo. Essas ações adicionais aparecem na barra de ferramentas no OneDrive e no SharePoint e podem ser adicionadas a qualquer extensão de arquivo.

Definir ações no manifesto do manipulador de arquivos

As ações são definidas no manifesto do manipulador de arquivos dentro do par chave-valor actions, que contém uma matriz de ações com suporte pelo manipulador de arquivos.

Um exemplo da definição para as três ações internas e uma única ação personalizada:

[
    {
        "type": "newFile",
        "url": "https://url/for/endpoint",
        "availableOn": {
            "file": { "extensions": [".bin"] },
            "web": { }
        }
    },
    {
        "type": "open",
        "url": "https://url/for/endpoint",
        "availableOn": {
            "file": { "extensions": [".bin"] },
            "web": { }
        }
    },
    {
        "type": "preview",
        "url": "https://url/for/endpoint",
        "availableOn": {
            "file": { "extensions": [".bin"] },
            "web": { }
        }
    },
    {
        "type": "custom",
        "url": "https://url/for/endpoint",
        "displayName": "Add Signature with Contoso",
        "shortDisplayName": "Add Signature",
        "icon": {
            "png1x": "https://url/for/icon.png"
        },
        "availableOn": {
            "file": { "extensions": ["*"] },
            "folder": { },
            "allowMultiSelect": true,
            "web": { }
        }
    }
]

Devido às limitações nas extensões do suplemento do Azure Active Directory, essas ações são armazenadas de forma serializada em uma cadeia de caracteres. É recomendável que seu JSON reduza a matriz antes de convertê-lo em um valor de cadeia de caracteres para armazenar no manifesto.

Por exemplo, as ações definidas acima seriam armazenadas no manifesto do manipulador de arquivos da seguinte forma:

{
    "type": "FileHandler",
    "properties": [
        {
            "key": "version",
            "value": "2"
        },
        {
            "key": "actions",
            "value": "[{\"type\":\"newFile\",\"url\":\"https://url/for/endpoint\",\"availableOn\":{\"file\":{\"extensions\":[\".bin\"]},\"web\":{}}},{\"type\":\"open\",\"url\":\"https://url/for/endpoint\",\"availableOn\":{\"file\":{\"extensions\":[\".bin\"]},\"web\":{}}},{\"type\":\"preview\",\"url\":\"https://url/for/endpoint\",\"availableOn\":{\"file\":{\"extensions\":[\".bin\"]},\"web\":{}}},{\"type\":\"custom\",\"url\":\"https://url/for/endpoint\",\"displayName\":\"Add Signature with Contoso\",\"shortDisplayName\":\"Add Signature\",\"icon\":{\"png1x\":\"https://url/for/icon.png\"},\"availableOn\":{\"file\":{\"extensions\":[\"*\"]},\"folder\":{},\"allowMultiSelect\":true,\"web\":{}}}]"
        }
    ]
}

Parâmetros de ação

Cada ação declarada no parâmetro de ação toma a seguinte forma:

{
    "type": "newFile | open | preview | custom",
    "url": "url",
    "displayName": "string",
    "shortDisplayName": "string",
    "icon": { 
        "@odata.type": "microsoft.graph.displayIcon",
        "svg": "url",
        "png1x": "url",
        "png1_5x": "url",
        "png2x": "url"
    },
    "availableOn": {
        "@odata.type": "microsoft.graph.availableOn",
        "file": {
            "@odata.type": "microsoft.graph.availableOnFile",
            "extensions": [ ".pdf", ".png", ".psd" ]
        },
        "folder": {
            "@odata.type": "microsoft.graph.availableOnFolder"
        },
        "allowMultiSelect": false,
        "web": { "@odata.type": "microsoft.graph.availableOnWeb" }
    }
}

Propriedades

Nem todas as propriedades são necessárias, dependendo do tipo de ação especificado.

Nome do parâmetro Tipo Descrição
type string Um valor de newFile, open ou preview. Obrigatório.
url URL Uma URL https:// do ponto de extremidade manipula a ação do manipulador de arquivos. Obrigatório.
displayName string Uma cadeia de localidade padrão usada para que type: "custom" represente a ação. Opcional.
shortDisplayName string Uma cadeia de localidade padrão usada para type: "custom" a fim de representar a ação na barra de ferramentas ou no menu de ação recolhido. Opcional.
availableOn object Um conjunto de propriedades que define onde esta ação está disponível. Obrigatório.
ícone displayIcon Um objeto que contém URLs para imagens de ícones deste tipo de arquivo. Opcional.
  • A propriedade displayName só é aplicável às ações do tipo custom e será ignorada para ações de qualquer outro tipo.

Propriedades AvailableOn

Ao definir propriedades dentro da propriedade availableOn , você pode personalizar onde a ação está disponível:

Nome do parâmetro Tipo Descrição
file.extensions matriz de cadeia de caracteres Uma matriz de extensões de arquivo na qual a ação está disponível. As extensões de arquivo devem começar com um ponto (.). Um caractere curinga * pode ser usado para indicar todas as extensões de arquivo das ações personalizadas.
folder object Um objeto sem parâmetros indica que o manipulador de arquivos está disponível quando uma pasta é selecionada ou quando nenhum arquivo está selecionado. Um valor nulo ou a propriedade não definida indica que a ação não está disponível para as pastas.
allowMultiSelect booliano Se true, vários arquivos podem ser selecionados e a ação ainda será exibida. Se false ou ausente, a ação é exibida somente quando um único item está selecionado.
web object Um objeto sem parâmetros indica que o manipulador de arquivos fica disponível ao navegar pelo site.
  • Somente uma extensão de arquivo pode ser especificada para ações do tipo newFile. Esta é a extensão que o arquivo recém-criado terá. Se várias extensões de arquivo forem listadas, somente a primeira extensão de arquivo será usada.
  • As propriedades folder e allowMultiSelect somente são aplicáveis a ações do tipo custom. Esses valores serão ignorados para ações de qualquer outro tipo.