{"version":3,"sources":["jsdelivr-header.js","/npm/gsuite-license-manager@0.0.3/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACLA,IAAI,OAAS,QAAQ,cACjB,MAAQ,QAAQ,SAEpB,SAAS,qBAAqB,GAC1B,aACA,IAAI,EACA,EAAU,OAAO,UAAU,MA+F/B,OADA,EAAO,EAAU,KACV,CACH,OA9FJ,SAAgB,GACZ,OAAO,IAAI,SAAQ,SAAU,EAAS,GAClC,IAAI,EAAY,EAAM,UAClB,EAAQ,EAAM,MACd,EAAS,EAAM,OACf,EAAU,CACV,KAAM,EACN,UAAW,EACX,MAAO,EACP,SAAU,CACN,OAAU,IAId,EAAM,SACN,EAAQ,OAAS,EAAM,QAG3B,IAAI,EAAY,MAAM,UAAU,CAC5B,QAAS,EACT,OAAQ,EACR,WAAY,IACZ,WAAY,IACZ,WAAW,IAGf,EAAU,SAAQ,WACd,EAAQ,mBAAmB,OAAO,GAAS,SAAU,EAAK,GACtD,GAAiB,MAAb,EAAI,KAGJ,OAFA,QAAQ,IAAI,2DAA4D,EAAI,KAAM,EAAI,QAAS,QAC/F,IAGA,EAAU,MAAM,GAChB,QAAQ,IAAI,sCAAuC,EAAI,KAAM,EAAU,YAGvE,EACA,EAAO,EAAU,aAGrB,EAAQ,EACZ,GACJ,GACJ,GACJ,EAkDI,OAhDJ,SAAgB,GACZ,OAAO,IAAI,SAAQ,SAAU,EAAS,GAClC,IAAI,EAAY,EAAM,UAClB,EAAQ,EAAM,MACd,EAAS,EAAM,OACf,EAAU,CACV,KAAM,EACN,UAAW,EACX,MAAO,EACP,OAAQ,GAGR,EAAM,SACN,EAAQ,OAAS,EAAM,QAG3B,IAAI,EAAY,MAAM,UAAU,CAC5B,QAAS,EACT,OAAQ,EACR,WAAY,IACZ,WAAY,IACZ,WAAW,IAGf,EAAU,SAAQ,WACd,EAAQ,mBAAmB,OAAO,GAAS,SAAU,EAAK,GACtD,GAAiB,MAAb,EAAI,KAGJ,OAFA,QAAQ,IAAI,6DAA8D,EAAI,KAAM,EAAI,QAAS,QACjG,IAGA,EAAU,MAAM,GAChB,QAAQ,IAAI,sCAAuC,EAAI,KAAM,EAAU,YAGvE,EACA,EAAO,EAAU,aAGrB,EAAQ,EACZ,GACJ,GACJ,GACJ,EAOJ,CAEA,OAAO,QAAU","file":"/npm/gsuite-license-manager@0.0.3/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/gsuite-license-manager@0.0.3/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/*global require, console, Promise*/\r\nvar google = require('googleapis');\r\nvar retry = require('retry');\r\n\r\nfunction gsuiteLicenseManager(mainSpecs) {\r\n    \"use strict\";\r\n    var auth;\r\n    var service = google.licensing('v1');\r\n\r\n    function insert(specs) {\r\n        return new Promise(function (resolve, reject) {\r\n            var productId = specs.productId;\r\n            var skuId = specs.skuId;\r\n            var userId = specs.userId;\r\n            var request = {\r\n                auth: auth,\r\n                productId: productId,\r\n                skuId: skuId,\r\n                resource: {\r\n                    \"userId\": userId\r\n                }\r\n            };\r\n\r\n            if (specs.fields) {\r\n                request.fields = specs.fields;\r\n            }\r\n\r\n            var operation = retry.operation({\r\n                retries: 5,\r\n                factor: 3,\r\n                minTimeout: 1 * 1000,\r\n                maxTimeout: 60 * 1000,\r\n                randomize: true\r\n            });\r\n\r\n            operation.attempt(function () {\r\n                service.licenseAssignments.insert(request, function (err, response) {\r\n                    if (err.code === 412) {\r\n                        console.log(\"Warning adding licence, error %s occured: %s, account %s\", err.code, err.message, userId);\r\n                        resolve();\r\n                        return;\r\n                    }\r\n                    if (operation.retry(err)) {\r\n                        console.log(\"Warning, error %s occured, retry %d\", err.code, operation.attempts());\r\n                        return;\r\n                    }\r\n                    if (err) {\r\n                        reject(operation.mainError());\r\n                        return;\r\n                    }\r\n                    resolve(response);\r\n                });\r\n            });\r\n        });\r\n    }\r\n\r\n    function remove(specs) {\r\n        return new Promise(function (resolve, reject) {\r\n            var productId = specs.productId;\r\n            var skuId = specs.skuId;\r\n            var userId = specs.userId;\r\n            var request = {\r\n                auth: auth,\r\n                productId: productId,\r\n                skuId: skuId,\r\n                userId: userId\r\n            };\r\n\r\n            if (specs.fields) {\r\n                request.fields = specs.fields;\r\n            }\r\n\r\n            var operation = retry.operation({\r\n                retries: 5,\r\n                factor: 3,\r\n                minTimeout: 1 * 1000,\r\n                maxTimeout: 60 * 1000,\r\n                randomize: true\r\n            });\r\n\r\n            operation.attempt(function () {\r\n                service.licenseAssignments.delete(request, function (err, response) {\r\n                    if (err.code === 404) {\r\n                        console.log(\"Warning removing licence, error %s occured: %s, account %s\", err.code, err.message, userId);\r\n                        resolve();\r\n                        return;\r\n                    }\r\n                    if (operation.retry(err)) {\r\n                        console.log(\"Warning, error %s occured, retry %d\", err.code, operation.attempts());\r\n                        return;\r\n                    }\r\n                    if (err) {\r\n                        reject(operation.mainError());\r\n                        return;\r\n                    }\r\n                    resolve(response);\r\n                });\r\n            });\r\n        });\r\n    }\r\n\r\n    auth = mainSpecs.auth;\r\n    return {\r\n        insert: insert,\r\n        remove: remove\r\n    };\r\n}\r\n\r\nmodule.exports = gsuiteLicenseManager;"]}