{
  "name": "civicrm/civicrm-core",
  "description": "Open source constituent relationship management for non-profits, NGOs and advocacy organizations.",
  "type": "library",
  "license": "AGPL-3.0-or-later",
  "authors": [
    {
      "name": "Coleman Watts",
      "role": "Product Manager"
    },
    {
      "name": "Joshua Gowans",
      "role": "Project Manager"
    },
    {
      "name": "Mathieu Lutfy",
      "role": "Infrastructure"
    },
    {
      "name": "Tim Otten",
      "role": "Software Architect"
    },
    {
      "name": "CiviCRM Community",
      "homepage": "https://civicrm.org"
    }
  ],
  "autoload": {
    "psr-0": {
      "PHPUnit_": ["packages/"],
      "Civi": "",
      "Civi\\": ["tests/phpunit/"]
    },
    "psr-4": {
      "Civi\\": [".", "Civi/", "setup/src/"]
    },
    "files": ["functions.php", "guzzle_php81_shim.php"]
  },
  "config": {
    "platform": {
      "php": "8.1.2"
    },
    "allow-plugins": {
      "civicrm/composer-compile-plugin": true,
      "civicrm/composer-downloads-plugin": true,
      "cweagans/composer-patches": true
    }
  },
  "require": {
    "php": "^8.1.2",
    "ext-bcmath": "*",
    "ext-curl": "*",
    "ext-fileinfo": "*",
    "ext-intl": "*",
    "ext-json": "*",
    "ext-mbstring": "*",
    "ext-mysqli": "*",
    "ext-zip": "*",
    "ext-xml": "*",
    "composer-runtime-api": "~2.0",
    "dompdf/dompdf": "~2.0.4|| ~3.0",
    "firebase/php-jwt": ">=6.0 <8",
    "rubobaquero/phpquery": "^0.9.15",
    "symfony/config": "~4.4 || ~5.4 || ~6.0 || ~7.0",
    "symfony/polyfill-iconv": "~1.0",
    "symfony/dependency-injection": "~4.4 || ~5.4 || ~6.0 || ~7.0",
    "symfony/event-dispatcher": "~4.4 || ~5.4 ||  ~6.0 || ~7.0",
    "symfony/filesystem": "~4.4 ||  ~5.4 || ~6.0 || ~7.0",
    "symfony/process": "~4.4 ||  ~5.4 || ~5.0 || ~6.0 || ~7.0",
    "symfony/var-dumper": "~4.4 || ~5.1 || ~6.0 || ~7.0",
    "symfony/service-contracts": "~2.2 || ~3.1",
    "psr/http-client": "^1.0",
    "psr/log": "~1.0 || ~2.0 || ~3.0",
    "symfony/finder": "~4.4 || ~5.4 || ~6.0 || ~7.0",
    "tecnickcom/tcpdf": "6.*",
    "totten/ca-config": "~23.07",
    "zetacomponents/base": "1.9.*",
    "zetacomponents/mail": "~1.9.4",
    "marcj/topsort": "~1.1",
    "phpoffice/phpword": "^1.4",
    "phpseclib/phpseclib": "^3.0",
    "pear/validate_finance_creditcard": "0.7.0",
    "pear/auth_sasl": "1.2.0",
    "pear/net_smtp": "1.12.*",
    "pear/net_socket": "1.2.1",
    "pear/mail": "^2.0",
    "guzzlehttp/guzzle": "^6.3 || ^7.3",
    "guzzlehttp/psr7": "^1.9 || ^2.0",
    "psr/simple-cache": "~1.0.1",
    "cweagans/composer-patches": "~1.0",
    "pear/log": "1.14.5",
    "adrienrn/php-mimetyper": "0.2.2",
    "civicrm/composer-downloads-plugin": "^3.0 || ^4.0",
    "laravel/serializable-closure": "^1.3",
    "league/csv": "^9.28",
    "league/oauth2-client": "^2.8",
    "league/oauth2-google": "^4.0",
    "tplaner/when": "~3.1",
    "xkerman/restricted-unserialize": "~1.1",
    "typo3/phar-stream-wrapper": "^3.0 || ^4.0",
    "brick/money": ">=0.9 <0.11",
    "pear/mail_mime": "~1.10",
    "pear/db": "~1.12.2",
    "civicrm/composer-compile-lib": "~0.6 || ~1.0",
    "ezyang/htmlpurifier": "^4.13",
    "phpoffice/phpspreadsheet": "^1.18 || ^2",
    "symfony/polyfill-php80": "^1.0",
    "symfony/polyfill-php81": "^1.0",
    "symfony/polyfill-php82": "^1.0",
    "symfony/polyfill-php83": "^1.0",
    "symfony/polyfill-php84": "^1.0",
    "soundasleep/html2text": "^2.1",
    "psr/container": "~1.0 || ~2.0",
    "behat/mink": "^1.10",
    "dmore/chrome-mink-driver": "^2.9",
    "pontedilana/php-weasyprint": "^0.13.0 || ^1",
    "knplabs/knp-snappy": "^1.4",
    "phpseclib/phpseclib2_compat": "^1.0"
  },
  "scripts": {
    "post-install-cmd": [
      "bash tools/scripts/composer/dompdf-cleanup.sh",
      "bash tools/scripts/composer/tcpdf-cleanup.sh",
      "bash tools/scripts/composer/pear-exception-fix.sh",
      "bash tools/scripts/composer/net-smtp-fix.sh",
      "bash tools/scripts/composer/pear-mail-fix.sh",
      "bash tools/scripts/composer/phpword-jquery.sh",
      "bash tools/scripts/composer/guzzle-mockhandler-fix.sh"
    ],
    "post-update-cmd": [
      "bash tools/scripts/composer/dompdf-cleanup.sh",
      "bash tools/scripts/composer/tcpdf-cleanup.sh",
      "bash tools/scripts/composer/pear-exception-fix.sh",
      "bash tools/scripts/composer/net-smtp-fix.sh",
      "bash tools/scripts/composer/pear-mail-fix.sh",
      "bash tools/scripts/composer/phpword-jquery.sh",
      "bash tools/scripts/composer/guzzle-mockhandler-fix.sh"
    ]
  },
  "extra": {
    "downloads": {
      "*": {
        "path": "bower_components/{$id}"
      },
      "angular": {
        "url": "https://github.com/angular/bower-angular/archive/v1.8.2.zip"
      },
      "angular-bootstrap": {
        "url": "https://github.com/angular-ui/bootstrap-bower/archive/2.5.0.zip"
      },
      "angular-file-upload": {
        "url": "https://github.com/nervgh/angular-file-upload/archive/2.6.1.zip",
        "ignore": ["examples", "src"]
      },
      "angular-jquery-dialog-service": {
        "url": "https://github.com/totten/angular-jquery-dialog-service/archive/v0.8.0-civicrm-1.0.zip"
      },
      "angular-mocks": {
        "url": "https://github.com/angular/bower-angular-mocks/archive/v1.8.0.zip"
      },
      "angular-route": {
        "url": "https://github.com/angular/bower-angular-route/archive/v1.8.0.zip"
      },
      "angular-sanitize": {
        "url": "https://github.com/angular/bower-angular-sanitize/archive/v1.8.0.zip"
      },
      "angular-ui-sortable": {
        "url": "https://github.com/angular-ui/ui-sortable/archive/v0.19.0.zip"
      },
      "angular-unsavedChanges": {
        "url": "https://github.com/facultymatt/angular-unsavedChanges/archive/v0.1.1.zip",
        "ignore": [".*", "node_modules", "bower_components", "test", "tests"]
      },
      "angular-xeditable": {
        "url": "https://github.com/vitalets/angular-xeditable/archive/0.9.0.zip",
        "ignore": [".*", "node_modules", "bower_components", "playground", "test", "libs", "docs", "zip", "src", "starter", "Gruntfile.js", "index.html", "jsdoc.conf.json", "package.json"]
      },
      "checklist-model": {
        "url": "https://github.com/vitalets/checklist-model/archive/1.0.0.zip",
        "ignore": [".*", "node_modules", "docs", "Gruntfile.js", "index.html", "package.json", "test"]
      },
      "ckeditor": {
        "url": "https://github.com/ckeditor/ckeditor-releases/archive/4.18.0.zip"
      },
      "crossfilter-1.4.x": {
        "url": "https://github.com/crossfilter/crossfilter/archive/1.4.7.zip",
        "ignore": [".*", "node_modules", "bower_components", "package.json", "index.js", "src", "component.json", "media", "test", "tests"]
      },
      "css-color-names": {
        "url": "https://github.com/bahamas10/css-color-names/archive/v1.0.1.zip"
      },
      "d3-3.5.x": {
        "url": "https://github.com/mbostock-bower/d3-bower/archive/v3.5.17.zip"
      },
      "datatables": {
        "url": "https://github.com/DataTables/DataTables/archive/1.10.19.zip",
        "ignore": ["/.*", "examples", "media/unit_testing", "composer.json", "dataTables.jquery.json", "package.json"]
      },
      "dc-2.1.x": {
        "url": "https://github.com/NickQiZhu/dc.js/archive/2.1.10.zip",
        "ignore": [".*", "style", "web", "*.json", "regression", "scripts", "spec", "src", "docs", "grunt", "Gruntfile.js", "Changelog.md", "welcome.md", "class-hierarchy.dot", "index.js", "CONTRIBUTING.md", "LICENSE_BANNER", "AUTHORS"]
      },
      "es-module-shims": {
        "url": "https://ga.jspm.io/npm:es-module-shims@1.7.2/dist/es-module-shims.js",
        "path": "bower_components/es-module-shims/dist/es-module-shims.js",
        "_comment": "See also https://github.com/guybedford/es-module-shims/. MIT license."
      },
      "ext-chart_kit-crossfilter": {
        "url": "https://github.com/crossfilter/crossfilter/archive/refs/tags/1.5.4.zip",
        "path": "ext/chart_kit/packages/crossfilter",
        "ignore": [".*", "node_modules", "bower_components", "src", "lib", "test", "component.json", "package.json", "index.js", "main.js", "Makefile"]
      },
      "ext-chart_kit-d3": {
        "url": "https://github.com/d3/d3/releases/download/v6.7.0/d3.zip",
        "path": "ext/chart_kit/packages/d3",
        "ignore": [".DS_Store", ".git", ".gitignore", ".npmignore", ".travis.yml", "Makefile", "bin", "component.json", "index.js", "lib", "node_modules", "package.json", "src", "test"]
      },
      "ext-chart_kit-dc": {
        "url": "https://registry.npmjs.org/dc/-/dc-4.2.7.tgz",
        "path": "ext/chart_kit/packages/dc",
        "ignore": [".*", "web", "*.json", "regression", "scripts", "spec", "src", "docs", "grunt", "Gruntfile.js", "Changelog.md", "welcome.md", "class-hierarchy.dot", "index.js", "CONTRIBUTING.md", "LICENSE_BANNER", "AUTHORS"]
      },
      "ext-greenwich-bootstrap3": {
        "url": "https://github.com/twbs/bootstrap-sass/archive/v{$version}.zip",
        "path": "ext/greenwich/extern/bootstrap3",
        "version": "3.4.1",
        "ignore": ["fonts", "test", "tasks", "lib"]
      },
      "font-awesome": {
        "url": "https://github.com/FortAwesome/Font-Awesome/releases/download/6.6.0/fontawesome-free-6.6.0-web.zip",
        "ignore": ["*/.*", "*.json", "src", "*.yml", "Gemfile", "Gemfile.lock", "*.md"]
      },
      "marked": {
        "url": "https://github.com/markedjs/marked/archive/v0.8.0.zip",
        "ignore": [".*", "*.json", "*.md", "Makefile", "*/*"]
      },
      "monaco-editor": {
        "url": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.49.0.tgz",
        "path": "bower_components/monaco-editor",
        "ignore": ["dev", "esm", "min-maps", "min/vs/language/typescript"]
      },
      "google-code-prettify": {
        "url": "https://github.com/tcollard/google-code-prettify/archive/v1.0.5.zip",
        "ignore": ["closure-compiler", "js-modules", "tests", "yui-compressor", "Makefile", "examples", "*.html", "run_prettify*js"]
      },
      "jquery": {
        "url": "https://github.com/civicrm/jquery/archive/1.12.4-civicrm-1.2.zip"
      },
      "jquery-ui": {
        "url": "https://github.com/civicrm/jqueryui/archive/1.13.2-civicrm.zip"
      },
      "jquery-validation": {
        "url": "https://github.com/jquery-validation/jquery-validation/archive/1.19.5.zip",
        "ignore": [".*", "node_modules", "bower_components", "test", "demo", "lib"]
      },
      "json-formatter": {
        "url": "https://github.com/mohsen1/json-formatter/archive/v{$version}.zip",
        "version": "0.7.0",
        "ignore": ["demo", "test", "screenshot.png"]
      },
      "jstree": {
        "url": "https://github.com/vakata/jstree/archive/3.3.8.zip",
        "ignore": [".*", "docs", "demo", "libs", "node_modules", "test", "libs", "jstree.jquery.json", "gruntfile.js", "package.json", "bower.json", "component.json", "LICENCE-MIT", "README.md"]
      },
      "js-spark-md5": {
        "version": "v3.0.2",
        "url": "https://github.com/satazor/js-spark-md5/archive/refs/tags/{$version}.zip"
      },
      "lodash-compat": {
        "url": "https://github.com/lodash/lodash-compat/archive/3.0.1.zip",
        "ignore": [".*", "*.log", "*.md", "component.json", "package.json", "node_modules"]
      },
      "select2": {
        "url": "https://github.com/colemanw/select2/archive/v3.5-civicrm-1.3.zip"
      },
      "js-yaml": {
        "url": "https://github.com/nodeca/js-yaml/archive/3.13.1.zip",
        "ignore": ["benchmark", "bin", "demo", "examples", "lib", "support", "test"]
      },
      "smartmenus": {
        "url": "https://github.com/vadikom/smartmenus/archive/1.1.0.zip",
        "ignore": [".gitignore", "Gruntfile.js"]
      },
      "sms-counter": {
        "url": "https://github.com/danxexe/sms-counter/archive/master.zip",
        "ignore": ["examples"]
      }
    },
    "patches-comments": "For information about defining patches via composer.json, see ./tools/patches/README.md and https://docs.civicrm.org/dev/en/latest/core/dependencies/",
    "patches": {
      "adrienrn/php-mimetyper": {
        "Update gitignore to ensure that sites that manage via git don't miss out on the important db.json file": "https://download.civicrm.org/patches/ffb6c65c6caa0a8a648f167f8800072d50ca0e4138002c52c05065be0ae60a63/15.patch",
        "Apply patch to fix php8.2 deprecation notice on dynamic property $filename": "https://download.civicrm.org/patches/011c5f09dc27b260937380f7a9ef5ad1fa713ae206b0b66ce03decc1932fc3f6/17.patch"
      },
      "pear/db": {
        "Ensure that error messages about MySQL-SSL connections are reported": "https://download.civicrm.org/patches/a6e31a769218801fb1fb3d679ff72d3d8a7c5637d3bb7b78680cd7809552e0c6/mysqli-ssl.patch",
        "Apply CiviCRM Customisations for the pear:db package": "https://download.civicrm.org/patches/47e125fec0c789b095880fa65c6037210b01179290d5727b22b70fa77333496b/pear_db_civicrm_changes.patch"
      },
      "pear/mail": {
        "Apply CiviCRM Customisations for CRM-1367 and CRM-5946": "https://download.civicrm.org/patches/00da3cfcfe0d24420665f3015a5d3ea72dc331a52636f009883892ed3c7fbf84/pear-mail.patch"
      },
      "pear/mail_mime": {
        "Apply patch for CRM-3133 wordwrap body to be 750 characters to apply with RFC 2821": "https://download.civicrm.org/patches/38231167f0c789e0b368b38c1499973d562de65e87094b402156a6b928cc4c38/crm_3133.patch"
      },
      "pear/net_smtp": {
        "Add in CiviCRM custom error message for CRM-8744": "https://download.civicrm.org/patches/ee02d81d09432e524b249c9d874c9756b88924df8f5a8d69b19e8b4d6f532327/error-msg.patch"
      },
      "zetacomponents/mail": {
        "CiviCRM Custom Patches for ZetaCompoents mail": "https://download.civicrm.org/patches/6e4bd36dd432a1e62830b0c757a3bac9645ea1cfc551db39798a88c06d66aaf3/100-filename.patch",
        "CiviCRM Custom patch to fix a php8.1 issue found in CiviCRM unit tests": "https://download.civicrm.org/patches/d187bcd1100b99529705cdd61193efa683951f6cfbc97ecaa69bc6cd601d2e5f/200-php-81.patch"
      }
    },
    "compile-includes": ["composer.compile.json", "ext/greenwich/composer.compile.json"],
    "compile-whitelist": ["civicrm/composer-compile-lib"]
  }
}
