Ejemplo n.º 1
0
        public static async Task <AccessState> RequestPermission(this IJSInProcessRuntime interop, string permission, string windowType)
        {
            if (!interop.IsFeatureAvailable(windowType))
            {
                return(AccessState.NotSupported);
            }

            var result = await interop.Promise <string>("Shiny.requestPermission", permission);

            if (result == null)
            {
                return(AccessState.Unknown);
            }

            switch (result.ToLower())
            {
            case "granted":
                return(AccessState.Available);

            case "denied":
                return(AccessState.Denied);

            default:
                return(AccessState.Unknown);
            }
        }