pact_broker 2.89.1 → 2.93.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (710) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +58 -0
  3. data/db/ddl_statements/all_verifications.rb +21 -0
  4. data/db/migrations/20210608_add_uuid_to_webhook.rb +1 -0
  5. data/db/migrations/20210701_recreate_all_verifications.rb +18 -0
  6. data/db/migrations/20211101_recreate_all_verifications.rb +10 -0
  7. data/db/migrations/20211102_create_table_temp_integrations.rb +26 -0
  8. data/db/migrations/20211103_migrate_integrations.rb +21 -0
  9. data/db/migrations/20211104_switch_integrations_and_temp_integrations.rb +25 -0
  10. data/db/migrations/20211120_create_pact_version_provider_tag_successful_verifications.rb +23 -0
  11. data/db/migrations/20211121_migrate_pact_version_provider_tag_successful_verifications_data.rb +11 -0
  12. data/docs/CONFIGURATION.md +30 -0
  13. data/lib/pact_broker/api/decorators/embedded_environment_decorator.rb +25 -0
  14. data/lib/pact_broker/api/decorators/matrix_decorator.rb +17 -2
  15. data/lib/pact_broker/api/decorators/version_decorator.rb +2 -0
  16. data/lib/pact_broker/api/renderers/html_pact_renderer.rb +4 -0
  17. data/lib/pact_broker/api/resources/deployed_versions_for_version_and_environment.rb +2 -2
  18. data/lib/pact_broker/api/resources/released_versions_for_version_and_environment.rb +5 -1
  19. data/lib/pact_broker/api/resources/verifications.rb +1 -1
  20. data/lib/pact_broker/app.rb +1 -1
  21. data/lib/pact_broker/certificates/service.rb +32 -2
  22. data/lib/pact_broker/config/runtime_configuration.rb +9 -0
  23. data/lib/pact_broker/config/runtime_configuration_database_methods.rb +6 -0
  24. data/lib/pact_broker/config/runtime_configuration_logging_methods.rb +6 -2
  25. data/lib/pact_broker/db/clean_incremental.rb +26 -9
  26. data/lib/pact_broker/db/data_migrations/migrate_integrations.rb +40 -0
  27. data/lib/pact_broker/db/data_migrations/migrate_pact_version_provider_tag_successful_verifications.rb +38 -0
  28. data/lib/pact_broker/db/migrate_data.rb +2 -0
  29. data/lib/pact_broker/deployments/deployed_version.rb +9 -1
  30. data/lib/pact_broker/doc/views/webhooks.markdown +23 -0
  31. data/lib/pact_broker/domain/pacticipant.rb +38 -6
  32. data/lib/pact_broker/initializers/database_connection.rb +6 -4
  33. data/lib/pact_broker/integrations/integration.rb +34 -10
  34. data/lib/pact_broker/integrations/repository.rb +22 -0
  35. data/lib/pact_broker/integrations/service.rb +2 -2
  36. data/lib/pact_broker/locale/en.yml +1 -2
  37. data/lib/pact_broker/matrix/quick_row.rb +16 -0
  38. data/lib/pact_broker/pacticipants/repository.rb +5 -0
  39. data/lib/pact_broker/pacticipants/service.rb +1 -1
  40. data/lib/pact_broker/pacts/merger.rb +8 -4
  41. data/lib/pact_broker/pacts/pact_publication_dataset_module.rb +52 -59
  42. data/lib/pact_broker/pacts/pact_publication_wip_dataset_module.rb +37 -4
  43. data/lib/pact_broker/pacts/pacts_for_verification_repository.rb +2 -2
  44. data/lib/pact_broker/pacts/repository.rb +1 -0
  45. data/lib/pact_broker/repositories.rb +5 -0
  46. data/lib/pact_broker/tasks/clean_task.rb +11 -0
  47. data/lib/pact_broker/test/http_test_data_builder.rb +1 -0
  48. data/lib/pact_broker/test/test_data_builder.rb +42 -9
  49. data/lib/pact_broker/ui/views/index/_css_and_js.haml +1 -0
  50. data/lib/pact_broker/ui/views/layouts/main.haml +4 -0
  51. data/lib/pact_broker/ui/views/matrix/show.haml +1 -0
  52. data/lib/pact_broker/verifications/pact_version_provider_tag_successful_verification.rb +11 -0
  53. data/lib/pact_broker/verifications/repository.rb +16 -0
  54. data/lib/pact_broker/version.rb +1 -1
  55. data/lib/pact_broker/webhooks/pact_and_verification_parameters.rb +1 -2
  56. data/pact_broker.gemspec +8 -1
  57. data/public/css/bootstrap-grid.css +170 -17
  58. data/public/css/bootstrap-grid.css.map +1 -1
  59. data/public/css/bootstrap-grid.min.css +5 -5
  60. data/public/css/bootstrap-grid.min.css.map +1 -1
  61. data/public/css/bootstrap-reboot.css +16 -22
  62. data/public/css/bootstrap-reboot.css.map +1 -1
  63. data/public/css/bootstrap-reboot.min.css +5 -5
  64. data/public/css/bootstrap-reboot.min.css.map +1 -1
  65. data/public/css/bootstrap.css +585 -308
  66. data/public/css/bootstrap.css.map +1 -1
  67. data/public/css/bootstrap.min.css +5 -5
  68. data/public/css/bootstrap.min.css.map +1 -1
  69. data/public/images/question.svg +1 -0
  70. data/public/javascripts/set-css-asset-base-url.js +23 -0
  71. data/public/js/bootstrap.bundle.js +1294 -1335
  72. data/public/js/bootstrap.bundle.js.map +1 -1
  73. data/public/js/bootstrap.bundle.min.js +4 -4
  74. data/public/js/bootstrap.bundle.min.js.map +1 -1
  75. data/public/js/bootstrap.js +1232 -1310
  76. data/public/js/bootstrap.js.map +1 -1
  77. data/public/js/bootstrap.min.js +4 -4
  78. data/public/js/bootstrap.min.js.map +1 -1
  79. data/public/stylesheets/index.css +14 -5
  80. data/public/stylesheets/matrix.css +6 -1
  81. data/public/stylesheets/pact.css +6 -1
  82. metadata +19 -1068
  83. data/.codeclimate.yml +0 -49
  84. data/.csslintrc +0 -2
  85. data/.dockerignore +0 -2
  86. data/.eslintignore +0 -1
  87. data/.eslintrc.yml +0 -277
  88. data/.github/FUNDING.yml +0 -4
  89. data/.github/ISSUE_TEMPLATE.md +0 -32
  90. data/.github/PULL_REQUEST_TEMPLATE.md +0 -9
  91. data/.github/workflows/release_gem.yml +0 -52
  92. data/.github/workflows/test-ruby-3.yml +0 -19
  93. data/.github/workflows/test.yml +0 -95
  94. data/.github/workflows/trigger_pact_docs_update.yml +0 -23
  95. data/.gitignore +0 -45
  96. data/.optic/.gitignore +0 -2
  97. data/.optic/api/specification.json +0 -1
  98. data/.optic/ignore +0 -14
  99. data/.rspec +0 -3
  100. data/.rubocop.yml +0 -314
  101. data/.ruby-version +0 -1
  102. data/CODE_OF_CONDUCT.md +0 -76
  103. data/CONTRIBUTING.md +0 -29
  104. data/DEVELOPER_DOCUMENTATION.md +0 -161
  105. data/DEVELOPER_SETUP.md +0 -165
  106. data/Dockerfile +0 -52
  107. data/ISSUES.md +0 -31
  108. data/LICENSE.txt +0 -22
  109. data/MATRIX.md +0 -4
  110. data/RELEASING.md +0 -5
  111. data/Rakefile +0 -23
  112. data/UPGRADING.md +0 -18
  113. data/config/boot.rb +0 -21
  114. data/config/database.travis.yml +0 -13
  115. data/config/database.yml +0 -79
  116. data/config.ru +0 -11
  117. data/db/test/backwards_compatibility/.rspec +0 -3
  118. data/db/test/backwards_compatibility/Appraisals +0 -57
  119. data/db/test/backwards_compatibility/Gemfile +0 -12
  120. data/db/test/backwards_compatibility/Rakefile +0 -72
  121. data/db/test/backwards_compatibility/config.ru +0 -21
  122. data/db/test/backwards_compatibility/gemfiles/1.18.0.gemfile +0 -15
  123. data/db/test/backwards_compatibility/gemfiles/1.18.0.gemfile.lock +0 -212
  124. data/db/test/backwards_compatibility/gemfiles/2.0.0.gemfile +0 -15
  125. data/db/test/backwards_compatibility/gemfiles/2.0.0.gemfile.lock +0 -210
  126. data/db/test/backwards_compatibility/gemfiles/2.1.0.gemfile +0 -15
  127. data/db/test/backwards_compatibility/gemfiles/2.1.0.gemfile.lock +0 -211
  128. data/db/test/backwards_compatibility/gemfiles/2.2.0.gemfile +0 -15
  129. data/db/test/backwards_compatibility/gemfiles/2.2.0.gemfile.lock +0 -199
  130. data/db/test/backwards_compatibility/gemfiles/2.3.0.gemfile +0 -14
  131. data/db/test/backwards_compatibility/gemfiles/2.3.0.gemfile.lock +0 -198
  132. data/db/test/backwards_compatibility/gemfiles/2.4.2.gemfile +0 -14
  133. data/db/test/backwards_compatibility/gemfiles/2.4.2.gemfile.lock +0 -198
  134. data/db/test/backwards_compatibility/gemfiles/2.5.1.gemfile +0 -14
  135. data/db/test/backwards_compatibility/gemfiles/2.5.1.gemfile.lock +0 -198
  136. data/db/test/backwards_compatibility/gemfiles/2.6.0.gemfile +0 -14
  137. data/db/test/backwards_compatibility/gemfiles/2.6.0.gemfile.lock +0 -198
  138. data/db/test/backwards_compatibility/gemfiles/head.gemfile +0 -14
  139. data/db/test/backwards_compatibility/gemfiles/head.gemfile.lock +0 -182
  140. data/db/test/backwards_compatibility/spec/fixtures/foo-bar.json +0 -22
  141. data/db/test/backwards_compatibility/spec/publish_pact_spec.rb +0 -72
  142. data/db/test/backwards_compatibility/spec/spec_helper.rb +0 -20
  143. data/db/test/backwards_compatibility/spec/support/fixture_helpers.rb +0 -12
  144. data/db/test/backwards_compatibility/spec/support/request_helpers.rb +0 -19
  145. data/db/test/change_migration_strategy/Rakefile +0 -21
  146. data/db/test/change_migration_strategy/before/Gemfile +0 -7
  147. data/docker-compose-ci-mysql.yml +0 -38
  148. data/docker-compose-dev-postgres.yml +0 -43
  149. data/docker-compose-issue-repro-with-pact-broker-docker-image.yml +0 -44
  150. data/docker-compose-test.yml +0 -102
  151. data/docs/configuration.yml +0 -385
  152. data/docs/images/Pactflow logo - black small.png +0 -0
  153. data/example/Gemfile +0 -6
  154. data/example/README.md +0 -64
  155. data/example/config/pact_broker.yml +0 -9
  156. data/example/config/puma.rb +0 -3
  157. data/example/config.ru +0 -10
  158. data/issue-reproduction/Dockerfile-pact-broker +0 -42
  159. data/lib/pact_broker/versions/latest_version.rb +0 -21
  160. data/optic.yml +0 -5
  161. data/pact_broker_client-pact_broker.json +0 -133
  162. data/public/js/npm.js +0 -13
  163. data/regression/.gitignore +0 -1
  164. data/regression/can_i_deploy_spec.rb +0 -43
  165. data/regression/index_spec.rb +0 -26
  166. data/regression/regression_helper.rb +0 -63
  167. data/regression/script/approval-all.sh +0 -6
  168. data/regression/script/clear.sh +0 -3
  169. data/regression/script/run.sh +0 -3
  170. data/scaffolding/README.md +0 -23
  171. data/scaffolding/run.rb +0 -242
  172. data/scaffolding/templates/decorator.rb.erb +0 -15
  173. data/scaffolding/templates/decorator_spec.erb.rb +0 -0
  174. data/scaffolding/templates/migration.erb +0 -12
  175. data/scaffolding/templates/model.erb +0 -14
  176. data/scaffolding/templates/repository.rb.erb +0 -18
  177. data/scaffolding/templates/repository_spec.rb.erb +0 -9
  178. data/scaffolding/templates/resource.erb +0 -46
  179. data/scaffolding/templates/resource_spec.rb.erb +0 -78
  180. data/scaffolding/templates/service.rb.erb +0 -22
  181. data/scaffolding/templates/service_spec.rb.erb +0 -9
  182. data/script/data/auto-create-things-for-tags.rb +0 -22
  183. data/script/data/branches.rb +0 -35
  184. data/script/data/contract-published-requiring-verification.rb +0 -26
  185. data/script/data/environments.rb +0 -45
  186. data/script/data/expand-currently-deployed.rb +0 -47
  187. data/script/data/issue-494.rb +0 -25
  188. data/script/data/pending.rb +0 -26
  189. data/script/data/tags.rb +0 -35
  190. data/script/data/verify-pact-for-multiple-selectors.rb +0 -30
  191. data/script/data/webhook.rb +0 -22
  192. data/script/db-spec.sh +0 -16
  193. data/script/demonstrate-version-branches.rb +0 -33
  194. data/script/dev/rubocop-modified-files.sh +0 -3
  195. data/script/dev/webhook-server-with-random-errors.sh +0 -25
  196. data/script/docker/db-execute-sql-file.sh +0 -2
  197. data/script/docker/db-psql.sh +0 -3
  198. data/script/docker/db-reload.sh +0 -11
  199. data/script/docker/db-restore.sh +0 -5
  200. data/script/docker/db-rm.sh +0 -3
  201. data/script/docker/db-start.sh +0 -7
  202. data/script/docker/mysql-db-start.sh +0 -10
  203. data/script/docker-container/test.sh +0 -3
  204. data/script/docs/generate-api-docs.rb +0 -117
  205. data/script/docs/generate-configuration-docs.rb +0 -107
  206. data/script/docs/regenerate-api-docs.sh +0 -11
  207. data/script/exercise-api-for-optic.sh +0 -3
  208. data/script/foo-bar-verification.json +0 -59
  209. data/script/foo-bar.json +0 -33
  210. data/script/generate-certificates-for-webooks-certificate-spec.rb +0 -49
  211. data/script/generate-erd +0 -55
  212. data/script/github-issues/add-branch-support/issue-text.txt +0 -7
  213. data/script/github-issues/add-branch-support/issues.txt +0 -0
  214. data/script/github-issues/add-branch-support/raise-issue-in-client-repos.sh +0 -10
  215. data/script/github-issues/add-branch-support-for-provider-versions/issue-text.txt +0 -9
  216. data/script/github-issues/add-branch-support-for-provider-versions/issues.txt +0 -6
  217. data/script/github-issues/add-branch-support-for-provider-versions/raise-issue-in-client-repos.sh +0 -10
  218. data/script/github-issues/branch-consumer-version-selector/issue-text.txt +0 -52
  219. data/script/github-issues/branch-consumer-version-selector/issues.txt +0 -9
  220. data/script/github-issues/branch-consumer-version-selector/raise-issue-in-client-repos.sh +0 -10
  221. data/script/github-issues/consumer-version-selectors-docs/issue-text.txt +0 -11
  222. data/script/github-issues/consumer-version-selectors-docs/issues.txt +0 -6
  223. data/script/github-issues/consumer-version-selectors-docs/raise-issue-in-client-repos.sh +0 -10
  224. data/script/github-issues/deployed-and-released-selectors-docs/issue-text.txt +0 -26
  225. data/script/github-issues/deployed-and-released-selectors-docs/issues.txt +0 -9
  226. data/script/github-issues/deployed-and-released-selectors-docs/raise-issue-in-client-repos.sh +0 -10
  227. data/script/github-issues/include-pending-by-default/issue-text.txt +0 -5
  228. data/script/github-issues/include-pending-by-default/issues.txt +0 -10
  229. data/script/github-issues/include-pending-by-default/raise-issue-in-client-repos.sh +0 -10
  230. data/script/import-pg-database.sh +0 -5
  231. data/script/insert-self-signed-certificate-from-url.rb +0 -35
  232. data/script/prod/clean-up.sql +0 -11
  233. data/script/prod/migrate-latest-pacts.sh +0 -29
  234. data/script/prod/redact-data.sql +0 -16
  235. data/script/pry.rb +0 -31
  236. data/script/publish-2.sh +0 -4
  237. data/script/publish-new.sh +0 -31
  238. data/script/publish-not-a-pact.sh +0 -4
  239. data/script/publish-verification.sh +0 -5
  240. data/script/publish.sh +0 -28
  241. data/script/query.rb +0 -20
  242. data/script/recreate-docker-pg-db.sh +0 -20
  243. data/script/recreate-mysql-db.sh +0 -18
  244. data/script/recreate-pg-db.sh +0 -16
  245. data/script/recreate-test-database.sh +0 -2
  246. data/script/release-via-github-action.sh +0 -7
  247. data/script/release.sh +0 -11
  248. data/script/reproduce-issue-can-i-deploy-ignore.rb +0 -48
  249. data/script/reproduce-issue-starting-up.rb +0 -38
  250. data/script/reproduce-issue.rb +0 -37
  251. data/script/restart.sh +0 -18
  252. data/script/run-with-ssl.rb +0 -44
  253. data/script/seed-example-matrix.rb +0 -105
  254. data/script/seed-for-webhook-test.rb +0 -59
  255. data/script/seed-matrix.rb +0 -90
  256. data/script/seed.rb +0 -101
  257. data/script/test/approval-all.sh +0 -6
  258. data/script/test/run-rake-on-docker-compose-mysql.sh +0 -8
  259. data/script/trigger-release.sh +0 -30
  260. data/script/update-hal-browser +0 -6
  261. data/script/watch.sh +0 -7
  262. data/script/webhook-server.ru +0 -10
  263. data/spec/features/base_equality_only_on_content_that_affects_verification_results_spec.rb +0 -34
  264. data/spec/features/can_i_deploy_spec.rb +0 -31
  265. data/spec/features/create_branch_version_spec.rb +0 -29
  266. data/spec/features/create_environment_spec.rb +0 -47
  267. data/spec/features/create_pacticipant_spec.rb +0 -36
  268. data/spec/features/create_tag_spec.rb +0 -42
  269. data/spec/features/create_version_spec.rb +0 -56
  270. data/spec/features/create_webhook_spec.rb +0 -189
  271. data/spec/features/delete_environment_spec.rb +0 -16
  272. data/spec/features/delete_integration_spec.rb +0 -27
  273. data/spec/features/delete_label_spec.rb +0 -28
  274. data/spec/features/delete_pact_spec.rb +0 -31
  275. data/spec/features/delete_pact_versions_for_branch_spec.rb +0 -34
  276. data/spec/features/delete_pact_versions_spec.rb +0 -29
  277. data/spec/features/delete_tagged_pact_versions_spec.rb +0 -28
  278. data/spec/features/delete_verification_spec.rb +0 -27
  279. data/spec/features/delete_version_spec.rb +0 -22
  280. data/spec/features/delete_webhook_spec.rb +0 -34
  281. data/spec/features/edit_webhook_spec.rb +0 -61
  282. data/spec/features/end_deployment_spec.rb +0 -29
  283. data/spec/features/end_support_spec.rb +0 -67
  284. data/spec/features/execute_unsaved_webhook_spec.rb +0 -53
  285. data/spec/features/execute_webhook_spec.rb +0 -92
  286. data/spec/features/get_branch_version_spec.rb +0 -12
  287. data/spec/features/get_can_i_deploy_badge_spec.rb +0 -13
  288. data/spec/features/get_currently_deployed_versions_for_environment_spec.rb +0 -76
  289. data/spec/features/get_currently_deployed_versions_for_version_spec.rb +0 -27
  290. data/spec/features/get_currently_supported_versions_for_environment_spec.rb +0 -57
  291. data/spec/features/get_dashboard_spec.rb +0 -29
  292. data/spec/features/get_deployed_versions_for_version_and_environment.rb +0 -27
  293. data/spec/features/get_diff_spec.rb +0 -53
  294. data/spec/features/get_environment_spec.rb +0 -19
  295. data/spec/features/get_environments_spec.rb +0 -30
  296. data/spec/features/get_integrations_dot_file_spec.rb +0 -23
  297. data/spec/features/get_integrations_spec.rb +0 -17
  298. data/spec/features/get_label_spec.rb +0 -28
  299. data/spec/features/get_latest_pact_badge_spec.rb +0 -54
  300. data/spec/features/get_latest_tagged_pact_badge_spec.rb +0 -38
  301. data/spec/features/get_latest_tagged_pact_spec.rb +0 -22
  302. data/spec/features/get_latest_untagged_pact_badge_spec.rb +0 -38
  303. data/spec/features/get_latest_untagged_pact_spec.rb +0 -22
  304. data/spec/features/get_latest_verification_for_pact_spec.rb +0 -59
  305. data/spec/features/get_matrix_badge_spec.rb +0 -50
  306. data/spec/features/get_matrix_for_consumer_and_provider_spec.rb +0 -22
  307. data/spec/features/get_matrix_spec.rb +0 -34
  308. data/spec/features/get_pact_spec.rb +0 -65
  309. data/spec/features/get_pact_version.rb +0 -36
  310. data/spec/features/get_pact_versions_spec.rb +0 -34
  311. data/spec/features/get_pacticipants_by_label_spec.rb +0 -27
  312. data/spec/features/get_previous_distinct_version.rb +0 -51
  313. data/spec/features/get_provider_pacts_for_verification_spec.rb +0 -95
  314. data/spec/features/get_provider_pacts_spec.rb +0 -93
  315. data/spec/features/get_released_versions_for_version_and_environment.rb +0 -27
  316. data/spec/features/get_tagged_pact_versions_spec.rb +0 -26
  317. data/spec/features/get_triggered_webhooks_for_pact_spec.rb +0 -20
  318. data/spec/features/get_triggered_webhooks_for_verification_spec.rb +0 -21
  319. data/spec/features/get_verifications_for_consumer_version_spec.rb +0 -33
  320. data/spec/features/get_version_spec.rb +0 -44
  321. data/spec/features/get_versions_spec.rb +0 -39
  322. data/spec/features/label_pacticipant_spec.rb +0 -22
  323. data/spec/features/merge_pact_spec.rb +0 -63
  324. data/spec/features/metadata_spec.rb +0 -66
  325. data/spec/features/metrics_spec.rb +0 -23
  326. data/spec/features/pending_pacts_spec.rb +0 -109
  327. data/spec/features/pending_pacts_with_tags_spec.rb +0 -138
  328. data/spec/features/publish_not_a_pact_spec.rb +0 -37
  329. data/spec/features/publish_pact_all_in_one_approval_spec.rb +0 -72
  330. data/spec/features/publish_pact_all_in_one_spec.rb +0 -61
  331. data/spec/features/publish_pact_spec.rb +0 -124
  332. data/spec/features/publish_verification_results_and_version_spec.rb +0 -70
  333. data/spec/features/publish_verification_spec.rb +0 -72
  334. data/spec/features/record_deployment_spec.rb +0 -106
  335. data/spec/features/record_release_spec.rb +0 -84
  336. data/spec/features/record_undeployment_spec.rb +0 -67
  337. data/spec/features/tag_version_spec.rb +0 -13
  338. data/spec/features/update_environment_spec.rb +0 -44
  339. data/spec/features/update_matrix_spec.rb +0 -146
  340. data/spec/features/update_pacticipant_spec.rb +0 -98
  341. data/spec/features/update_version_spec.rb +0 -100
  342. data/spec/features/update_webhook_spec.rb +0 -47
  343. data/spec/features/wip_pacts_spec.rb +0 -387
  344. data/spec/fixtures/a_consumer-a_provider-2.json +0 -22
  345. data/spec/fixtures/a_consumer-a_provider-3.json +0 -22
  346. data/spec/fixtures/a_consumer-a_provider-conflict.json +0 -22
  347. data/spec/fixtures/a_consumer-a_provider-merged.json +0 -34
  348. data/spec/fixtures/a_consumer-a_provider.json +0 -22
  349. data/spec/fixtures/approvals/clean_incremental_dry_run.approved.json +0 -100
  350. data/spec/fixtures/approvals/docs_webhooks_executing_a_saved_webhook_options.approved.json +0 -20
  351. data/spec/fixtures/approvals/docs_webhooks_executing_a_saved_webhook_post.approved.json +0 -43
  352. data/spec/fixtures/approvals/docs_webhooks_executing_an_unsaved_webhook_options.approved.json +0 -20
  353. data/spec/fixtures/approvals/docs_webhooks_executing_an_unsaved_webhook_post.approved.json +0 -63
  354. data/spec/fixtures/approvals/docs_webhooks_logs_of_triggered_webhook_get.approved.json +0 -20
  355. data/spec/fixtures/approvals/docs_webhooks_logs_of_triggered_webhook_options.approved.json +0 -20
  356. data/spec/fixtures/approvals/docs_webhooks_pact_webhooks_get.approved.json +0 -45
  357. data/spec/fixtures/approvals/docs_webhooks_pact_webhooks_options.approved.json +0 -20
  358. data/spec/fixtures/approvals/docs_webhooks_triggered_webhooks_for_pact_publication_get.approved.json +0 -52
  359. data/spec/fixtures/approvals/docs_webhooks_triggered_webhooks_for_pact_publication_options.approved.json +0 -20
  360. data/spec/fixtures/approvals/docs_webhooks_triggered_webhooks_for_verification_publication_get.approved.json +0 -32
  361. data/spec/fixtures/approvals/docs_webhooks_triggered_webhooks_for_verification_publication_options.approved.json +0 -20
  362. data/spec/fixtures/approvals/docs_webhooks_webhook_get.approved.json +0 -74
  363. data/spec/fixtures/approvals/docs_webhooks_webhook_options.approved.json +0 -20
  364. data/spec/fixtures/approvals/docs_webhooks_webhook_put.approved.json +0 -77
  365. data/spec/fixtures/approvals/docs_webhooks_webhooks_for_a_provider_get.approved.json +0 -41
  366. data/spec/fixtures/approvals/docs_webhooks_webhooks_for_a_provider_options.approved.json +0 -20
  367. data/spec/fixtures/approvals/docs_webhooks_webhooks_for_consumer_and_provider_get.approved.json +0 -45
  368. data/spec/fixtures/approvals/docs_webhooks_webhooks_for_consumer_and_provider_options.approved.json +0 -20
  369. data/spec/fixtures/approvals/docs_webhooks_webhooks_for_consumer_get.approved.json +0 -41
  370. data/spec/fixtures/approvals/docs_webhooks_webhooks_for_consumer_options.approved.json +0 -20
  371. data/spec/fixtures/approvals/docs_webhooks_webhooks_get.approved.json +0 -45
  372. data/spec/fixtures/approvals/docs_webhooks_webhooks_options.approved.json +0 -20
  373. data/spec/fixtures/approvals/docs_webhooks_webhooks_post.approved.json +0 -78
  374. data/spec/fixtures/approvals/docs_webhooks_webhooks_status_get.approved.json +0 -79
  375. data/spec/fixtures/approvals/docs_webhooks_webhooks_status_options.approved.json +0 -20
  376. data/spec/fixtures/approvals/get_provider_pacts_for_verification.approved.json +0 -56
  377. data/spec/fixtures/approvals/matrix_integration_environment_spec.approved.json +0 -62
  378. data/spec/fixtures/approvals/matrix_integration_ignore_spec.approved.json +0 -124
  379. data/spec/fixtures/approvals/matrix_integration_spec.approved.json +0 -173
  380. data/spec/fixtures/approvals/modifiable_resources.approved.json +0 -105
  381. data/spec/fixtures/approvals/publish_contract_no_branch.approved.json +0 -165
  382. data/spec/fixtures/approvals/publish_contract_nothing_exists.approved.json +0 -156
  383. data/spec/fixtures/approvals/publish_contract_nothing_exists_with_webhook.approved.json +0 -156
  384. data/spec/fixtures/approvals/publish_contract_verification_already_exists.approved.json +0 -147
  385. data/spec/fixtures/approvals/publish_contract_with_validation_error.approved.json +0 -41
  386. data/spec/fixtures/approvals/publish_contracts_results_decorator.approved.json +0 -61
  387. data/spec/fixtures/certificate-invalid.pem +0 -29
  388. data/spec/fixtures/certificate.pem +0 -53
  389. data/spec/fixtures/certificates/cacert.pem +0 -21
  390. data/spec/fixtures/certificates/cert.pem +0 -20
  391. data/spec/fixtures/certificates/key.pem +0 -27
  392. data/spec/fixtures/certificates/self-signed.badssl.com.pem +0 -21
  393. data/spec/fixtures/consumer-provider.json +0 -25
  394. data/spec/fixtures/dashboard.json +0 -87
  395. data/spec/fixtures/expected.gv +0 -4
  396. data/spec/fixtures/foo-bar.json +0 -22
  397. data/spec/fixtures/invalid-publish-contract-body.json +0 -38
  398. data/spec/fixtures/renderer_pact.json +0 -34
  399. data/spec/fixtures/update_pacticipant.json +0 -5
  400. data/spec/fixtures/updated_pacticipant.json +0 -11
  401. data/spec/fixtures/verification.json +0 -11
  402. data/spec/fixtures/webhook_valid.json +0 -17
  403. data/spec/fixtures/webhook_valid_with_pacticipants.json +0 -23
  404. data/spec/integration/app_spec.rb +0 -209
  405. data/spec/integration/endpoints/group_spec.rb +0 -19
  406. data/spec/integration/pact_metdata_spec.rb +0 -105
  407. data/spec/integration/ui/index_spec.rb +0 -50
  408. data/spec/integration/ui/matrix_spec.rb +0 -36
  409. data/spec/integration/webhooks/certificate_spec.rb +0 -47
  410. data/spec/integration/webhooks/contract_publication_spec.rb +0 -68
  411. data/spec/integration/webhooks/contract_requiring_verification_published_spec.rb +0 -67
  412. data/spec/integration/webhooks/pact_publication_spec.rb +0 -51
  413. data/spec/integration/webhooks_documentation_spec.rb +0 -348
  414. data/spec/lib/pact/doc/generator_spec.rb +0 -80
  415. data/spec/lib/pact/doc/interaction_view_model_spec.rb +0 -232
  416. data/spec/lib/pact/doc/markdown/consumer_contract_renderer_spec.rb +0 -71
  417. data/spec/lib/pact/doc/markdown/index_renderer_spec.rb +0 -29
  418. data/spec/lib/pact_broker/api/contracts/environment_schema_spec.rb +0 -91
  419. data/spec/lib/pact_broker/api/contracts/pacticipant_schema_spec.rb +0 -46
  420. data/spec/lib/pact_broker/api/contracts/pacts_for_verification_json_query_schema_combinations_spec.rb +0 -87
  421. data/spec/lib/pact_broker/api/contracts/pacts_for_verification_json_query_schema_spec.rb +0 -358
  422. data/spec/lib/pact_broker/api/contracts/pacts_for_verification_query_string_schema_spec.rb +0 -97
  423. data/spec/lib/pact_broker/api/contracts/publish_contracts_schema_spec.rb +0 -127
  424. data/spec/lib/pact_broker/api/contracts/put_pact_params_contract_spec.rb +0 -133
  425. data/spec/lib/pact_broker/api/contracts/verification_contract_spec.rb +0 -112
  426. data/spec/lib/pact_broker/api/contracts/webhook_contract_spec.rb +0 -379
  427. data/spec/lib/pact_broker/api/decorators/dashboard_decorator_spec.rb +0 -94
  428. data/spec/lib/pact_broker/api/decorators/embedded_label_decorator_spec.rb +0 -34
  429. data/spec/lib/pact_broker/api/decorators/embedded_tag_decorator_spec.rb +0 -41
  430. data/spec/lib/pact_broker/api/decorators/embedded_version_decorator_spec.rb +0 -39
  431. data/spec/lib/pact_broker/api/decorators/extended_pact_decorator_spec.rb +0 -62
  432. data/spec/lib/pact_broker/api/decorators/integration_decorator_spec.rb +0 -86
  433. data/spec/lib/pact_broker/api/decorators/integrations_decorator_spec.rb +0 -29
  434. data/spec/lib/pact_broker/api/decorators/label_decorator_spec.rb +0 -42
  435. data/spec/lib/pact_broker/api/decorators/latest_pact_decorator_spec.rb +0 -25
  436. data/spec/lib/pact_broker/api/decorators/matrix_decorator_spec.rb +0 -259
  437. data/spec/lib/pact_broker/api/decorators/pact_collection_decorator_spec.rb +0 -23
  438. data/spec/lib/pact_broker/api/decorators/pact_decorator_spec.rb +0 -136
  439. data/spec/lib/pact_broker/api/decorators/pact_version_decorator_spec.rb +0 -61
  440. data/spec/lib/pact_broker/api/decorators/pact_webhooks_status_decorator_spec.rb +0 -138
  441. data/spec/lib/pact_broker/api/decorators/pacticipant_collection_decorator_spec.rb +0 -62
  442. data/spec/lib/pact_broker/api/decorators/pacticipant_decorator_spec.rb +0 -89
  443. data/spec/lib/pact_broker/api/decorators/pacts_for_verification_query_decorator_spec.rb +0 -175
  444. data/spec/lib/pact_broker/api/decorators/provider_pacts_decorator_spec.rb +0 -58
  445. data/spec/lib/pact_broker/api/decorators/publish_contracts_results_decorator_spec.rb +0 -53
  446. data/spec/lib/pact_broker/api/decorators/reason_decorator_spec.rb +0 -95
  447. data/spec/lib/pact_broker/api/decorators/relationships_csv_decorator_spec.rb +0 -28
  448. data/spec/lib/pact_broker/api/decorators/representable_pact_spec.rb +0 -29
  449. data/spec/lib/pact_broker/api/decorators/tag_decorator_spec.rb +0 -57
  450. data/spec/lib/pact_broker/api/decorators/tagged_pact_versions_decorator_spec.rb +0 -79
  451. data/spec/lib/pact_broker/api/decorators/triggered_webhook_decorator_spec.rb +0 -69
  452. data/spec/lib/pact_broker/api/decorators/triggered_webhooks_decorator_spec.rb +0 -28
  453. data/spec/lib/pact_broker/api/decorators/verifiable_pact_decorator_spec.rb +0 -94
  454. data/spec/lib/pact_broker/api/decorators/verifiable_pacts_decorator_spec.rb +0 -29
  455. data/spec/lib/pact_broker/api/decorators/verification_decorator_spec.rb +0 -81
  456. data/spec/lib/pact_broker/api/decorators/verification_summary_decorator_spec.rb +0 -65
  457. data/spec/lib/pact_broker/api/decorators/version_decorator_spec.rb +0 -121
  458. data/spec/lib/pact_broker/api/decorators/versions_decorator_spec.rb +0 -49
  459. data/spec/lib/pact_broker/api/decorators/webhook_decorator_spec.rb +0 -210
  460. data/spec/lib/pact_broker/api/decorators/webhook_execution_result_decorator_spec.rb +0 -128
  461. data/spec/lib/pact_broker/api/decorators/webhook_request_template_decorator_spec.rb +0 -78
  462. data/spec/lib/pact_broker/api/decorators/webhooks_decorator_spec.rb +0 -48
  463. data/spec/lib/pact_broker/api/middleware/basic_auth_spec.rb +0 -312
  464. data/spec/lib/pact_broker/api/middleware/configuration_spec.rb +0 -43
  465. data/spec/lib/pact_broker/api/pact_broker_urls_spec.rb +0 -221
  466. data/spec/lib/pact_broker/api/renderers/html_pact_renderer_spec.rb +0 -141
  467. data/spec/lib/pact_broker/api/renderers/integrations_dot_renderer_spec.rb +0 -29
  468. data/spec/lib/pact_broker/api/resources/all_webhooks_spec.rb +0 -145
  469. data/spec/lib/pact_broker/api/resources/badge_spec.rb +0 -212
  470. data/spec/lib/pact_broker/api/resources/can_i_deploy_badge_spec.rb +0 -80
  471. data/spec/lib/pact_broker/api/resources/can_i_deploy_pacticipant_version_spec.rb +0 -31
  472. data/spec/lib/pact_broker/api/resources/can_i_deploy_spec.rb +0 -51
  473. data/spec/lib/pact_broker/api/resources/dashboard_spec.rb +0 -36
  474. data/spec/lib/pact_broker/api/resources/default_base_resource_approval_spec.rb +0 -60
  475. data/spec/lib/pact_broker/api/resources/default_base_resource_spec.rb +0 -224
  476. data/spec/lib/pact_broker/api/resources/error_response_body_generator_spec.rb +0 -69
  477. data/spec/lib/pact_broker/api/resources/group_spec.rb +0 -82
  478. data/spec/lib/pact_broker/api/resources/latest_pact_spec.rb +0 -80
  479. data/spec/lib/pact_broker/api/resources/latest_provider_pacts_spec.rb +0 -52
  480. data/spec/lib/pact_broker/api/resources/latest_verifications_for_consumer_version_spec.rb +0 -68
  481. data/spec/lib/pact_broker/api/resources/matrix_badge_spec.rb +0 -11
  482. data/spec/lib/pact_broker/api/resources/matrix_spec.rb +0 -42
  483. data/spec/lib/pact_broker/api/resources/pact_spec.rb +0 -178
  484. data/spec/lib/pact_broker/api/resources/pact_triggered_webhooks_spec.rb +0 -54
  485. data/spec/lib/pact_broker/api/resources/pacticipant_spec.rb +0 -60
  486. data/spec/lib/pact_broker/api/resources/pacticipant_webhooks_spec.rb +0 -238
  487. data/spec/lib/pact_broker/api/resources/pacticipants_spec.rb +0 -87
  488. data/spec/lib/pact_broker/api/resources/provider_pacts_for_verification_spec.rb +0 -116
  489. data/spec/lib/pact_broker/api/resources/provider_pacts_spec.rb +0 -75
  490. data/spec/lib/pact_broker/api/resources/released_version_spec.rb +0 -61
  491. data/spec/lib/pact_broker/api/resources/tag_spec.rb +0 -166
  492. data/spec/lib/pact_broker/api/resources/tagged_pact_versions_spec.rb +0 -96
  493. data/spec/lib/pact_broker/api/resources/triggered_webhook_logs_spec.rb +0 -32
  494. data/spec/lib/pact_broker/api/resources/verification_spec.rb +0 -87
  495. data/spec/lib/pact_broker/api/resources/verification_triggered_webhooks_spec.rb +0 -67
  496. data/spec/lib/pact_broker/api/resources/verifications_spec.rb +0 -135
  497. data/spec/lib/pact_broker/api/resources/webhook_execution_spec.rb +0 -92
  498. data/spec/lib/pact_broker/api/resources/webhook_spec.rb +0 -115
  499. data/spec/lib/pact_broker/app_basic_auth_spec.rb +0 -122
  500. data/spec/lib/pact_broker/app_spec.rb +0 -348
  501. data/spec/lib/pact_broker/badges/service_spec.rb +0 -348
  502. data/spec/lib/pact_broker/build_http_options_spec.rb +0 -47
  503. data/spec/lib/pact_broker/certificates/service_spec.rb +0 -80
  504. data/spec/lib/pact_broker/config/load_spec.rb +0 -110
  505. data/spec/lib/pact_broker/config/runtime_configuration_documentation_spec.rb +0 -30
  506. data/spec/lib/pact_broker/config/runtime_configuration_logging_methods_spec.rb +0 -22
  507. data/spec/lib/pact_broker/config/runtime_configuration_spec.rb +0 -71
  508. data/spec/lib/pact_broker/config/save_spec.rb +0 -100
  509. data/spec/lib/pact_broker/config/space_delimited_integer_list_spec.rb +0 -47
  510. data/spec/lib/pact_broker/config/space_delimited_string_list_spec.rb +0 -45
  511. data/spec/lib/pact_broker/configuration_spec.rb +0 -167
  512. data/spec/lib/pact_broker/contracts/service_spec.rb +0 -193
  513. data/spec/lib/pact_broker/db/clean_incremental_spec.rb +0 -120
  514. data/spec/lib/pact_broker/db/clean_old_spec.rb +0 -123
  515. data/spec/lib/pact_broker/db/clean_spec.rb +0 -153
  516. data/spec/lib/pact_broker/db/data_migrations/create_branches_spec.rb +0 -57
  517. data/spec/lib/pact_broker/db/data_migrations/migrate_webhook_headers_spec.rb +0 -78
  518. data/spec/lib/pact_broker/db/data_migrations/set_consumer_ids_for_pact_publications_spec.rb +0 -40
  519. data/spec/lib/pact_broker/db/data_migrations/set_interactions_counts_spec.rb +0 -38
  520. data/spec/lib/pact_broker/db/data_migrations/set_latest_version_sequence_value_spec.rb +0 -68
  521. data/spec/lib/pact_broker/db/data_migrations/set_pacticipant_main_branch_spec.rb +0 -41
  522. data/spec/lib/pact_broker/db/delete_overwritten_data_spec.rb +0 -161
  523. data/spec/lib/pact_broker/db/log_quietener_spec.rb +0 -52
  524. data/spec/lib/pact_broker/db/validate_encoding_spec.rb +0 -66
  525. data/spec/lib/pact_broker/deployments/deployed_version_service_spec.rb +0 -42
  526. data/spec/lib/pact_broker/deployments/deployed_version_spec.rb +0 -109
  527. data/spec/lib/pact_broker/deployments/environment_service_spec.rb +0 -58
  528. data/spec/lib/pact_broker/deployments/environment_spec.rb +0 -27
  529. data/spec/lib/pact_broker/diagnostic/resources/dependencies_spec.rb +0 -85
  530. data/spec/lib/pact_broker/diagnostic/resources/heartbeat_spec.rb +0 -34
  531. data/spec/lib/pact_broker/doc/controllers/app_spec.rb +0 -82
  532. data/spec/lib/pact_broker/doc/coverage_spec.rb +0 -39
  533. data/spec/lib/pact_broker/domain/group_spec.rb +0 -25
  534. data/spec/lib/pact_broker/domain/index_item_spec.rb +0 -24
  535. data/spec/lib/pact_broker/domain/order_versions_spec.rb +0 -84
  536. data/spec/lib/pact_broker/domain/pact_spec.rb +0 -27
  537. data/spec/lib/pact_broker/domain/tag_spec.rb +0 -134
  538. data/spec/lib/pact_broker/domain/verification_spec.rb +0 -133
  539. data/spec/lib/pact_broker/domain/version_spec.rb +0 -490
  540. data/spec/lib/pact_broker/domain/webhook_request_spec.rb +0 -196
  541. data/spec/lib/pact_broker/domain/webhook_spec.rb +0 -168
  542. data/spec/lib/pact_broker/errors/error_logger_spec.rb +0 -65
  543. data/spec/lib/pact_broker/errors_spec.rb +0 -54
  544. data/spec/lib/pact_broker/events/subscriber_spec.rb +0 -43
  545. data/spec/lib/pact_broker/feature_toggle_spec.rb +0 -80
  546. data/spec/lib/pact_broker/groups/service_spec.rb +0 -52
  547. data/spec/lib/pact_broker/hash_refinements_spec.rb +0 -63
  548. data/spec/lib/pact_broker/index/service_spec.rb +0 -400
  549. data/spec/lib/pact_broker/index/service_view_spec.rb +0 -144
  550. data/spec/lib/pact_broker/integrations/integration_spec.rb +0 -108
  551. data/spec/lib/pact_broker/integrations/service_spec.rb +0 -282
  552. data/spec/lib/pact_broker/labels/repository_spec.rb +0 -124
  553. data/spec/lib/pact_broker/labels/service_spec.rb +0 -28
  554. data/spec/lib/pact_broker/matrix/aggregated_row_spec.rb +0 -100
  555. data/spec/lib/pact_broker/matrix/can_i_deploy_query_schema_spec.rb +0 -72
  556. data/spec/lib/pact_broker/matrix/deployment_status_summary_spec.rb +0 -300
  557. data/spec/lib/pact_broker/matrix/every_row_spec.rb +0 -133
  558. data/spec/lib/pact_broker/matrix/head_row_spec.rb +0 -89
  559. data/spec/lib/pact_broker/matrix/integration_environment_spec.rb +0 -187
  560. data/spec/lib/pact_broker/matrix/integration_ignore_spec.rb +0 -238
  561. data/spec/lib/pact_broker/matrix/integration_spec.rb +0 -504
  562. data/spec/lib/pact_broker/matrix/parse_can_i_deploy_query_spec.rb +0 -77
  563. data/spec/lib/pact_broker/matrix/parse_query_spec.rb +0 -141
  564. data/spec/lib/pact_broker/matrix/quick_row_spec.rb +0 -74
  565. data/spec/lib/pact_broker/matrix/repository_dependency_spec.rb +0 -56
  566. data/spec/lib/pact_broker/matrix/repository_query_limit_spec.rb +0 -78
  567. data/spec/lib/pact_broker/matrix/repository_spec.rb +0 -888
  568. data/spec/lib/pact_broker/matrix/row_spec.rb +0 -74
  569. data/spec/lib/pact_broker/matrix/service_spec.rb +0 -200
  570. data/spec/lib/pact_broker/messages_spec.rb +0 -29
  571. data/spec/lib/pact_broker/metrics/service_spec.rb +0 -131
  572. data/spec/lib/pact_broker/pacticipants/find_potential_duplicate_pacticipant_names_spec.rb +0 -63
  573. data/spec/lib/pact_broker/pacticipants/generate_display_name_spec.rb +0 -39
  574. data/spec/lib/pact_broker/pacticipants/repository_spec.rb +0 -239
  575. data/spec/lib/pact_broker/pacticipants/service_spec.rb +0 -217
  576. data/spec/lib/pact_broker/pacts/build_verifiable_pact_notices_spec.rb +0 -75
  577. data/spec/lib/pact_broker/pacts/content_spec.rb +0 -447
  578. data/spec/lib/pact_broker/pacts/create_formatted_diff_spec.rb +0 -29
  579. data/spec/lib/pact_broker/pacts/diff_spec.rb +0 -99
  580. data/spec/lib/pact_broker/pacts/generate_interaction_sha_spec.rb +0 -45
  581. data/spec/lib/pact_broker/pacts/generate_sha_spec.rb +0 -92
  582. data/spec/lib/pact_broker/pacts/merger_spec.rb +0 -171
  583. data/spec/lib/pact_broker/pacts/metadata_spec.rb +0 -147
  584. data/spec/lib/pact_broker/pacts/pact_params_spec.rb +0 -111
  585. data/spec/lib/pact_broker/pacts/pact_publication_clean_selector_dataset_module_spec.rb +0 -97
  586. data/spec/lib/pact_broker/pacts/pact_publication_dataset_module_spec.rb +0 -499
  587. data/spec/lib/pact_broker/pacts/pact_publication_latest_verification_spec.rb +0 -29
  588. data/spec/lib/pact_broker/pacts/pact_publication_selector_dataset_module_spec.rb +0 -185
  589. data/spec/lib/pact_broker/pacts/pact_publication_spec.rb +0 -559
  590. data/spec/lib/pact_broker/pacts/pact_version_spec.rb +0 -343
  591. data/spec/lib/pact_broker/pacts/repository_find_for_currently_deployed_spec.rb +0 -124
  592. data/spec/lib/pact_broker/pacts/repository_find_for_currently_supported_releases_spec.rb +0 -159
  593. data/spec/lib/pact_broker/pacts/repository_find_for_verification_fallback_spec.rb +0 -87
  594. data/spec/lib/pact_broker/pacts/repository_find_for_verification_spec.rb +0 -380
  595. data/spec/lib/pact_broker/pacts/repository_find_wip_pact_versions_for_provider_branch_spec.rb +0 -282
  596. data/spec/lib/pact_broker/pacts/repository_find_wip_pact_versions_for_provider_spec.rb +0 -375
  597. data/spec/lib/pact_broker/pacts/repository_spec.rb +0 -1079
  598. data/spec/lib/pact_broker/pacts/selected_pact_spec.rb +0 -23
  599. data/spec/lib/pact_broker/pacts/selector_spec.rb +0 -77
  600. data/spec/lib/pact_broker/pacts/selectors_spec.rb +0 -30
  601. data/spec/lib/pact_broker/pacts/service_spec.rb +0 -355
  602. data/spec/lib/pact_broker/pacts/sort_content_spec.rb +0 -57
  603. data/spec/lib/pact_broker/pacts/squash_pacts_for_verification_spec.rb +0 -70
  604. data/spec/lib/pact_broker/pacts/verifiable_pact_messages_spec.rb +0 -253
  605. data/spec/lib/pact_broker/pacts/verifiable_pact_spec.rb +0 -0
  606. data/spec/lib/pact_broker/relationships/groupify_spec.rb +0 -43
  607. data/spec/lib/pact_broker/tags/repository_spec.rb +0 -144
  608. data/spec/lib/pact_broker/tags/service_spec.rb +0 -66
  609. data/spec/lib/pact_broker/ui/controllers/can_i_deploy_spec.rb +0 -26
  610. data/spec/lib/pact_broker/ui/controllers/clusters_spec.rb +0 -27
  611. data/spec/lib/pact_broker/ui/controllers/index_spec.rb +0 -132
  612. data/spec/lib/pact_broker/ui/view_models/index_item_spec.rb +0 -173
  613. data/spec/lib/pact_broker/ui/view_models/index_items_spec.rb +0 -35
  614. data/spec/lib/pact_broker/ui/view_models/matrix_deployed_version_spec.rb +0 -29
  615. data/spec/lib/pact_broker/ui/view_models/matrix_line_spec.rb +0 -41
  616. data/spec/lib/pact_broker/verifications/pseudo_branch_status_spec.rb +0 -56
  617. data/spec/lib/pact_broker/verifications/repository_spec.rb +0 -350
  618. data/spec/lib/pact_broker/verifications/sequence_spec.rb +0 -73
  619. data/spec/lib/pact_broker/verifications/service_spec.rb +0 -266
  620. data/spec/lib/pact_broker/verifications/summary_for_consumer_version_spec.rb +0 -72
  621. data/spec/lib/pact_broker/versions/abbreviate_number_spec.rb +0 -23
  622. data/spec/lib/pact_broker/versions/branch_service_spec.rb +0 -71
  623. data/spec/lib/pact_broker/versions/branch_version_repository_spec.rb +0 -81
  624. data/spec/lib/pact_broker/versions/branch_version_spec.rb +0 -27
  625. data/spec/lib/pact_broker/versions/parse_semantic_version_spec.rb +0 -42
  626. data/spec/lib/pact_broker/versions/repository_spec.rb +0 -302
  627. data/spec/lib/pact_broker/versions/service_spec.rb +0 -137
  628. data/spec/lib/pact_broker/webhooks/check_host_whitelist_spec.rb +0 -85
  629. data/spec/lib/pact_broker/webhooks/execution_configuration_spec.rb +0 -18
  630. data/spec/lib/pact_broker/webhooks/job_spec.rb +0 -188
  631. data/spec/lib/pact_broker/webhooks/pact_and_verification_parameters_spec.rb +0 -16
  632. data/spec/lib/pact_broker/webhooks/redact_logs_spec.rb +0 -60
  633. data/spec/lib/pact_broker/webhooks/render_spec.rb +0 -221
  634. data/spec/lib/pact_broker/webhooks/repository_spec.rb +0 -933
  635. data/spec/lib/pact_broker/webhooks/service_spec.rb +0 -184
  636. data/spec/lib/pact_broker/webhooks/status_spec.rb +0 -54
  637. data/spec/lib/pact_broker/webhooks/trigger_service_spec.rb +0 -461
  638. data/spec/lib/pact_broker/webhooks/triggered_webhook_spec.rb +0 -40
  639. data/spec/lib/pact_broker/webhooks/webhook_request_logger_spec.rb +0 -207
  640. data/spec/lib/pact_broker/webhooks/webhook_request_template_spec.rb +0 -227
  641. data/spec/lib/pact_broker/webhooks/webhook_spec.rb +0 -39
  642. data/spec/lib/rack/hal_browser/redirect_spec.rb +0 -63
  643. data/spec/lib/rack/pact_broker/add_pact_broker_version_header_spec.rb +0 -16
  644. data/spec/lib/rack/pact_broker/database_transaction_spec.rb +0 -77
  645. data/spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb +0 -50
  646. data/spec/lib/rack/pact_broker/request_target_spec.rb +0 -69
  647. data/spec/lib/rack/pact_broker/set_base_url_spec.rb +0 -86
  648. data/spec/lib/rack/pact_broker/use_when_spec.rb +0 -49
  649. data/spec/lib/sequel/plugins/insert_ignore_spec.rb +0 -82
  650. data/spec/lib/sequel/plugins/upsert_spec.rb +0 -159
  651. data/spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb +0 -49
  652. data/spec/migrations/20180201_create_head_matrix_spec.rb +0 -132
  653. data/spec/migrations/23_pact_versions_spec.rb +0 -77
  654. data/spec/migrations/24_populate_pact_contents_spec.rb +0 -22
  655. data/spec/migrations/34_latest_tagged_pacts_spec.rb +0 -84
  656. data/spec/migrations/34_pact_revisions_spec.rb +0 -82
  657. data/spec/migrations/41_migrate_execution_data_spec.rb +0 -109
  658. data/spec/migrations/42_delete_ophan_webhook_data_spec.rb +0 -98
  659. data/spec/migrations/44_add_provider_version_to_verification_spec.rb +0 -56
  660. data/spec/migrations/50_create_latest_matrix_spec.rb +0 -181
  661. data/spec/migrations/change_migration_strategy_spec.rb +0 -85
  662. data/spec/migrations/rollback_spec.rb +0 -8
  663. data/spec/service_consumers/hal_relation_proxy_app.rb +0 -61
  664. data/spec/service_consumers/pact_helper.rb +0 -61
  665. data/spec/service_consumers/provider_states_for_pact_broker_client.rb +0 -341
  666. data/spec/service_consumers/provider_states_for_pact_broker_client_2.rb +0 -36
  667. data/spec/service_consumers/provider_states_for_pact_ruby.rb +0 -158
  668. data/spec/spec_helper.rb +0 -65
  669. data/spec/support/approvals.rb +0 -55
  670. data/spec/support/database.rb +0 -9
  671. data/spec/support/database_cleaner.rb +0 -44
  672. data/spec/support/documentation.rb +0 -64
  673. data/spec/support/fixture_helpers.rb +0 -10
  674. data/spec/support/fixture_pact.rb +0 -34
  675. data/spec/support/foo-bar.json +0 -34
  676. data/spec/support/generated_index.md +0 -4
  677. data/spec/support/generated_markdown.md +0 -55
  678. data/spec/support/interaction_view_model.json +0 -63
  679. data/spec/support/interaction_view_model_with_terms.json +0 -50
  680. data/spec/support/logging.rb +0 -6
  681. data/spec/support/markdown_pact.json +0 -48
  682. data/spec/support/markdown_pact_v3.json +0 -44
  683. data/spec/support/markdown_pact_with_html.json +0 -27
  684. data/spec/support/markdown_pact_with_markdown_chars_in_names.json +0 -11
  685. data/spec/support/metadata_test_server.rb +0 -40
  686. data/spec/support/migration_helpers.rb +0 -16
  687. data/spec/support/rack_helpers.rb +0 -20
  688. data/spec/support/rspec_match_hash.rb +0 -26
  689. data/spec/support/rspec_matchers.rb +0 -9
  690. data/spec/support/shared_context.rb +0 -32
  691. data/spec/support/shared_examples_for_responses.rb +0 -96
  692. data/spec/support/simplecov.rb +0 -23
  693. data/spec/support/ssl_pact_broker_server.rb +0 -46
  694. data/spec/support/ssl_webhook_server.rb +0 -39
  695. data/spec/support/test_data_builder.rb +0 -3
  696. data/spec/support/verification_job.rb +0 -37
  697. data/spec/support/warning_silencer.rb +0 -10
  698. data/spec/support/webhook_endpoint_middleware.rb +0 -22
  699. data/tasks/audit.rake +0 -6
  700. data/tasks/database/annotate.rb +0 -48
  701. data/tasks/database/table_dependency_calculator.rb +0 -8
  702. data/tasks/database.rb +0 -161
  703. data/tasks/db.rake +0 -147
  704. data/tasks/development.rake +0 -52
  705. data/tasks/docker_database.rb +0 -26
  706. data/tasks/pact.rake +0 -16
  707. data/tasks/release.rake +0 -6
  708. data/tasks/rspec.rake +0 -32
  709. data/tasks/test_db.rake +0 -32
  710. data/vendor/hal-browser/.gitignore +0 -1
@@ -1,15 +1,17 @@
1
1
  /*!
2
- * Bootstrap v4.3.1 (https://getbootstrap.com/)
3
- * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
2
+ * Bootstrap v4.6.1 (https://getbootstrap.com/)
3
+ * Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
5
  */
6
6
  (function (global, factory) {
7
7
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('jquery')) :
8
8
  typeof define === 'function' && define.amd ? define(['exports', 'jquery'], factory) :
9
- (global = global || self, factory(global.bootstrap = {}, global.jQuery));
10
- }(this, function (exports, $) { 'use strict';
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.bootstrap = {}, global.jQuery));
10
+ })(this, (function (exports, $) { 'use strict';
11
11
 
12
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
12
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
+
14
+ var $__default = /*#__PURE__*/_interopDefaultLegacy($);
13
15
 
14
16
  function _defineProperties(target, props) {
15
17
  for (var i = 0; i < props.length; i++) {
@@ -27,56 +29,48 @@
27
29
  return Constructor;
28
30
  }
29
31
 
30
- function _defineProperty(obj, key, value) {
31
- if (key in obj) {
32
- Object.defineProperty(obj, key, {
33
- value: value,
34
- enumerable: true,
35
- configurable: true,
36
- writable: true
37
- });
38
- } else {
39
- obj[key] = value;
40
- }
41
-
42
- return obj;
43
- }
44
-
45
- function _objectSpread(target) {
46
- for (var i = 1; i < arguments.length; i++) {
47
- var source = arguments[i] != null ? arguments[i] : {};
48
- var ownKeys = Object.keys(source);
32
+ function _extends$1() {
33
+ _extends$1 = Object.assign || function (target) {
34
+ for (var i = 1; i < arguments.length; i++) {
35
+ var source = arguments[i];
49
36
 
50
- if (typeof Object.getOwnPropertySymbols === 'function') {
51
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
52
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
53
- }));
37
+ for (var key in source) {
38
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
39
+ target[key] = source[key];
40
+ }
41
+ }
54
42
  }
55
43
 
56
- ownKeys.forEach(function (key) {
57
- _defineProperty(target, key, source[key]);
58
- });
59
- }
44
+ return target;
45
+ };
60
46
 
61
- return target;
47
+ return _extends$1.apply(this, arguments);
62
48
  }
63
49
 
64
50
  function _inheritsLoose(subClass, superClass) {
65
51
  subClass.prototype = Object.create(superClass.prototype);
66
52
  subClass.prototype.constructor = subClass;
67
- subClass.__proto__ = superClass;
53
+
54
+ _setPrototypeOf(subClass, superClass);
55
+ }
56
+
57
+ function _setPrototypeOf(o, p) {
58
+ _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
59
+ o.__proto__ = p;
60
+ return o;
61
+ };
62
+
63
+ return _setPrototypeOf(o, p);
68
64
  }
69
65
 
70
66
  /**
71
67
  * --------------------------------------------------------------------------
72
- * Bootstrap (v4.3.1): util.js
73
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
68
+ * Bootstrap (v4.6.1): util.js
69
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
74
70
  * --------------------------------------------------------------------------
75
71
  */
76
72
  /**
77
- * ------------------------------------------------------------------------
78
73
  * Private TransitionEnd Helpers
79
- * ------------------------------------------------------------------------
80
74
  */
81
75
 
82
76
  var TRANSITION_END = 'transitionend';
@@ -84,6 +78,10 @@
84
78
  var MILLISECONDS_MULTIPLIER = 1000; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
85
79
 
86
80
  function toType(obj) {
81
+ if (obj === null || typeof obj === 'undefined') {
82
+ return "" + obj;
83
+ }
84
+
87
85
  return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase();
88
86
  }
89
87
 
@@ -92,11 +90,11 @@
92
90
  bindType: TRANSITION_END,
93
91
  delegateType: TRANSITION_END,
94
92
  handle: function handle(event) {
95
- if ($(event.target).is(this)) {
93
+ if ($__default["default"](event.target).is(this)) {
96
94
  return event.handleObj.handler.apply(this, arguments); // eslint-disable-line prefer-rest-params
97
95
  }
98
96
 
99
- return undefined; // eslint-disable-line no-undefined
97
+ return undefined;
100
98
  }
101
99
  };
102
100
  }
@@ -105,7 +103,7 @@
105
103
  var _this = this;
106
104
 
107
105
  var called = false;
108
- $(this).one(Util.TRANSITION_END, function () {
106
+ $__default["default"](this).one(Util.TRANSITION_END, function () {
109
107
  called = true;
110
108
  });
111
109
  setTimeout(function () {
@@ -117,13 +115,11 @@
117
115
  }
118
116
 
119
117
  function setTransitionEndSupport() {
120
- $.fn.emulateTransitionEnd = transitionEndEmulator;
121
- $.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent();
118
+ $__default["default"].fn.emulateTransitionEnd = transitionEndEmulator;
119
+ $__default["default"].event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent();
122
120
  }
123
121
  /**
124
- * --------------------------------------------------------------------------
125
- * Public Util Api
126
- * --------------------------------------------------------------------------
122
+ * Public Util API
127
123
  */
128
124
 
129
125
 
@@ -147,7 +143,7 @@
147
143
 
148
144
  try {
149
145
  return document.querySelector(selector) ? selector : null;
150
- } catch (err) {
146
+ } catch (_) {
151
147
  return null;
152
148
  }
153
149
  },
@@ -157,8 +153,8 @@
157
153
  } // Get transition-duration of the element
158
154
 
159
155
 
160
- var transitionDuration = $(element).css('transition-duration');
161
- var transitionDelay = $(element).css('transition-delay');
156
+ var transitionDuration = $__default["default"](element).css('transition-duration');
157
+ var transitionDelay = $__default["default"](element).css('transition-delay');
162
158
  var floatTransitionDuration = parseFloat(transitionDuration);
163
159
  var floatTransitionDelay = parseFloat(transitionDelay); // Return 0 if element or transition duration is not found
164
160
 
@@ -175,9 +171,8 @@
175
171
  return element.offsetHeight;
176
172
  },
177
173
  triggerTransitionEnd: function triggerTransitionEnd(element) {
178
- $(element).trigger(TRANSITION_END);
174
+ $__default["default"](element).trigger(TRANSITION_END);
179
175
  },
180
- // TODO: Remove in v5
181
176
  supportsTransitionEnd: function supportsTransitionEnd() {
182
177
  return Boolean(TRANSITION_END);
183
178
  },
@@ -218,45 +213,49 @@
218
213
  }
219
214
 
220
215
  return Util.findShadowRoot(element.parentNode);
216
+ },
217
+ jQueryDetection: function jQueryDetection() {
218
+ if (typeof $__default["default"] === 'undefined') {
219
+ throw new TypeError('Bootstrap\'s JavaScript requires jQuery. jQuery must be included before Bootstrap\'s JavaScript.');
220
+ }
221
+
222
+ var version = $__default["default"].fn.jquery.split(' ')[0].split('.');
223
+ var minMajor = 1;
224
+ var ltMajor = 2;
225
+ var minMinor = 9;
226
+ var minPatch = 1;
227
+ var maxMajor = 4;
228
+
229
+ if (version[0] < ltMajor && version[1] < minMinor || version[0] === minMajor && version[1] === minMinor && version[2] < minPatch || version[0] >= maxMajor) {
230
+ throw new Error('Bootstrap\'s JavaScript requires at least jQuery v1.9.1 but less than v4.0.0');
231
+ }
221
232
  }
222
233
  };
234
+ Util.jQueryDetection();
223
235
  setTransitionEndSupport();
224
236
 
225
237
  /**
226
- * ------------------------------------------------------------------------
227
238
  * Constants
228
- * ------------------------------------------------------------------------
229
239
  */
230
240
 
231
- var NAME = 'alert';
232
- var VERSION = '4.3.1';
233
- var DATA_KEY = 'bs.alert';
234
- var EVENT_KEY = "." + DATA_KEY;
235
- var DATA_API_KEY = '.data-api';
236
- var JQUERY_NO_CONFLICT = $.fn[NAME];
237
- var Selector = {
238
- DISMISS: '[data-dismiss="alert"]'
239
- };
240
- var Event = {
241
- CLOSE: "close" + EVENT_KEY,
242
- CLOSED: "closed" + EVENT_KEY,
243
- CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
244
- };
245
- var ClassName = {
246
- ALERT: 'alert',
247
- FADE: 'fade',
248
- SHOW: 'show'
249
- /**
250
- * ------------------------------------------------------------------------
251
- * Class Definition
252
- * ------------------------------------------------------------------------
253
- */
254
-
255
- };
241
+ var NAME$a = 'alert';
242
+ var VERSION$a = '4.6.1';
243
+ var DATA_KEY$a = 'bs.alert';
244
+ var EVENT_KEY$a = "." + DATA_KEY$a;
245
+ var DATA_API_KEY$7 = '.data-api';
246
+ var JQUERY_NO_CONFLICT$a = $__default["default"].fn[NAME$a];
247
+ var CLASS_NAME_ALERT = 'alert';
248
+ var CLASS_NAME_FADE$5 = 'fade';
249
+ var CLASS_NAME_SHOW$7 = 'show';
250
+ var EVENT_CLOSE = "close" + EVENT_KEY$a;
251
+ var EVENT_CLOSED = "closed" + EVENT_KEY$a;
252
+ var EVENT_CLICK_DATA_API$6 = "click" + EVENT_KEY$a + DATA_API_KEY$7;
253
+ var SELECTOR_DISMISS = '[data-dismiss="alert"]';
254
+ /**
255
+ * Class definition
256
+ */
256
257
 
257
- var Alert =
258
- /*#__PURE__*/
259
- function () {
258
+ var Alert = /*#__PURE__*/function () {
260
259
  function Alert(element) {
261
260
  this._element = element;
262
261
  } // Getters
@@ -282,7 +281,7 @@
282
281
  };
283
282
 
284
283
  _proto.dispose = function dispose() {
285
- $.removeData(this._element, DATA_KEY);
284
+ $__default["default"].removeData(this._element, DATA_KEY$a);
286
285
  this._element = null;
287
286
  } // Private
288
287
  ;
@@ -296,48 +295,48 @@
296
295
  }
297
296
 
298
297
  if (!parent) {
299
- parent = $(element).closest("." + ClassName.ALERT)[0];
298
+ parent = $__default["default"](element).closest("." + CLASS_NAME_ALERT)[0];
300
299
  }
301
300
 
302
301
  return parent;
303
302
  };
304
303
 
305
304
  _proto._triggerCloseEvent = function _triggerCloseEvent(element) {
306
- var closeEvent = $.Event(Event.CLOSE);
307
- $(element).trigger(closeEvent);
305
+ var closeEvent = $__default["default"].Event(EVENT_CLOSE);
306
+ $__default["default"](element).trigger(closeEvent);
308
307
  return closeEvent;
309
308
  };
310
309
 
311
310
  _proto._removeElement = function _removeElement(element) {
312
311
  var _this = this;
313
312
 
314
- $(element).removeClass(ClassName.SHOW);
313
+ $__default["default"](element).removeClass(CLASS_NAME_SHOW$7);
315
314
 
316
- if (!$(element).hasClass(ClassName.FADE)) {
315
+ if (!$__default["default"](element).hasClass(CLASS_NAME_FADE$5)) {
317
316
  this._destroyElement(element);
318
317
 
319
318
  return;
320
319
  }
321
320
 
322
321
  var transitionDuration = Util.getTransitionDurationFromElement(element);
323
- $(element).one(Util.TRANSITION_END, function (event) {
322
+ $__default["default"](element).one(Util.TRANSITION_END, function (event) {
324
323
  return _this._destroyElement(element, event);
325
324
  }).emulateTransitionEnd(transitionDuration);
326
325
  };
327
326
 
328
327
  _proto._destroyElement = function _destroyElement(element) {
329
- $(element).detach().trigger(Event.CLOSED).remove();
328
+ $__default["default"](element).detach().trigger(EVENT_CLOSED).remove();
330
329
  } // Static
331
330
  ;
332
331
 
333
332
  Alert._jQueryInterface = function _jQueryInterface(config) {
334
333
  return this.each(function () {
335
- var $element = $(this);
336
- var data = $element.data(DATA_KEY);
334
+ var $element = $__default["default"](this);
335
+ var data = $element.data(DATA_KEY$a);
337
336
 
338
337
  if (!data) {
339
338
  data = new Alert(this);
340
- $element.data(DATA_KEY, data);
339
+ $element.data(DATA_KEY$a, data);
341
340
  }
342
341
 
343
342
  if (config === 'close') {
@@ -359,74 +358,61 @@
359
358
  _createClass(Alert, null, [{
360
359
  key: "VERSION",
361
360
  get: function get() {
362
- return VERSION;
361
+ return VERSION$a;
363
362
  }
364
363
  }]);
365
364
 
366
365
  return Alert;
367
366
  }();
368
367
  /**
369
- * ------------------------------------------------------------------------
370
- * Data Api implementation
371
- * ------------------------------------------------------------------------
368
+ * Data API implementation
372
369
  */
373
370
 
374
371
 
375
- $(document).on(Event.CLICK_DATA_API, Selector.DISMISS, Alert._handleDismiss(new Alert()));
372
+ $__default["default"](document).on(EVENT_CLICK_DATA_API$6, SELECTOR_DISMISS, Alert._handleDismiss(new Alert()));
376
373
  /**
377
- * ------------------------------------------------------------------------
378
374
  * jQuery
379
- * ------------------------------------------------------------------------
380
375
  */
381
376
 
382
- $.fn[NAME] = Alert._jQueryInterface;
383
- $.fn[NAME].Constructor = Alert;
377
+ $__default["default"].fn[NAME$a] = Alert._jQueryInterface;
378
+ $__default["default"].fn[NAME$a].Constructor = Alert;
384
379
 
385
- $.fn[NAME].noConflict = function () {
386
- $.fn[NAME] = JQUERY_NO_CONFLICT;
380
+ $__default["default"].fn[NAME$a].noConflict = function () {
381
+ $__default["default"].fn[NAME$a] = JQUERY_NO_CONFLICT$a;
387
382
  return Alert._jQueryInterface;
388
383
  };
389
384
 
390
385
  /**
391
- * ------------------------------------------------------------------------
392
386
  * Constants
393
- * ------------------------------------------------------------------------
394
387
  */
395
388
 
396
- var NAME$1 = 'button';
397
- var VERSION$1 = '4.3.1';
398
- var DATA_KEY$1 = 'bs.button';
399
- var EVENT_KEY$1 = "." + DATA_KEY$1;
400
- var DATA_API_KEY$1 = '.data-api';
401
- var JQUERY_NO_CONFLICT$1 = $.fn[NAME$1];
402
- var ClassName$1 = {
403
- ACTIVE: 'active',
404
- BUTTON: 'btn',
405
- FOCUS: 'focus'
406
- };
407
- var Selector$1 = {
408
- DATA_TOGGLE_CARROT: '[data-toggle^="button"]',
409
- DATA_TOGGLE: '[data-toggle="buttons"]',
410
- INPUT: 'input:not([type="hidden"])',
411
- ACTIVE: '.active',
412
- BUTTON: '.btn'
413
- };
414
- var Event$1 = {
415
- CLICK_DATA_API: "click" + EVENT_KEY$1 + DATA_API_KEY$1,
416
- FOCUS_BLUR_DATA_API: "focus" + EVENT_KEY$1 + DATA_API_KEY$1 + " " + ("blur" + EVENT_KEY$1 + DATA_API_KEY$1)
417
- /**
418
- * ------------------------------------------------------------------------
419
- * Class Definition
420
- * ------------------------------------------------------------------------
421
- */
422
-
423
- };
389
+ var NAME$9 = 'button';
390
+ var VERSION$9 = '4.6.1';
391
+ var DATA_KEY$9 = 'bs.button';
392
+ var EVENT_KEY$9 = "." + DATA_KEY$9;
393
+ var DATA_API_KEY$6 = '.data-api';
394
+ var JQUERY_NO_CONFLICT$9 = $__default["default"].fn[NAME$9];
395
+ var CLASS_NAME_ACTIVE$3 = 'active';
396
+ var CLASS_NAME_BUTTON = 'btn';
397
+ var CLASS_NAME_FOCUS = 'focus';
398
+ var EVENT_CLICK_DATA_API$5 = "click" + EVENT_KEY$9 + DATA_API_KEY$6;
399
+ var EVENT_FOCUS_BLUR_DATA_API = "focus" + EVENT_KEY$9 + DATA_API_KEY$6 + " " + ("blur" + EVENT_KEY$9 + DATA_API_KEY$6);
400
+ var EVENT_LOAD_DATA_API$2 = "load" + EVENT_KEY$9 + DATA_API_KEY$6;
401
+ var SELECTOR_DATA_TOGGLE_CARROT = '[data-toggle^="button"]';
402
+ var SELECTOR_DATA_TOGGLES = '[data-toggle="buttons"]';
403
+ var SELECTOR_DATA_TOGGLE$4 = '[data-toggle="button"]';
404
+ var SELECTOR_DATA_TOGGLES_BUTTONS = '[data-toggle="buttons"] .btn';
405
+ var SELECTOR_INPUT = 'input:not([type="hidden"])';
406
+ var SELECTOR_ACTIVE$2 = '.active';
407
+ var SELECTOR_BUTTON = '.btn';
408
+ /**
409
+ * Class definition
410
+ */
424
411
 
425
- var Button =
426
- /*#__PURE__*/
427
- function () {
412
+ var Button = /*#__PURE__*/function () {
428
413
  function Button(element) {
429
414
  this._element = element;
415
+ this.shouldAvoidTriggerChange = false;
430
416
  } // Getters
431
417
 
432
418
 
@@ -436,31 +422,33 @@
436
422
  _proto.toggle = function toggle() {
437
423
  var triggerChangeEvent = true;
438
424
  var addAriaPressed = true;
439
- var rootElement = $(this._element).closest(Selector$1.DATA_TOGGLE)[0];
425
+ var rootElement = $__default["default"](this._element).closest(SELECTOR_DATA_TOGGLES)[0];
440
426
 
441
427
  if (rootElement) {
442
- var input = this._element.querySelector(Selector$1.INPUT);
428
+ var input = this._element.querySelector(SELECTOR_INPUT);
443
429
 
444
430
  if (input) {
445
431
  if (input.type === 'radio') {
446
- if (input.checked && this._element.classList.contains(ClassName$1.ACTIVE)) {
432
+ if (input.checked && this._element.classList.contains(CLASS_NAME_ACTIVE$3)) {
447
433
  triggerChangeEvent = false;
448
434
  } else {
449
- var activeElement = rootElement.querySelector(Selector$1.ACTIVE);
435
+ var activeElement = rootElement.querySelector(SELECTOR_ACTIVE$2);
450
436
 
451
437
  if (activeElement) {
452
- $(activeElement).removeClass(ClassName$1.ACTIVE);
438
+ $__default["default"](activeElement).removeClass(CLASS_NAME_ACTIVE$3);
453
439
  }
454
440
  }
455
441
  }
456
442
 
457
443
  if (triggerChangeEvent) {
458
- if (input.hasAttribute('disabled') || rootElement.hasAttribute('disabled') || input.classList.contains('disabled') || rootElement.classList.contains('disabled')) {
459
- return;
444
+ // if it's not a radio button or checkbox don't add a pointless/invalid checked property to the input
445
+ if (input.type === 'checkbox' || input.type === 'radio') {
446
+ input.checked = !this._element.classList.contains(CLASS_NAME_ACTIVE$3);
460
447
  }
461
448
 
462
- input.checked = !this._element.classList.contains(ClassName$1.ACTIVE);
463
- $(input).trigger('change');
449
+ if (!this.shouldAvoidTriggerChange) {
450
+ $__default["default"](input).trigger('change');
451
+ }
464
452
  }
465
453
 
466
454
  input.focus();
@@ -468,30 +456,35 @@
468
456
  }
469
457
  }
470
458
 
471
- if (addAriaPressed) {
472
- this._element.setAttribute('aria-pressed', !this._element.classList.contains(ClassName$1.ACTIVE));
473
- }
459
+ if (!(this._element.hasAttribute('disabled') || this._element.classList.contains('disabled'))) {
460
+ if (addAriaPressed) {
461
+ this._element.setAttribute('aria-pressed', !this._element.classList.contains(CLASS_NAME_ACTIVE$3));
462
+ }
474
463
 
475
- if (triggerChangeEvent) {
476
- $(this._element).toggleClass(ClassName$1.ACTIVE);
464
+ if (triggerChangeEvent) {
465
+ $__default["default"](this._element).toggleClass(CLASS_NAME_ACTIVE$3);
466
+ }
477
467
  }
478
468
  };
479
469
 
480
470
  _proto.dispose = function dispose() {
481
- $.removeData(this._element, DATA_KEY$1);
471
+ $__default["default"].removeData(this._element, DATA_KEY$9);
482
472
  this._element = null;
483
473
  } // Static
484
474
  ;
485
475
 
486
- Button._jQueryInterface = function _jQueryInterface(config) {
476
+ Button._jQueryInterface = function _jQueryInterface(config, avoidTriggerChange) {
487
477
  return this.each(function () {
488
- var data = $(this).data(DATA_KEY$1);
478
+ var $element = $__default["default"](this);
479
+ var data = $element.data(DATA_KEY$9);
489
480
 
490
481
  if (!data) {
491
482
  data = new Button(this);
492
- $(this).data(DATA_KEY$1, data);
483
+ $element.data(DATA_KEY$9, data);
493
484
  }
494
485
 
486
+ data.shouldAvoidTriggerChange = avoidTriggerChange;
487
+
495
488
  if (config === 'toggle') {
496
489
  data[config]();
497
490
  }
@@ -501,58 +494,95 @@
501
494
  _createClass(Button, null, [{
502
495
  key: "VERSION",
503
496
  get: function get() {
504
- return VERSION$1;
497
+ return VERSION$9;
505
498
  }
506
499
  }]);
507
500
 
508
501
  return Button;
509
502
  }();
510
503
  /**
511
- * ------------------------------------------------------------------------
512
- * Data Api implementation
513
- * ------------------------------------------------------------------------
504
+ * Data API implementation
514
505
  */
515
506
 
516
507
 
517
- $(document).on(Event$1.CLICK_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) {
518
- event.preventDefault();
508
+ $__default["default"](document).on(EVENT_CLICK_DATA_API$5, SELECTOR_DATA_TOGGLE_CARROT, function (event) {
519
509
  var button = event.target;
510
+ var initialButton = button;
511
+
512
+ if (!$__default["default"](button).hasClass(CLASS_NAME_BUTTON)) {
513
+ button = $__default["default"](button).closest(SELECTOR_BUTTON)[0];
514
+ }
515
+
516
+ if (!button || button.hasAttribute('disabled') || button.classList.contains('disabled')) {
517
+ event.preventDefault(); // work around Firefox bug #1540995
518
+ } else {
519
+ var inputBtn = button.querySelector(SELECTOR_INPUT);
520
520
 
521
- if (!$(button).hasClass(ClassName$1.BUTTON)) {
522
- button = $(button).closest(Selector$1.BUTTON);
521
+ if (inputBtn && (inputBtn.hasAttribute('disabled') || inputBtn.classList.contains('disabled'))) {
522
+ event.preventDefault(); // work around Firefox bug #1540995
523
+
524
+ return;
525
+ }
526
+
527
+ if (initialButton.tagName === 'INPUT' || button.tagName !== 'LABEL') {
528
+ Button._jQueryInterface.call($__default["default"](button), 'toggle', initialButton.tagName === 'INPUT');
529
+ }
523
530
  }
531
+ }).on(EVENT_FOCUS_BLUR_DATA_API, SELECTOR_DATA_TOGGLE_CARROT, function (event) {
532
+ var button = $__default["default"](event.target).closest(SELECTOR_BUTTON)[0];
533
+ $__default["default"](button).toggleClass(CLASS_NAME_FOCUS, /^focus(in)?$/.test(event.type));
534
+ });
535
+ $__default["default"](window).on(EVENT_LOAD_DATA_API$2, function () {
536
+ // ensure correct active class is set to match the controls' actual values/states
537
+ // find all checkboxes/readio buttons inside data-toggle groups
538
+ var buttons = [].slice.call(document.querySelectorAll(SELECTOR_DATA_TOGGLES_BUTTONS));
539
+
540
+ for (var i = 0, len = buttons.length; i < len; i++) {
541
+ var button = buttons[i];
542
+ var input = button.querySelector(SELECTOR_INPUT);
543
+
544
+ if (input.checked || input.hasAttribute('checked')) {
545
+ button.classList.add(CLASS_NAME_ACTIVE$3);
546
+ } else {
547
+ button.classList.remove(CLASS_NAME_ACTIVE$3);
548
+ }
549
+ } // find all button toggles
550
+
551
+
552
+ buttons = [].slice.call(document.querySelectorAll(SELECTOR_DATA_TOGGLE$4));
524
553
 
525
- Button._jQueryInterface.call($(button), 'toggle');
526
- }).on(Event$1.FOCUS_BLUR_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) {
527
- var button = $(event.target).closest(Selector$1.BUTTON)[0];
528
- $(button).toggleClass(ClassName$1.FOCUS, /^focus(in)?$/.test(event.type));
554
+ for (var _i = 0, _len = buttons.length; _i < _len; _i++) {
555
+ var _button = buttons[_i];
556
+
557
+ if (_button.getAttribute('aria-pressed') === 'true') {
558
+ _button.classList.add(CLASS_NAME_ACTIVE$3);
559
+ } else {
560
+ _button.classList.remove(CLASS_NAME_ACTIVE$3);
561
+ }
562
+ }
529
563
  });
530
564
  /**
531
- * ------------------------------------------------------------------------
532
565
  * jQuery
533
- * ------------------------------------------------------------------------
534
566
  */
535
567
 
536
- $.fn[NAME$1] = Button._jQueryInterface;
537
- $.fn[NAME$1].Constructor = Button;
568
+ $__default["default"].fn[NAME$9] = Button._jQueryInterface;
569
+ $__default["default"].fn[NAME$9].Constructor = Button;
538
570
 
539
- $.fn[NAME$1].noConflict = function () {
540
- $.fn[NAME$1] = JQUERY_NO_CONFLICT$1;
571
+ $__default["default"].fn[NAME$9].noConflict = function () {
572
+ $__default["default"].fn[NAME$9] = JQUERY_NO_CONFLICT$9;
541
573
  return Button._jQueryInterface;
542
574
  };
543
575
 
544
576
  /**
545
- * ------------------------------------------------------------------------
546
577
  * Constants
547
- * ------------------------------------------------------------------------
548
578
  */
549
579
 
550
- var NAME$2 = 'carousel';
551
- var VERSION$2 = '4.3.1';
552
- var DATA_KEY$2 = 'bs.carousel';
553
- var EVENT_KEY$2 = "." + DATA_KEY$2;
554
- var DATA_API_KEY$2 = '.data-api';
555
- var JQUERY_NO_CONFLICT$2 = $.fn[NAME$2];
580
+ var NAME$8 = 'carousel';
581
+ var VERSION$8 = '4.6.1';
582
+ var DATA_KEY$8 = 'bs.carousel';
583
+ var EVENT_KEY$8 = "." + DATA_KEY$8;
584
+ var DATA_API_KEY$5 = '.data-api';
585
+ var JQUERY_NO_CONFLICT$8 = $__default["default"].fn[NAME$8];
556
586
  var ARROW_LEFT_KEYCODE = 37; // KeyboardEvent.which value for left arrow key
557
587
 
558
588
  var ARROW_RIGHT_KEYCODE = 39; // KeyboardEvent.which value for right arrow key
@@ -560,7 +590,40 @@
560
590
  var TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch
561
591
 
562
592
  var SWIPE_THRESHOLD = 40;
563
- var Default = {
593
+ var CLASS_NAME_CAROUSEL = 'carousel';
594
+ var CLASS_NAME_ACTIVE$2 = 'active';
595
+ var CLASS_NAME_SLIDE = 'slide';
596
+ var CLASS_NAME_RIGHT = 'carousel-item-right';
597
+ var CLASS_NAME_LEFT = 'carousel-item-left';
598
+ var CLASS_NAME_NEXT = 'carousel-item-next';
599
+ var CLASS_NAME_PREV = 'carousel-item-prev';
600
+ var CLASS_NAME_POINTER_EVENT = 'pointer-event';
601
+ var DIRECTION_NEXT = 'next';
602
+ var DIRECTION_PREV = 'prev';
603
+ var DIRECTION_LEFT = 'left';
604
+ var DIRECTION_RIGHT = 'right';
605
+ var EVENT_SLIDE = "slide" + EVENT_KEY$8;
606
+ var EVENT_SLID = "slid" + EVENT_KEY$8;
607
+ var EVENT_KEYDOWN = "keydown" + EVENT_KEY$8;
608
+ var EVENT_MOUSEENTER = "mouseenter" + EVENT_KEY$8;
609
+ var EVENT_MOUSELEAVE = "mouseleave" + EVENT_KEY$8;
610
+ var EVENT_TOUCHSTART = "touchstart" + EVENT_KEY$8;
611
+ var EVENT_TOUCHMOVE = "touchmove" + EVENT_KEY$8;
612
+ var EVENT_TOUCHEND = "touchend" + EVENT_KEY$8;
613
+ var EVENT_POINTERDOWN = "pointerdown" + EVENT_KEY$8;
614
+ var EVENT_POINTERUP = "pointerup" + EVENT_KEY$8;
615
+ var EVENT_DRAG_START = "dragstart" + EVENT_KEY$8;
616
+ var EVENT_LOAD_DATA_API$1 = "load" + EVENT_KEY$8 + DATA_API_KEY$5;
617
+ var EVENT_CLICK_DATA_API$4 = "click" + EVENT_KEY$8 + DATA_API_KEY$5;
618
+ var SELECTOR_ACTIVE$1 = '.active';
619
+ var SELECTOR_ACTIVE_ITEM = '.active.carousel-item';
620
+ var SELECTOR_ITEM = '.carousel-item';
621
+ var SELECTOR_ITEM_IMG = '.carousel-item img';
622
+ var SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev';
623
+ var SELECTOR_INDICATORS = '.carousel-indicators';
624
+ var SELECTOR_DATA_SLIDE = '[data-slide], [data-slide-to]';
625
+ var SELECTOR_DATA_RIDE = '[data-ride="carousel"]';
626
+ var Default$7 = {
564
627
  interval: 5000,
565
628
  keyboard: true,
566
629
  slide: false,
@@ -568,7 +631,7 @@
568
631
  wrap: true,
569
632
  touch: true
570
633
  };
571
- var DefaultType = {
634
+ var DefaultType$7 = {
572
635
  interval: '(number|boolean)',
573
636
  keyboard: 'boolean',
574
637
  slide: '(boolean|string)',
@@ -576,62 +639,15 @@
576
639
  wrap: 'boolean',
577
640
  touch: 'boolean'
578
641
  };
579
- var Direction = {
580
- NEXT: 'next',
581
- PREV: 'prev',
582
- LEFT: 'left',
583
- RIGHT: 'right'
584
- };
585
- var Event$2 = {
586
- SLIDE: "slide" + EVENT_KEY$2,
587
- SLID: "slid" + EVENT_KEY$2,
588
- KEYDOWN: "keydown" + EVENT_KEY$2,
589
- MOUSEENTER: "mouseenter" + EVENT_KEY$2,
590
- MOUSELEAVE: "mouseleave" + EVENT_KEY$2,
591
- TOUCHSTART: "touchstart" + EVENT_KEY$2,
592
- TOUCHMOVE: "touchmove" + EVENT_KEY$2,
593
- TOUCHEND: "touchend" + EVENT_KEY$2,
594
- POINTERDOWN: "pointerdown" + EVENT_KEY$2,
595
- POINTERUP: "pointerup" + EVENT_KEY$2,
596
- DRAG_START: "dragstart" + EVENT_KEY$2,
597
- LOAD_DATA_API: "load" + EVENT_KEY$2 + DATA_API_KEY$2,
598
- CLICK_DATA_API: "click" + EVENT_KEY$2 + DATA_API_KEY$2
599
- };
600
- var ClassName$2 = {
601
- CAROUSEL: 'carousel',
602
- ACTIVE: 'active',
603
- SLIDE: 'slide',
604
- RIGHT: 'carousel-item-right',
605
- LEFT: 'carousel-item-left',
606
- NEXT: 'carousel-item-next',
607
- PREV: 'carousel-item-prev',
608
- ITEM: 'carousel-item',
609
- POINTER_EVENT: 'pointer-event'
610
- };
611
- var Selector$2 = {
612
- ACTIVE: '.active',
613
- ACTIVE_ITEM: '.active.carousel-item',
614
- ITEM: '.carousel-item',
615
- ITEM_IMG: '.carousel-item img',
616
- NEXT_PREV: '.carousel-item-next, .carousel-item-prev',
617
- INDICATORS: '.carousel-indicators',
618
- DATA_SLIDE: '[data-slide], [data-slide-to]',
619
- DATA_RIDE: '[data-ride="carousel"]'
620
- };
621
642
  var PointerType = {
622
643
  TOUCH: 'touch',
623
644
  PEN: 'pen'
624
- /**
625
- * ------------------------------------------------------------------------
626
- * Class Definition
627
- * ------------------------------------------------------------------------
628
- */
629
-
630
645
  };
646
+ /**
647
+ * Class definition
648
+ */
631
649
 
632
- var Carousel =
633
- /*#__PURE__*/
634
- function () {
650
+ var Carousel = /*#__PURE__*/function () {
635
651
  function Carousel(element, config) {
636
652
  this._items = null;
637
653
  this._interval = null;
@@ -643,7 +659,7 @@
643
659
  this.touchDeltaX = 0;
644
660
  this._config = this._getConfig(config);
645
661
  this._element = element;
646
- this._indicatorsElement = this._element.querySelector(Selector$2.INDICATORS);
662
+ this._indicatorsElement = this._element.querySelector(SELECTOR_INDICATORS);
647
663
  this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0;
648
664
  this._pointerEvent = Boolean(window.PointerEvent || window.MSPointerEvent);
649
665
 
@@ -656,21 +672,22 @@
656
672
  // Public
657
673
  _proto.next = function next() {
658
674
  if (!this._isSliding) {
659
- this._slide(Direction.NEXT);
675
+ this._slide(DIRECTION_NEXT);
660
676
  }
661
677
  };
662
678
 
663
679
  _proto.nextWhenVisible = function nextWhenVisible() {
664
- // Don't call next when the page isn't visible
680
+ var $element = $__default["default"](this._element); // Don't call next when the page isn't visible
665
681
  // or the carousel or its parent isn't visible
666
- if (!document.hidden && $(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden') {
682
+
683
+ if (!document.hidden && $element.is(':visible') && $element.css('visibility') !== 'hidden') {
667
684
  this.next();
668
685
  }
669
686
  };
670
687
 
671
688
  _proto.prev = function prev() {
672
689
  if (!this._isSliding) {
673
- this._slide(Direction.PREV);
690
+ this._slide(DIRECTION_PREV);
674
691
  }
675
692
  };
676
693
 
@@ -679,7 +696,7 @@
679
696
  this._isPaused = true;
680
697
  }
681
698
 
682
- if (this._element.querySelector(Selector$2.NEXT_PREV)) {
699
+ if (this._element.querySelector(SELECTOR_NEXT_PREV)) {
683
700
  Util.triggerTransitionEnd(this._element);
684
701
  this.cycle(true);
685
702
  }
@@ -699,6 +716,8 @@
699
716
  }
700
717
 
701
718
  if (this._config.interval && !this._isPaused) {
719
+ this._updateInterval();
720
+
702
721
  this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval);
703
722
  }
704
723
  };
@@ -706,7 +725,7 @@
706
725
  _proto.to = function to(index) {
707
726
  var _this = this;
708
727
 
709
- this._activeElement = this._element.querySelector(Selector$2.ACTIVE_ITEM);
728
+ this._activeElement = this._element.querySelector(SELECTOR_ACTIVE_ITEM);
710
729
 
711
730
  var activeIndex = this._getItemIndex(this._activeElement);
712
731
 
@@ -715,7 +734,7 @@
715
734
  }
716
735
 
717
736
  if (this._isSliding) {
718
- $(this._element).one(Event$2.SLID, function () {
737
+ $__default["default"](this._element).one(EVENT_SLID, function () {
719
738
  return _this.to(index);
720
739
  });
721
740
  return;
@@ -727,14 +746,14 @@
727
746
  return;
728
747
  }
729
748
 
730
- var direction = index > activeIndex ? Direction.NEXT : Direction.PREV;
749
+ var direction = index > activeIndex ? DIRECTION_NEXT : DIRECTION_PREV;
731
750
 
732
751
  this._slide(direction, this._items[index]);
733
752
  };
734
753
 
735
754
  _proto.dispose = function dispose() {
736
- $(this._element).off(EVENT_KEY$2);
737
- $.removeData(this._element, DATA_KEY$2);
755
+ $__default["default"](this._element).off(EVENT_KEY$8);
756
+ $__default["default"].removeData(this._element, DATA_KEY$8);
738
757
  this._items = null;
739
758
  this._config = null;
740
759
  this._element = null;
@@ -747,8 +766,8 @@
747
766
  ;
748
767
 
749
768
  _proto._getConfig = function _getConfig(config) {
750
- config = _objectSpread({}, Default, config);
751
- Util.typeCheckConfig(NAME$2, config, DefaultType);
769
+ config = _extends$1({}, Default$7, config);
770
+ Util.typeCheckConfig(NAME$8, config, DefaultType$7);
752
771
  return config;
753
772
  };
754
773
 
@@ -759,7 +778,8 @@
759
778
  return;
760
779
  }
761
780
 
762
- var direction = absDeltax / this.touchDeltaX; // swipe left
781
+ var direction = absDeltax / this.touchDeltaX;
782
+ this.touchDeltaX = 0; // swipe left
763
783
 
764
784
  if (direction > 0) {
765
785
  this.prev();
@@ -775,15 +795,15 @@
775
795
  var _this2 = this;
776
796
 
777
797
  if (this._config.keyboard) {
778
- $(this._element).on(Event$2.KEYDOWN, function (event) {
798
+ $__default["default"](this._element).on(EVENT_KEYDOWN, function (event) {
779
799
  return _this2._keydown(event);
780
800
  });
781
801
  }
782
802
 
783
803
  if (this._config.pause === 'hover') {
784
- $(this._element).on(Event$2.MOUSEENTER, function (event) {
804
+ $__default["default"](this._element).on(EVENT_MOUSEENTER, function (event) {
785
805
  return _this2.pause(event);
786
- }).on(Event$2.MOUSELEAVE, function (event) {
806
+ }).on(EVENT_MOUSELEAVE, function (event) {
787
807
  return _this2.cycle(event);
788
808
  });
789
809
  }
@@ -810,11 +830,7 @@
810
830
 
811
831
  var move = function move(event) {
812
832
  // ensure swiping with one touch and not pinching
813
- if (event.originalEvent.touches && event.originalEvent.touches.length > 1) {
814
- _this3.touchDeltaX = 0;
815
- } else {
816
- _this3.touchDeltaX = event.originalEvent.touches[0].clientX - _this3.touchStartX;
817
- }
833
+ _this3.touchDeltaX = event.originalEvent.touches && event.originalEvent.touches.length > 1 ? 0 : event.originalEvent.touches[0].clientX - _this3.touchStartX;
818
834
  };
819
835
 
820
836
  var end = function end(event) {
@@ -844,27 +860,27 @@
844
860
  }
845
861
  };
846
862
 
847
- $(this._element.querySelectorAll(Selector$2.ITEM_IMG)).on(Event$2.DRAG_START, function (e) {
863
+ $__default["default"](this._element.querySelectorAll(SELECTOR_ITEM_IMG)).on(EVENT_DRAG_START, function (e) {
848
864
  return e.preventDefault();
849
865
  });
850
866
 
851
867
  if (this._pointerEvent) {
852
- $(this._element).on(Event$2.POINTERDOWN, function (event) {
868
+ $__default["default"](this._element).on(EVENT_POINTERDOWN, function (event) {
853
869
  return start(event);
854
870
  });
855
- $(this._element).on(Event$2.POINTERUP, function (event) {
871
+ $__default["default"](this._element).on(EVENT_POINTERUP, function (event) {
856
872
  return end(event);
857
873
  });
858
874
 
859
- this._element.classList.add(ClassName$2.POINTER_EVENT);
875
+ this._element.classList.add(CLASS_NAME_POINTER_EVENT);
860
876
  } else {
861
- $(this._element).on(Event$2.TOUCHSTART, function (event) {
877
+ $__default["default"](this._element).on(EVENT_TOUCHSTART, function (event) {
862
878
  return start(event);
863
879
  });
864
- $(this._element).on(Event$2.TOUCHMOVE, function (event) {
880
+ $__default["default"](this._element).on(EVENT_TOUCHMOVE, function (event) {
865
881
  return move(event);
866
882
  });
867
- $(this._element).on(Event$2.TOUCHEND, function (event) {
883
+ $__default["default"](this._element).on(EVENT_TOUCHEND, function (event) {
868
884
  return end(event);
869
885
  });
870
886
  }
@@ -885,19 +901,17 @@
885
901
  event.preventDefault();
886
902
  this.next();
887
903
  break;
888
-
889
- default:
890
904
  }
891
905
  };
892
906
 
893
907
  _proto._getItemIndex = function _getItemIndex(element) {
894
- this._items = element && element.parentNode ? [].slice.call(element.parentNode.querySelectorAll(Selector$2.ITEM)) : [];
908
+ this._items = element && element.parentNode ? [].slice.call(element.parentNode.querySelectorAll(SELECTOR_ITEM)) : [];
895
909
  return this._items.indexOf(element);
896
910
  };
897
911
 
898
912
  _proto._getItemByDirection = function _getItemByDirection(direction, activeElement) {
899
- var isNextDirection = direction === Direction.NEXT;
900
- var isPrevDirection = direction === Direction.PREV;
913
+ var isNextDirection = direction === DIRECTION_NEXT;
914
+ var isPrevDirection = direction === DIRECTION_PREV;
901
915
 
902
916
  var activeIndex = this._getItemIndex(activeElement);
903
917
 
@@ -908,7 +922,7 @@
908
922
  return activeElement;
909
923
  }
910
924
 
911
- var delta = direction === Direction.PREV ? -1 : 1;
925
+ var delta = direction === DIRECTION_PREV ? -1 : 1;
912
926
  var itemIndex = (activeIndex + delta) % this._items.length;
913
927
  return itemIndex === -1 ? this._items[this._items.length - 1] : this._items[itemIndex];
914
928
  };
@@ -916,35 +930,52 @@
916
930
  _proto._triggerSlideEvent = function _triggerSlideEvent(relatedTarget, eventDirectionName) {
917
931
  var targetIndex = this._getItemIndex(relatedTarget);
918
932
 
919
- var fromIndex = this._getItemIndex(this._element.querySelector(Selector$2.ACTIVE_ITEM));
933
+ var fromIndex = this._getItemIndex(this._element.querySelector(SELECTOR_ACTIVE_ITEM));
920
934
 
921
- var slideEvent = $.Event(Event$2.SLIDE, {
935
+ var slideEvent = $__default["default"].Event(EVENT_SLIDE, {
922
936
  relatedTarget: relatedTarget,
923
937
  direction: eventDirectionName,
924
938
  from: fromIndex,
925
939
  to: targetIndex
926
940
  });
927
- $(this._element).trigger(slideEvent);
941
+ $__default["default"](this._element).trigger(slideEvent);
928
942
  return slideEvent;
929
943
  };
930
944
 
931
945
  _proto._setActiveIndicatorElement = function _setActiveIndicatorElement(element) {
932
946
  if (this._indicatorsElement) {
933
- var indicators = [].slice.call(this._indicatorsElement.querySelectorAll(Selector$2.ACTIVE));
934
- $(indicators).removeClass(ClassName$2.ACTIVE);
947
+ var indicators = [].slice.call(this._indicatorsElement.querySelectorAll(SELECTOR_ACTIVE$1));
948
+ $__default["default"](indicators).removeClass(CLASS_NAME_ACTIVE$2);
935
949
 
936
950
  var nextIndicator = this._indicatorsElement.children[this._getItemIndex(element)];
937
951
 
938
952
  if (nextIndicator) {
939
- $(nextIndicator).addClass(ClassName$2.ACTIVE);
953
+ $__default["default"](nextIndicator).addClass(CLASS_NAME_ACTIVE$2);
940
954
  }
941
955
  }
942
956
  };
943
957
 
958
+ _proto._updateInterval = function _updateInterval() {
959
+ var element = this._activeElement || this._element.querySelector(SELECTOR_ACTIVE_ITEM);
960
+
961
+ if (!element) {
962
+ return;
963
+ }
964
+
965
+ var elementInterval = parseInt(element.getAttribute('data-interval'), 10);
966
+
967
+ if (elementInterval) {
968
+ this._config.defaultInterval = this._config.defaultInterval || this._config.interval;
969
+ this._config.interval = elementInterval;
970
+ } else {
971
+ this._config.interval = this._config.defaultInterval || this._config.interval;
972
+ }
973
+ };
974
+
944
975
  _proto._slide = function _slide(direction, element) {
945
976
  var _this4 = this;
946
977
 
947
- var activeElement = this._element.querySelector(Selector$2.ACTIVE_ITEM);
978
+ var activeElement = this._element.querySelector(SELECTOR_ACTIVE_ITEM);
948
979
 
949
980
  var activeElementIndex = this._getItemIndex(activeElement);
950
981
 
@@ -957,17 +988,17 @@
957
988
  var orderClassName;
958
989
  var eventDirectionName;
959
990
 
960
- if (direction === Direction.NEXT) {
961
- directionalClassName = ClassName$2.LEFT;
962
- orderClassName = ClassName$2.NEXT;
963
- eventDirectionName = Direction.LEFT;
991
+ if (direction === DIRECTION_NEXT) {
992
+ directionalClassName = CLASS_NAME_LEFT;
993
+ orderClassName = CLASS_NAME_NEXT;
994
+ eventDirectionName = DIRECTION_LEFT;
964
995
  } else {
965
- directionalClassName = ClassName$2.RIGHT;
966
- orderClassName = ClassName$2.PREV;
967
- eventDirectionName = Direction.RIGHT;
996
+ directionalClassName = CLASS_NAME_RIGHT;
997
+ orderClassName = CLASS_NAME_PREV;
998
+ eventDirectionName = DIRECTION_RIGHT;
968
999
  }
969
1000
 
970
- if (nextElement && $(nextElement).hasClass(ClassName$2.ACTIVE)) {
1001
+ if (nextElement && $__default["default"](nextElement).hasClass(CLASS_NAME_ACTIVE$2)) {
971
1002
  this._isSliding = false;
972
1003
  return;
973
1004
  }
@@ -991,41 +1022,33 @@
991
1022
 
992
1023
  this._setActiveIndicatorElement(nextElement);
993
1024
 
994
- var slidEvent = $.Event(Event$2.SLID, {
1025
+ this._activeElement = nextElement;
1026
+ var slidEvent = $__default["default"].Event(EVENT_SLID, {
995
1027
  relatedTarget: nextElement,
996
1028
  direction: eventDirectionName,
997
1029
  from: activeElementIndex,
998
1030
  to: nextElementIndex
999
1031
  });
1000
1032
 
1001
- if ($(this._element).hasClass(ClassName$2.SLIDE)) {
1002
- $(nextElement).addClass(orderClassName);
1033
+ if ($__default["default"](this._element).hasClass(CLASS_NAME_SLIDE)) {
1034
+ $__default["default"](nextElement).addClass(orderClassName);
1003
1035
  Util.reflow(nextElement);
1004
- $(activeElement).addClass(directionalClassName);
1005
- $(nextElement).addClass(directionalClassName);
1006
- var nextElementInterval = parseInt(nextElement.getAttribute('data-interval'), 10);
1007
-
1008
- if (nextElementInterval) {
1009
- this._config.defaultInterval = this._config.defaultInterval || this._config.interval;
1010
- this._config.interval = nextElementInterval;
1011
- } else {
1012
- this._config.interval = this._config.defaultInterval || this._config.interval;
1013
- }
1014
-
1036
+ $__default["default"](activeElement).addClass(directionalClassName);
1037
+ $__default["default"](nextElement).addClass(directionalClassName);
1015
1038
  var transitionDuration = Util.getTransitionDurationFromElement(activeElement);
1016
- $(activeElement).one(Util.TRANSITION_END, function () {
1017
- $(nextElement).removeClass(directionalClassName + " " + orderClassName).addClass(ClassName$2.ACTIVE);
1018
- $(activeElement).removeClass(ClassName$2.ACTIVE + " " + orderClassName + " " + directionalClassName);
1039
+ $__default["default"](activeElement).one(Util.TRANSITION_END, function () {
1040
+ $__default["default"](nextElement).removeClass(directionalClassName + " " + orderClassName).addClass(CLASS_NAME_ACTIVE$2);
1041
+ $__default["default"](activeElement).removeClass(CLASS_NAME_ACTIVE$2 + " " + orderClassName + " " + directionalClassName);
1019
1042
  _this4._isSliding = false;
1020
1043
  setTimeout(function () {
1021
- return $(_this4._element).trigger(slidEvent);
1044
+ return $__default["default"](_this4._element).trigger(slidEvent);
1022
1045
  }, 0);
1023
1046
  }).emulateTransitionEnd(transitionDuration);
1024
1047
  } else {
1025
- $(activeElement).removeClass(ClassName$2.ACTIVE);
1026
- $(nextElement).addClass(ClassName$2.ACTIVE);
1048
+ $__default["default"](activeElement).removeClass(CLASS_NAME_ACTIVE$2);
1049
+ $__default["default"](nextElement).addClass(CLASS_NAME_ACTIVE$2);
1027
1050
  this._isSliding = false;
1028
- $(this._element).trigger(slidEvent);
1051
+ $__default["default"](this._element).trigger(slidEvent);
1029
1052
  }
1030
1053
 
1031
1054
  if (isCycling) {
@@ -1036,19 +1059,19 @@
1036
1059
 
1037
1060
  Carousel._jQueryInterface = function _jQueryInterface(config) {
1038
1061
  return this.each(function () {
1039
- var data = $(this).data(DATA_KEY$2);
1062
+ var data = $__default["default"](this).data(DATA_KEY$8);
1040
1063
 
1041
- var _config = _objectSpread({}, Default, $(this).data());
1064
+ var _config = _extends$1({}, Default$7, $__default["default"](this).data());
1042
1065
 
1043
1066
  if (typeof config === 'object') {
1044
- _config = _objectSpread({}, _config, config);
1067
+ _config = _extends$1({}, _config, config);
1045
1068
  }
1046
1069
 
1047
1070
  var action = typeof config === 'string' ? config : _config.slide;
1048
1071
 
1049
1072
  if (!data) {
1050
1073
  data = new Carousel(this, _config);
1051
- $(this).data(DATA_KEY$2, data);
1074
+ $__default["default"](this).data(DATA_KEY$8, data);
1052
1075
  }
1053
1076
 
1054
1077
  if (typeof config === 'number') {
@@ -1073,13 +1096,13 @@
1073
1096
  return;
1074
1097
  }
1075
1098
 
1076
- var target = $(selector)[0];
1099
+ var target = $__default["default"](selector)[0];
1077
1100
 
1078
- if (!target || !$(target).hasClass(ClassName$2.CAROUSEL)) {
1101
+ if (!target || !$__default["default"](target).hasClass(CLASS_NAME_CAROUSEL)) {
1079
1102
  return;
1080
1103
  }
1081
1104
 
1082
- var config = _objectSpread({}, $(target).data(), $(this).data());
1105
+ var config = _extends$1({}, $__default["default"](target).data(), $__default["default"](this).data());
1083
1106
 
1084
1107
  var slideIndex = this.getAttribute('data-slide-to');
1085
1108
 
@@ -1087,10 +1110,10 @@
1087
1110
  config.interval = false;
1088
1111
  }
1089
1112
 
1090
- Carousel._jQueryInterface.call($(target), config);
1113
+ Carousel._jQueryInterface.call($__default["default"](target), config);
1091
1114
 
1092
1115
  if (slideIndex) {
1093
- $(target).data(DATA_KEY$2).to(slideIndex);
1116
+ $__default["default"](target).data(DATA_KEY$8).to(slideIndex);
1094
1117
  }
1095
1118
 
1096
1119
  event.preventDefault();
@@ -1099,105 +1122,86 @@
1099
1122
  _createClass(Carousel, null, [{
1100
1123
  key: "VERSION",
1101
1124
  get: function get() {
1102
- return VERSION$2;
1125
+ return VERSION$8;
1103
1126
  }
1104
1127
  }, {
1105
1128
  key: "Default",
1106
1129
  get: function get() {
1107
- return Default;
1130
+ return Default$7;
1108
1131
  }
1109
1132
  }]);
1110
1133
 
1111
1134
  return Carousel;
1112
1135
  }();
1113
1136
  /**
1114
- * ------------------------------------------------------------------------
1115
- * Data Api implementation
1116
- * ------------------------------------------------------------------------
1137
+ * Data API implementation
1117
1138
  */
1118
1139
 
1119
1140
 
1120
- $(document).on(Event$2.CLICK_DATA_API, Selector$2.DATA_SLIDE, Carousel._dataApiClickHandler);
1121
- $(window).on(Event$2.LOAD_DATA_API, function () {
1122
- var carousels = [].slice.call(document.querySelectorAll(Selector$2.DATA_RIDE));
1141
+ $__default["default"](document).on(EVENT_CLICK_DATA_API$4, SELECTOR_DATA_SLIDE, Carousel._dataApiClickHandler);
1142
+ $__default["default"](window).on(EVENT_LOAD_DATA_API$1, function () {
1143
+ var carousels = [].slice.call(document.querySelectorAll(SELECTOR_DATA_RIDE));
1123
1144
 
1124
1145
  for (var i = 0, len = carousels.length; i < len; i++) {
1125
- var $carousel = $(carousels[i]);
1146
+ var $carousel = $__default["default"](carousels[i]);
1126
1147
 
1127
1148
  Carousel._jQueryInterface.call($carousel, $carousel.data());
1128
1149
  }
1129
1150
  });
1130
1151
  /**
1131
- * ------------------------------------------------------------------------
1132
1152
  * jQuery
1133
- * ------------------------------------------------------------------------
1134
1153
  */
1135
1154
 
1136
- $.fn[NAME$2] = Carousel._jQueryInterface;
1137
- $.fn[NAME$2].Constructor = Carousel;
1155
+ $__default["default"].fn[NAME$8] = Carousel._jQueryInterface;
1156
+ $__default["default"].fn[NAME$8].Constructor = Carousel;
1138
1157
 
1139
- $.fn[NAME$2].noConflict = function () {
1140
- $.fn[NAME$2] = JQUERY_NO_CONFLICT$2;
1158
+ $__default["default"].fn[NAME$8].noConflict = function () {
1159
+ $__default["default"].fn[NAME$8] = JQUERY_NO_CONFLICT$8;
1141
1160
  return Carousel._jQueryInterface;
1142
1161
  };
1143
1162
 
1144
1163
  /**
1145
- * ------------------------------------------------------------------------
1146
1164
  * Constants
1147
- * ------------------------------------------------------------------------
1148
1165
  */
1149
1166
 
1150
- var NAME$3 = 'collapse';
1151
- var VERSION$3 = '4.3.1';
1152
- var DATA_KEY$3 = 'bs.collapse';
1153
- var EVENT_KEY$3 = "." + DATA_KEY$3;
1154
- var DATA_API_KEY$3 = '.data-api';
1155
- var JQUERY_NO_CONFLICT$3 = $.fn[NAME$3];
1156
- var Default$1 = {
1167
+ var NAME$7 = 'collapse';
1168
+ var VERSION$7 = '4.6.1';
1169
+ var DATA_KEY$7 = 'bs.collapse';
1170
+ var EVENT_KEY$7 = "." + DATA_KEY$7;
1171
+ var DATA_API_KEY$4 = '.data-api';
1172
+ var JQUERY_NO_CONFLICT$7 = $__default["default"].fn[NAME$7];
1173
+ var CLASS_NAME_SHOW$6 = 'show';
1174
+ var CLASS_NAME_COLLAPSE = 'collapse';
1175
+ var CLASS_NAME_COLLAPSING = 'collapsing';
1176
+ var CLASS_NAME_COLLAPSED = 'collapsed';
1177
+ var DIMENSION_WIDTH = 'width';
1178
+ var DIMENSION_HEIGHT = 'height';
1179
+ var EVENT_SHOW$4 = "show" + EVENT_KEY$7;
1180
+ var EVENT_SHOWN$4 = "shown" + EVENT_KEY$7;
1181
+ var EVENT_HIDE$4 = "hide" + EVENT_KEY$7;
1182
+ var EVENT_HIDDEN$4 = "hidden" + EVENT_KEY$7;
1183
+ var EVENT_CLICK_DATA_API$3 = "click" + EVENT_KEY$7 + DATA_API_KEY$4;
1184
+ var SELECTOR_ACTIVES = '.show, .collapsing';
1185
+ var SELECTOR_DATA_TOGGLE$3 = '[data-toggle="collapse"]';
1186
+ var Default$6 = {
1157
1187
  toggle: true,
1158
1188
  parent: ''
1159
1189
  };
1160
- var DefaultType$1 = {
1190
+ var DefaultType$6 = {
1161
1191
  toggle: 'boolean',
1162
1192
  parent: '(string|element)'
1163
1193
  };
1164
- var Event$3 = {
1165
- SHOW: "show" + EVENT_KEY$3,
1166
- SHOWN: "shown" + EVENT_KEY$3,
1167
- HIDE: "hide" + EVENT_KEY$3,
1168
- HIDDEN: "hidden" + EVENT_KEY$3,
1169
- CLICK_DATA_API: "click" + EVENT_KEY$3 + DATA_API_KEY$3
1170
- };
1171
- var ClassName$3 = {
1172
- SHOW: 'show',
1173
- COLLAPSE: 'collapse',
1174
- COLLAPSING: 'collapsing',
1175
- COLLAPSED: 'collapsed'
1176
- };
1177
- var Dimension = {
1178
- WIDTH: 'width',
1179
- HEIGHT: 'height'
1180
- };
1181
- var Selector$3 = {
1182
- ACTIVES: '.show, .collapsing',
1183
- DATA_TOGGLE: '[data-toggle="collapse"]'
1184
- /**
1185
- * ------------------------------------------------------------------------
1186
- * Class Definition
1187
- * ------------------------------------------------------------------------
1188
- */
1189
-
1190
- };
1194
+ /**
1195
+ * Class definition
1196
+ */
1191
1197
 
1192
- var Collapse =
1193
- /*#__PURE__*/
1194
- function () {
1198
+ var Collapse = /*#__PURE__*/function () {
1195
1199
  function Collapse(element, config) {
1196
1200
  this._isTransitioning = false;
1197
1201
  this._element = element;
1198
1202
  this._config = this._getConfig(config);
1199
1203
  this._triggerArray = [].slice.call(document.querySelectorAll("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]")));
1200
- var toggleList = [].slice.call(document.querySelectorAll(Selector$3.DATA_TOGGLE));
1204
+ var toggleList = [].slice.call(document.querySelectorAll(SELECTOR_DATA_TOGGLE$3));
1201
1205
 
1202
1206
  for (var i = 0, len = toggleList.length; i < len; i++) {
1203
1207
  var elem = toggleList[i];
@@ -1229,7 +1233,7 @@
1229
1233
 
1230
1234
  // Public
1231
1235
  _proto.toggle = function toggle() {
1232
- if ($(this._element).hasClass(ClassName$3.SHOW)) {
1236
+ if ($__default["default"](this._element).hasClass(CLASS_NAME_SHOW$6)) {
1233
1237
  this.hide();
1234
1238
  } else {
1235
1239
  this.show();
@@ -1239,7 +1243,7 @@
1239
1243
  _proto.show = function show() {
1240
1244
  var _this = this;
1241
1245
 
1242
- if (this._isTransitioning || $(this._element).hasClass(ClassName$3.SHOW)) {
1246
+ if (this._isTransitioning || $__default["default"](this._element).hasClass(CLASS_NAME_SHOW$6)) {
1243
1247
  return;
1244
1248
  }
1245
1249
 
@@ -1247,12 +1251,12 @@
1247
1251
  var activesData;
1248
1252
 
1249
1253
  if (this._parent) {
1250
- actives = [].slice.call(this._parent.querySelectorAll(Selector$3.ACTIVES)).filter(function (elem) {
1254
+ actives = [].slice.call(this._parent.querySelectorAll(SELECTOR_ACTIVES)).filter(function (elem) {
1251
1255
  if (typeof _this._config.parent === 'string') {
1252
1256
  return elem.getAttribute('data-parent') === _this._config.parent;
1253
1257
  }
1254
1258
 
1255
- return elem.classList.contains(ClassName$3.COLLAPSE);
1259
+ return elem.classList.contains(CLASS_NAME_COLLAPSE);
1256
1260
  });
1257
1261
 
1258
1262
  if (actives.length === 0) {
@@ -1261,64 +1265,64 @@
1261
1265
  }
1262
1266
 
1263
1267
  if (actives) {
1264
- activesData = $(actives).not(this._selector).data(DATA_KEY$3);
1268
+ activesData = $__default["default"](actives).not(this._selector).data(DATA_KEY$7);
1265
1269
 
1266
1270
  if (activesData && activesData._isTransitioning) {
1267
1271
  return;
1268
1272
  }
1269
1273
  }
1270
1274
 
1271
- var startEvent = $.Event(Event$3.SHOW);
1272
- $(this._element).trigger(startEvent);
1275
+ var startEvent = $__default["default"].Event(EVENT_SHOW$4);
1276
+ $__default["default"](this._element).trigger(startEvent);
1273
1277
 
1274
1278
  if (startEvent.isDefaultPrevented()) {
1275
1279
  return;
1276
1280
  }
1277
1281
 
1278
1282
  if (actives) {
1279
- Collapse._jQueryInterface.call($(actives).not(this._selector), 'hide');
1283
+ Collapse._jQueryInterface.call($__default["default"](actives).not(this._selector), 'hide');
1280
1284
 
1281
1285
  if (!activesData) {
1282
- $(actives).data(DATA_KEY$3, null);
1286
+ $__default["default"](actives).data(DATA_KEY$7, null);
1283
1287
  }
1284
1288
  }
1285
1289
 
1286
1290
  var dimension = this._getDimension();
1287
1291
 
1288
- $(this._element).removeClass(ClassName$3.COLLAPSE).addClass(ClassName$3.COLLAPSING);
1292
+ $__default["default"](this._element).removeClass(CLASS_NAME_COLLAPSE).addClass(CLASS_NAME_COLLAPSING);
1289
1293
  this._element.style[dimension] = 0;
1290
1294
 
1291
1295
  if (this._triggerArray.length) {
1292
- $(this._triggerArray).removeClass(ClassName$3.COLLAPSED).attr('aria-expanded', true);
1296
+ $__default["default"](this._triggerArray).removeClass(CLASS_NAME_COLLAPSED).attr('aria-expanded', true);
1293
1297
  }
1294
1298
 
1295
1299
  this.setTransitioning(true);
1296
1300
 
1297
1301
  var complete = function complete() {
1298
- $(_this._element).removeClass(ClassName$3.COLLAPSING).addClass(ClassName$3.COLLAPSE).addClass(ClassName$3.SHOW);
1302
+ $__default["default"](_this._element).removeClass(CLASS_NAME_COLLAPSING).addClass(CLASS_NAME_COLLAPSE + " " + CLASS_NAME_SHOW$6);
1299
1303
  _this._element.style[dimension] = '';
1300
1304
 
1301
1305
  _this.setTransitioning(false);
1302
1306
 
1303
- $(_this._element).trigger(Event$3.SHOWN);
1307
+ $__default["default"](_this._element).trigger(EVENT_SHOWN$4);
1304
1308
  };
1305
1309
 
1306
1310
  var capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);
1307
1311
  var scrollSize = "scroll" + capitalizedDimension;
1308
1312
  var transitionDuration = Util.getTransitionDurationFromElement(this._element);
1309
- $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
1313
+ $__default["default"](this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
1310
1314
  this._element.style[dimension] = this._element[scrollSize] + "px";
1311
1315
  };
1312
1316
 
1313
1317
  _proto.hide = function hide() {
1314
1318
  var _this2 = this;
1315
1319
 
1316
- if (this._isTransitioning || !$(this._element).hasClass(ClassName$3.SHOW)) {
1320
+ if (this._isTransitioning || !$__default["default"](this._element).hasClass(CLASS_NAME_SHOW$6)) {
1317
1321
  return;
1318
1322
  }
1319
1323
 
1320
- var startEvent = $.Event(Event$3.HIDE);
1321
- $(this._element).trigger(startEvent);
1324
+ var startEvent = $__default["default"].Event(EVENT_HIDE$4);
1325
+ $__default["default"](this._element).trigger(startEvent);
1322
1326
 
1323
1327
  if (startEvent.isDefaultPrevented()) {
1324
1328
  return;
@@ -1328,7 +1332,7 @@
1328
1332
 
1329
1333
  this._element.style[dimension] = this._element.getBoundingClientRect()[dimension] + "px";
1330
1334
  Util.reflow(this._element);
1331
- $(this._element).addClass(ClassName$3.COLLAPSING).removeClass(ClassName$3.COLLAPSE).removeClass(ClassName$3.SHOW);
1335
+ $__default["default"](this._element).addClass(CLASS_NAME_COLLAPSING).removeClass(CLASS_NAME_COLLAPSE + " " + CLASS_NAME_SHOW$6);
1332
1336
  var triggerArrayLength = this._triggerArray.length;
1333
1337
 
1334
1338
  if (triggerArrayLength > 0) {
@@ -1337,10 +1341,10 @@
1337
1341
  var selector = Util.getSelectorFromElement(trigger);
1338
1342
 
1339
1343
  if (selector !== null) {
1340
- var $elem = $([].slice.call(document.querySelectorAll(selector)));
1344
+ var $elem = $__default["default"]([].slice.call(document.querySelectorAll(selector)));
1341
1345
 
1342
- if (!$elem.hasClass(ClassName$3.SHOW)) {
1343
- $(trigger).addClass(ClassName$3.COLLAPSED).attr('aria-expanded', false);
1346
+ if (!$elem.hasClass(CLASS_NAME_SHOW$6)) {
1347
+ $__default["default"](trigger).addClass(CLASS_NAME_COLLAPSED).attr('aria-expanded', false);
1344
1348
  }
1345
1349
  }
1346
1350
  }
@@ -1351,12 +1355,12 @@
1351
1355
  var complete = function complete() {
1352
1356
  _this2.setTransitioning(false);
1353
1357
 
1354
- $(_this2._element).removeClass(ClassName$3.COLLAPSING).addClass(ClassName$3.COLLAPSE).trigger(Event$3.HIDDEN);
1358
+ $__default["default"](_this2._element).removeClass(CLASS_NAME_COLLAPSING).addClass(CLASS_NAME_COLLAPSE).trigger(EVENT_HIDDEN$4);
1355
1359
  };
1356
1360
 
1357
1361
  this._element.style[dimension] = '';
1358
1362
  var transitionDuration = Util.getTransitionDurationFromElement(this._element);
1359
- $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
1363
+ $__default["default"](this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
1360
1364
  };
1361
1365
 
1362
1366
  _proto.setTransitioning = function setTransitioning(isTransitioning) {
@@ -1364,7 +1368,7 @@
1364
1368
  };
1365
1369
 
1366
1370
  _proto.dispose = function dispose() {
1367
- $.removeData(this._element, DATA_KEY$3);
1371
+ $__default["default"].removeData(this._element, DATA_KEY$7);
1368
1372
  this._config = null;
1369
1373
  this._parent = null;
1370
1374
  this._element = null;
@@ -1374,16 +1378,16 @@
1374
1378
  ;
1375
1379
 
1376
1380
  _proto._getConfig = function _getConfig(config) {
1377
- config = _objectSpread({}, Default$1, config);
1381
+ config = _extends$1({}, Default$6, config);
1378
1382
  config.toggle = Boolean(config.toggle); // Coerce string values
1379
1383
 
1380
- Util.typeCheckConfig(NAME$3, config, DefaultType$1);
1384
+ Util.typeCheckConfig(NAME$7, config, DefaultType$6);
1381
1385
  return config;
1382
1386
  };
1383
1387
 
1384
1388
  _proto._getDimension = function _getDimension() {
1385
- var hasWidth = $(this._element).hasClass(Dimension.WIDTH);
1386
- return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT;
1389
+ var hasWidth = $__default["default"](this._element).hasClass(DIMENSION_WIDTH);
1390
+ return hasWidth ? DIMENSION_WIDTH : DIMENSION_HEIGHT;
1387
1391
  };
1388
1392
 
1389
1393
  _proto._getParent = function _getParent() {
@@ -1403,17 +1407,17 @@
1403
1407
 
1404
1408
  var selector = "[data-toggle=\"collapse\"][data-parent=\"" + this._config.parent + "\"]";
1405
1409
  var children = [].slice.call(parent.querySelectorAll(selector));
1406
- $(children).each(function (i, element) {
1410
+ $__default["default"](children).each(function (i, element) {
1407
1411
  _this3._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]);
1408
1412
  });
1409
1413
  return parent;
1410
1414
  };
1411
1415
 
1412
1416
  _proto._addAriaAndCollapsedClass = function _addAriaAndCollapsedClass(element, triggerArray) {
1413
- var isOpen = $(element).hasClass(ClassName$3.SHOW);
1417
+ var isOpen = $__default["default"](element).hasClass(CLASS_NAME_SHOW$6);
1414
1418
 
1415
1419
  if (triggerArray.length) {
1416
- $(triggerArray).toggleClass(ClassName$3.COLLAPSED, !isOpen).attr('aria-expanded', isOpen);
1420
+ $__default["default"](triggerArray).toggleClass(CLASS_NAME_COLLAPSED, !isOpen).attr('aria-expanded', isOpen);
1417
1421
  }
1418
1422
  } // Static
1419
1423
  ;
@@ -1425,18 +1429,18 @@
1425
1429
 
1426
1430
  Collapse._jQueryInterface = function _jQueryInterface(config) {
1427
1431
  return this.each(function () {
1428
- var $this = $(this);
1429
- var data = $this.data(DATA_KEY$3);
1432
+ var $element = $__default["default"](this);
1433
+ var data = $element.data(DATA_KEY$7);
1430
1434
 
1431
- var _config = _objectSpread({}, Default$1, $this.data(), typeof config === 'object' && config ? config : {});
1435
+ var _config = _extends$1({}, Default$6, $element.data(), typeof config === 'object' && config ? config : {});
1432
1436
 
1433
- if (!data && _config.toggle && /show|hide/.test(config)) {
1437
+ if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {
1434
1438
  _config.toggle = false;
1435
1439
  }
1436
1440
 
1437
1441
  if (!data) {
1438
1442
  data = new Collapse(this, _config);
1439
- $this.data(DATA_KEY$3, data);
1443
+ $element.data(DATA_KEY$7, data);
1440
1444
  }
1441
1445
 
1442
1446
  if (typeof config === 'string') {
@@ -1452,58 +1456,54 @@
1452
1456
  _createClass(Collapse, null, [{
1453
1457
  key: "VERSION",
1454
1458
  get: function get() {
1455
- return VERSION$3;
1459
+ return VERSION$7;
1456
1460
  }
1457
1461
  }, {
1458
1462
  key: "Default",
1459
1463
  get: function get() {
1460
- return Default$1;
1464
+ return Default$6;
1461
1465
  }
1462
1466
  }]);
1463
1467
 
1464
1468
  return Collapse;
1465
1469
  }();
1466
1470
  /**
1467
- * ------------------------------------------------------------------------
1468
- * Data Api implementation
1469
- * ------------------------------------------------------------------------
1471
+ * Data API implementation
1470
1472
  */
1471
1473
 
1472
1474
 
1473
- $(document).on(Event$3.CLICK_DATA_API, Selector$3.DATA_TOGGLE, function (event) {
1475
+ $__default["default"](document).on(EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, function (event) {
1474
1476
  // preventDefault only for <a> elements (which change the URL) not inside the collapsible element
1475
1477
  if (event.currentTarget.tagName === 'A') {
1476
1478
  event.preventDefault();
1477
1479
  }
1478
1480
 
1479
- var $trigger = $(this);
1481
+ var $trigger = $__default["default"](this);
1480
1482
  var selector = Util.getSelectorFromElement(this);
1481
1483
  var selectors = [].slice.call(document.querySelectorAll(selector));
1482
- $(selectors).each(function () {
1483
- var $target = $(this);
1484
- var data = $target.data(DATA_KEY$3);
1484
+ $__default["default"](selectors).each(function () {
1485
+ var $target = $__default["default"](this);
1486
+ var data = $target.data(DATA_KEY$7);
1485
1487
  var config = data ? 'toggle' : $trigger.data();
1486
1488
 
1487
1489
  Collapse._jQueryInterface.call($target, config);
1488
1490
  });
1489
1491
  });
1490
1492
  /**
1491
- * ------------------------------------------------------------------------
1492
1493
  * jQuery
1493
- * ------------------------------------------------------------------------
1494
1494
  */
1495
1495
 
1496
- $.fn[NAME$3] = Collapse._jQueryInterface;
1497
- $.fn[NAME$3].Constructor = Collapse;
1496
+ $__default["default"].fn[NAME$7] = Collapse._jQueryInterface;
1497
+ $__default["default"].fn[NAME$7].Constructor = Collapse;
1498
1498
 
1499
- $.fn[NAME$3].noConflict = function () {
1500
- $.fn[NAME$3] = JQUERY_NO_CONFLICT$3;
1499
+ $__default["default"].fn[NAME$7].noConflict = function () {
1500
+ $__default["default"].fn[NAME$7] = JQUERY_NO_CONFLICT$7;
1501
1501
  return Collapse._jQueryInterface;
1502
1502
  };
1503
1503
 
1504
1504
  /**!
1505
1505
  * @fileOverview Kickass library to create and place poppers near their reference elements.
1506
- * @version 1.14.7
1506
+ * @version 1.16.1
1507
1507
  * @license
1508
1508
  * Copyright (c) 2016 Federico Zivolo and contributors
1509
1509
  *
@@ -1525,16 +1525,17 @@
1525
1525
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1526
1526
  * SOFTWARE.
1527
1527
  */
1528
- var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';
1529
-
1530
- var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];
1531
- var timeoutDuration = 0;
1532
- for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {
1533
- if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {
1534
- timeoutDuration = 1;
1535
- break;
1528
+ var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';
1529
+
1530
+ var timeoutDuration = function () {
1531
+ var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];
1532
+ for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {
1533
+ if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {
1534
+ return 1;
1535
+ }
1536
1536
  }
1537
- }
1537
+ return 0;
1538
+ }();
1538
1539
 
1539
1540
  function microtaskDebounce(fn) {
1540
1541
  var called = false;
@@ -1654,6 +1655,17 @@
1654
1655
  return getScrollParent(getParentNode(element));
1655
1656
  }
1656
1657
 
1658
+ /**
1659
+ * Returns the reference node of the reference object, or the reference object itself.
1660
+ * @method
1661
+ * @memberof Popper.Utils
1662
+ * @param {Element|Object} reference - the reference element (the popper will be relative to this)
1663
+ * @returns {Element} parent
1664
+ */
1665
+ function getReferenceNode(reference) {
1666
+ return reference && reference.referenceNode ? reference.referenceNode : reference;
1667
+ }
1668
+
1657
1669
  var isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);
1658
1670
  var isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);
1659
1671
 
@@ -1837,7 +1849,7 @@
1837
1849
  var sideA = axis === 'x' ? 'Left' : 'Top';
1838
1850
  var sideB = sideA === 'Left' ? 'Right' : 'Bottom';
1839
1851
 
1840
- return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10);
1852
+ return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);
1841
1853
  }
1842
1854
 
1843
1855
  function getSize(axis, body, html, computedStyle) {
@@ -1962,8 +1974,8 @@
1962
1974
 
1963
1975
  // subtract scrollbar size from sizes
1964
1976
  var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};
1965
- var width = sizes.width || element.clientWidth || result.right - result.left;
1966
- var height = sizes.height || element.clientHeight || result.bottom - result.top;
1977
+ var width = sizes.width || element.clientWidth || result.width;
1978
+ var height = sizes.height || element.clientHeight || result.height;
1967
1979
 
1968
1980
  var horizScrollbar = element.offsetWidth - width;
1969
1981
  var vertScrollbar = element.offsetHeight - height;
@@ -1992,8 +2004,8 @@
1992
2004
  var scrollParent = getScrollParent(children);
1993
2005
 
1994
2006
  var styles = getStyleComputedProperty(parent);
1995
- var borderTopWidth = parseFloat(styles.borderTopWidth, 10);
1996
- var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10);
2007
+ var borderTopWidth = parseFloat(styles.borderTopWidth);
2008
+ var borderLeftWidth = parseFloat(styles.borderLeftWidth);
1997
2009
 
1998
2010
  // In cases where the parent is fixed, we must ignore negative scroll in offset calc
1999
2011
  if (fixedPosition && isHTML) {
@@ -2014,8 +2026,8 @@
2014
2026
  // differently when margins are applied to it. The margins are included in
2015
2027
  // the box of the documentElement, in the other cases not.
2016
2028
  if (!isIE10 && isHTML) {
2017
- var marginTop = parseFloat(styles.marginTop, 10);
2018
- var marginLeft = parseFloat(styles.marginLeft, 10);
2029
+ var marginTop = parseFloat(styles.marginTop);
2030
+ var marginLeft = parseFloat(styles.marginLeft);
2019
2031
 
2020
2032
  offsets.top -= borderTopWidth - marginTop;
2021
2033
  offsets.bottom -= borderTopWidth - marginTop;
@@ -2115,7 +2127,7 @@
2115
2127
  // NOTE: 1 DOM access here
2116
2128
 
2117
2129
  var boundaries = { top: 0, left: 0 };
2118
- var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference);
2130
+ var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));
2119
2131
 
2120
2132
  // Handle viewport case
2121
2133
  if (boundariesElement === 'viewport') {
@@ -2243,7 +2255,7 @@
2243
2255
  function getReferenceOffsets(state, popper, reference) {
2244
2256
  var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
2245
2257
 
2246
- var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference);
2258
+ var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));
2247
2259
  return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);
2248
2260
  }
2249
2261
 
@@ -2505,7 +2517,7 @@
2505
2517
 
2506
2518
  this.disableEventListeners();
2507
2519
 
2508
- // remove the popper if user explicity asked for the deletion on destroy
2520
+ // remove the popper if user explicitly asked for the deletion on destroy
2509
2521
  // do not use `remove` because IE11 doesn't support it
2510
2522
  if (this.options.removeOnDestroy) {
2511
2523
  this.popper.parentNode.removeChild(this.popper);
@@ -2954,8 +2966,8 @@
2954
2966
  // Compute the sideValue using the updated popper offsets
2955
2967
  // take popper margin in account because we don't have this info available
2956
2968
  var css = getStyleComputedProperty(data.instance.popper);
2957
- var popperMarginSide = parseFloat(css['margin' + sideCapitalized], 10);
2958
- var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width'], 10);
2969
+ var popperMarginSide = parseFloat(css['margin' + sideCapitalized]);
2970
+ var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']);
2959
2971
  var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;
2960
2972
 
2961
2973
  // prevent arrowElement from being placed not contiguously to its popper
@@ -3107,7 +3119,14 @@
3107
3119
 
3108
3120
  // flip the variation if required
3109
3121
  var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;
3110
- var flippedVariation = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);
3122
+
3123
+ // flips variation if reference element overflows boundaries
3124
+ var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);
3125
+
3126
+ // flips variation if popper content overflows boundaries
3127
+ var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);
3128
+
3129
+ var flippedVariation = flippedVariationByRef || flippedVariationByContent;
3111
3130
 
3112
3131
  if (overlapsRef || overflowsBoundaries || flippedVariation) {
3113
3132
  // this boolean to detect any flip loop
@@ -3714,7 +3733,23 @@
3714
3733
  * The popper will never be placed outside of the defined boundaries
3715
3734
  * (except if `keepTogether` is enabled)
3716
3735
  */
3717
- boundariesElement: 'viewport'
3736
+ boundariesElement: 'viewport',
3737
+ /**
3738
+ * @prop {Boolean} flipVariations=false
3739
+ * The popper will switch placement variation between `-start` and `-end` when
3740
+ * the reference element overlaps its boundaries.
3741
+ *
3742
+ * The original placement should have a set variation.
3743
+ */
3744
+ flipVariations: false,
3745
+ /**
3746
+ * @prop {Boolean} flipVariationsByContent=false
3747
+ * The popper will switch placement variation between `-start` and `-end` when
3748
+ * the popper element overlaps its reference boundaries.
3749
+ *
3750
+ * The original placement should have a set variation.
3751
+ */
3752
+ flipVariationsByContent: false
3718
3753
  },
3719
3754
 
3720
3755
  /**
@@ -3931,8 +3966,8 @@
3931
3966
  /**
3932
3967
  * Creates a new Popper.js instance.
3933
3968
  * @class Popper
3934
- * @param {HTMLElement|referenceObject} reference - The reference element used to position the popper
3935
- * @param {HTMLElement} popper - The HTML element used as the popper
3969
+ * @param {Element|referenceObject} reference - The reference element used to position the popper
3970
+ * @param {Element} popper - The HTML / XML element used as the popper
3936
3971
  * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)
3937
3972
  * @return {Object} instance - The generated Popper.js instance
3938
3973
  */
@@ -4080,19 +4115,19 @@
4080
4115
  Popper.placements = placements;
4081
4116
  Popper.Defaults = Defaults;
4082
4117
 
4118
+ var Popper$1 = Popper;
4119
+
4083
4120
  /**
4084
- * ------------------------------------------------------------------------
4085
4121
  * Constants
4086
- * ------------------------------------------------------------------------
4087
4122
  */
4088
4123
 
4089
- var NAME$4 = 'dropdown';
4090
- var VERSION$4 = '4.3.1';
4091
- var DATA_KEY$4 = 'bs.dropdown';
4092
- var EVENT_KEY$4 = "." + DATA_KEY$4;
4093
- var DATA_API_KEY$4 = '.data-api';
4094
- var JQUERY_NO_CONFLICT$4 = $.fn[NAME$4];
4095
- var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key
4124
+ var NAME$6 = 'dropdown';
4125
+ var VERSION$6 = '4.6.1';
4126
+ var DATA_KEY$6 = 'bs.dropdown';
4127
+ var EVENT_KEY$6 = "." + DATA_KEY$6;
4128
+ var DATA_API_KEY$3 = '.data-api';
4129
+ var JQUERY_NO_CONFLICT$6 = $__default["default"].fn[NAME$6];
4130
+ var ESCAPE_KEYCODE$1 = 27; // KeyboardEvent.which value for Escape (Esc) key
4096
4131
 
4097
4132
  var SPACE_KEYCODE = 32; // KeyboardEvent.which value for space key
4098
4133
 
@@ -4104,68 +4139,54 @@
4104
4139
 
4105
4140
  var RIGHT_MOUSE_BUTTON_WHICH = 3; // MouseEvent.which value for the right button (assuming a right-handed mouse)
4106
4141
 
4107
- var REGEXP_KEYDOWN = new RegExp(ARROW_UP_KEYCODE + "|" + ARROW_DOWN_KEYCODE + "|" + ESCAPE_KEYCODE);
4108
- var Event$4 = {
4109
- HIDE: "hide" + EVENT_KEY$4,
4110
- HIDDEN: "hidden" + EVENT_KEY$4,
4111
- SHOW: "show" + EVENT_KEY$4,
4112
- SHOWN: "shown" + EVENT_KEY$4,
4113
- CLICK: "click" + EVENT_KEY$4,
4114
- CLICK_DATA_API: "click" + EVENT_KEY$4 + DATA_API_KEY$4,
4115
- KEYDOWN_DATA_API: "keydown" + EVENT_KEY$4 + DATA_API_KEY$4,
4116
- KEYUP_DATA_API: "keyup" + EVENT_KEY$4 + DATA_API_KEY$4
4117
- };
4118
- var ClassName$4 = {
4119
- DISABLED: 'disabled',
4120
- SHOW: 'show',
4121
- DROPUP: 'dropup',
4122
- DROPRIGHT: 'dropright',
4123
- DROPLEFT: 'dropleft',
4124
- MENURIGHT: 'dropdown-menu-right',
4125
- MENULEFT: 'dropdown-menu-left',
4126
- POSITION_STATIC: 'position-static'
4127
- };
4128
- var Selector$4 = {
4129
- DATA_TOGGLE: '[data-toggle="dropdown"]',
4130
- FORM_CHILD: '.dropdown form',
4131
- MENU: '.dropdown-menu',
4132
- NAVBAR_NAV: '.navbar-nav',
4133
- VISIBLE_ITEMS: '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'
4134
- };
4135
- var AttachmentMap = {
4136
- TOP: 'top-start',
4137
- TOPEND: 'top-end',
4138
- BOTTOM: 'bottom-start',
4139
- BOTTOMEND: 'bottom-end',
4140
- RIGHT: 'right-start',
4141
- RIGHTEND: 'right-end',
4142
- LEFT: 'left-start',
4143
- LEFTEND: 'left-end'
4144
- };
4145
- var Default$2 = {
4142
+ var REGEXP_KEYDOWN = new RegExp(ARROW_UP_KEYCODE + "|" + ARROW_DOWN_KEYCODE + "|" + ESCAPE_KEYCODE$1);
4143
+ var CLASS_NAME_DISABLED$1 = 'disabled';
4144
+ var CLASS_NAME_SHOW$5 = 'show';
4145
+ var CLASS_NAME_DROPUP = 'dropup';
4146
+ var CLASS_NAME_DROPRIGHT = 'dropright';
4147
+ var CLASS_NAME_DROPLEFT = 'dropleft';
4148
+ var CLASS_NAME_MENURIGHT = 'dropdown-menu-right';
4149
+ var CLASS_NAME_POSITION_STATIC = 'position-static';
4150
+ var EVENT_HIDE$3 = "hide" + EVENT_KEY$6;
4151
+ var EVENT_HIDDEN$3 = "hidden" + EVENT_KEY$6;
4152
+ var EVENT_SHOW$3 = "show" + EVENT_KEY$6;
4153
+ var EVENT_SHOWN$3 = "shown" + EVENT_KEY$6;
4154
+ var EVENT_CLICK = "click" + EVENT_KEY$6;
4155
+ var EVENT_CLICK_DATA_API$2 = "click" + EVENT_KEY$6 + DATA_API_KEY$3;
4156
+ var EVENT_KEYDOWN_DATA_API = "keydown" + EVENT_KEY$6 + DATA_API_KEY$3;
4157
+ var EVENT_KEYUP_DATA_API = "keyup" + EVENT_KEY$6 + DATA_API_KEY$3;
4158
+ var SELECTOR_DATA_TOGGLE$2 = '[data-toggle="dropdown"]';
4159
+ var SELECTOR_FORM_CHILD = '.dropdown form';
4160
+ var SELECTOR_MENU = '.dropdown-menu';
4161
+ var SELECTOR_NAVBAR_NAV = '.navbar-nav';
4162
+ var SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)';
4163
+ var PLACEMENT_TOP = 'top-start';
4164
+ var PLACEMENT_TOPEND = 'top-end';
4165
+ var PLACEMENT_BOTTOM = 'bottom-start';
4166
+ var PLACEMENT_BOTTOMEND = 'bottom-end';
4167
+ var PLACEMENT_RIGHT = 'right-start';
4168
+ var PLACEMENT_LEFT = 'left-start';
4169
+ var Default$5 = {
4146
4170
  offset: 0,
4147
4171
  flip: true,
4148
4172
  boundary: 'scrollParent',
4149
4173
  reference: 'toggle',
4150
- display: 'dynamic'
4174
+ display: 'dynamic',
4175
+ popperConfig: null
4151
4176
  };
4152
- var DefaultType$2 = {
4177
+ var DefaultType$5 = {
4153
4178
  offset: '(number|string|function)',
4154
4179
  flip: 'boolean',
4155
4180
  boundary: '(string|element)',
4156
4181
  reference: '(string|element)',
4157
- display: 'string'
4158
- /**
4159
- * ------------------------------------------------------------------------
4160
- * Class Definition
4161
- * ------------------------------------------------------------------------
4162
- */
4163
-
4182
+ display: 'string',
4183
+ popperConfig: '(null|object)'
4164
4184
  };
4185
+ /**
4186
+ * Class definition
4187
+ */
4165
4188
 
4166
- var Dropdown =
4167
- /*#__PURE__*/
4168
- function () {
4189
+ var Dropdown = /*#__PURE__*/function () {
4169
4190
  function Dropdown(element, config) {
4170
4191
  this._element = element;
4171
4192
  this._popper = null;
@@ -4181,13 +4202,11 @@
4181
4202
 
4182
4203
  // Public
4183
4204
  _proto.toggle = function toggle() {
4184
- if (this._element.disabled || $(this._element).hasClass(ClassName$4.DISABLED)) {
4205
+ if (this._element.disabled || $__default["default"](this._element).hasClass(CLASS_NAME_DISABLED$1)) {
4185
4206
  return;
4186
4207
  }
4187
4208
 
4188
- var parent = Dropdown._getParentFromElement(this._element);
4189
-
4190
- var isActive = $(this._menu).hasClass(ClassName$4.SHOW);
4209
+ var isActive = $__default["default"](this._menu).hasClass(CLASS_NAME_SHOW$5);
4191
4210
 
4192
4211
  Dropdown._clearMenus();
4193
4212
 
@@ -4195,24 +4214,36 @@
4195
4214
  return;
4196
4215
  }
4197
4216
 
4217
+ this.show(true);
4218
+ };
4219
+
4220
+ _proto.show = function show(usePopper) {
4221
+ if (usePopper === void 0) {
4222
+ usePopper = false;
4223
+ }
4224
+
4225
+ if (this._element.disabled || $__default["default"](this._element).hasClass(CLASS_NAME_DISABLED$1) || $__default["default"](this._menu).hasClass(CLASS_NAME_SHOW$5)) {
4226
+ return;
4227
+ }
4228
+
4198
4229
  var relatedTarget = {
4199
4230
  relatedTarget: this._element
4200
4231
  };
4201
- var showEvent = $.Event(Event$4.SHOW, relatedTarget);
4202
- $(parent).trigger(showEvent);
4232
+ var showEvent = $__default["default"].Event(EVENT_SHOW$3, relatedTarget);
4233
+
4234
+ var parent = Dropdown._getParentFromElement(this._element);
4235
+
4236
+ $__default["default"](parent).trigger(showEvent);
4203
4237
 
4204
4238
  if (showEvent.isDefaultPrevented()) {
4205
4239
  return;
4206
- } // Disable totally Popper.js for Dropdown in Navbar
4240
+ } // Totally disable Popper for Dropdowns in Navbar
4207
4241
 
4208
4242
 
4209
- if (!this._inNavbar) {
4210
- /**
4211
- * Check for Popper dependency
4212
- * Popper - https://popper.js.org
4213
- */
4214
- if (typeof Popper === 'undefined') {
4215
- throw new TypeError('Bootstrap\'s dropdowns require Popper.js (https://popper.js.org/)');
4243
+ if (!this._inNavbar && usePopper) {
4244
+ // Check for Popper dependency
4245
+ if (typeof Popper$1 === 'undefined') {
4246
+ throw new TypeError('Bootstrap\'s dropdowns require Popper (https://popper.js.org)');
4216
4247
  }
4217
4248
 
4218
4249
  var referenceElement = this._element;
@@ -4231,75 +4262,57 @@
4231
4262
 
4232
4263
 
4233
4264
  if (this._config.boundary !== 'scrollParent') {
4234
- $(parent).addClass(ClassName$4.POSITION_STATIC);
4265
+ $__default["default"](parent).addClass(CLASS_NAME_POSITION_STATIC);
4235
4266
  }
4236
4267
 
4237
- this._popper = new Popper(referenceElement, this._menu, this._getPopperConfig());
4268
+ this._popper = new Popper$1(referenceElement, this._menu, this._getPopperConfig());
4238
4269
  } // If this is a touch-enabled device we add extra
4239
4270
  // empty mouseover listeners to the body's immediate children;
4240
4271
  // only needed because of broken event delegation on iOS
4241
4272
  // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html
4242
4273
 
4243
4274
 
4244
- if ('ontouchstart' in document.documentElement && $(parent).closest(Selector$4.NAVBAR_NAV).length === 0) {
4245
- $(document.body).children().on('mouseover', null, $.noop);
4275
+ if ('ontouchstart' in document.documentElement && $__default["default"](parent).closest(SELECTOR_NAVBAR_NAV).length === 0) {
4276
+ $__default["default"](document.body).children().on('mouseover', null, $__default["default"].noop);
4246
4277
  }
4247
4278
 
4248
4279
  this._element.focus();
4249
4280
 
4250
4281
  this._element.setAttribute('aria-expanded', true);
4251
4282
 
4252
- $(this._menu).toggleClass(ClassName$4.SHOW);
4253
- $(parent).toggleClass(ClassName$4.SHOW).trigger($.Event(Event$4.SHOWN, relatedTarget));
4254
- };
4255
-
4256
- _proto.show = function show() {
4257
- if (this._element.disabled || $(this._element).hasClass(ClassName$4.DISABLED) || $(this._menu).hasClass(ClassName$4.SHOW)) {
4258
- return;
4259
- }
4260
-
4261
- var relatedTarget = {
4262
- relatedTarget: this._element
4263
- };
4264
- var showEvent = $.Event(Event$4.SHOW, relatedTarget);
4265
-
4266
- var parent = Dropdown._getParentFromElement(this._element);
4267
-
4268
- $(parent).trigger(showEvent);
4269
-
4270
- if (showEvent.isDefaultPrevented()) {
4271
- return;
4272
- }
4273
-
4274
- $(this._menu).toggleClass(ClassName$4.SHOW);
4275
- $(parent).toggleClass(ClassName$4.SHOW).trigger($.Event(Event$4.SHOWN, relatedTarget));
4283
+ $__default["default"](this._menu).toggleClass(CLASS_NAME_SHOW$5);
4284
+ $__default["default"](parent).toggleClass(CLASS_NAME_SHOW$5).trigger($__default["default"].Event(EVENT_SHOWN$3, relatedTarget));
4276
4285
  };
4277
4286
 
4278
4287
  _proto.hide = function hide() {
4279
- if (this._element.disabled || $(this._element).hasClass(ClassName$4.DISABLED) || !$(this._menu).hasClass(ClassName$4.SHOW)) {
4288
+ if (this._element.disabled || $__default["default"](this._element).hasClass(CLASS_NAME_DISABLED$1) || !$__default["default"](this._menu).hasClass(CLASS_NAME_SHOW$5)) {
4280
4289
  return;
4281
4290
  }
4282
4291
 
4283
4292
  var relatedTarget = {
4284
4293
  relatedTarget: this._element
4285
4294
  };
4286
- var hideEvent = $.Event(Event$4.HIDE, relatedTarget);
4295
+ var hideEvent = $__default["default"].Event(EVENT_HIDE$3, relatedTarget);
4287
4296
 
4288
4297
  var parent = Dropdown._getParentFromElement(this._element);
4289
4298
 
4290
- $(parent).trigger(hideEvent);
4299
+ $__default["default"](parent).trigger(hideEvent);
4291
4300
 
4292
4301
  if (hideEvent.isDefaultPrevented()) {
4293
4302
  return;
4294
4303
  }
4295
4304
 
4296
- $(this._menu).toggleClass(ClassName$4.SHOW);
4297
- $(parent).toggleClass(ClassName$4.SHOW).trigger($.Event(Event$4.HIDDEN, relatedTarget));
4305
+ if (this._popper) {
4306
+ this._popper.destroy();
4307
+ }
4308
+
4309
+ $__default["default"](this._menu).toggleClass(CLASS_NAME_SHOW$5);
4310
+ $__default["default"](parent).toggleClass(CLASS_NAME_SHOW$5).trigger($__default["default"].Event(EVENT_HIDDEN$3, relatedTarget));
4298
4311
  };
4299
4312
 
4300
4313
  _proto.dispose = function dispose() {
4301
- $.removeData(this._element, DATA_KEY$4);
4302
- $(this._element).off(EVENT_KEY$4);
4314
+ $__default["default"].removeData(this._element, DATA_KEY$6);
4315
+ $__default["default"](this._element).off(EVENT_KEY$6);
4303
4316
  this._element = null;
4304
4317
  this._menu = null;
4305
4318
 
@@ -4322,7 +4335,7 @@
4322
4335
  _proto._addEventListeners = function _addEventListeners() {
4323
4336
  var _this = this;
4324
4337
 
4325
- $(this._element).on(Event$4.CLICK, function (event) {
4338
+ $__default["default"](this._element).on(EVENT_CLICK, function (event) {
4326
4339
  event.preventDefault();
4327
4340
  event.stopPropagation();
4328
4341
 
@@ -4331,8 +4344,8 @@
4331
4344
  };
4332
4345
 
4333
4346
  _proto._getConfig = function _getConfig(config) {
4334
- config = _objectSpread({}, this.constructor.Default, $(this._element).data(), config);
4335
- Util.typeCheckConfig(NAME$4, config, this.constructor.DefaultType);
4347
+ config = _extends$1({}, this.constructor.Default, $__default["default"](this._element).data(), config);
4348
+ Util.typeCheckConfig(NAME$6, config, this.constructor.DefaultType);
4336
4349
  return config;
4337
4350
  };
4338
4351
 
@@ -4341,7 +4354,7 @@
4341
4354
  var parent = Dropdown._getParentFromElement(this._element);
4342
4355
 
4343
4356
  if (parent) {
4344
- this._menu = parent.querySelector(Selector$4.MENU);
4357
+ this._menu = parent.querySelector(SELECTOR_MENU);
4345
4358
  }
4346
4359
  }
4347
4360
 
@@ -4349,28 +4362,24 @@
4349
4362
  };
4350
4363
 
4351
4364
  _proto._getPlacement = function _getPlacement() {
4352
- var $parentDropdown = $(this._element.parentNode);
4353
- var placement = AttachmentMap.BOTTOM; // Handle dropup
4365
+ var $parentDropdown = $__default["default"](this._element.parentNode);
4366
+ var placement = PLACEMENT_BOTTOM; // Handle dropup
4354
4367
 
4355
- if ($parentDropdown.hasClass(ClassName$4.DROPUP)) {
4356
- placement = AttachmentMap.TOP;
4357
-
4358
- if ($(this._menu).hasClass(ClassName$4.MENURIGHT)) {
4359
- placement = AttachmentMap.TOPEND;
4360
- }
4361
- } else if ($parentDropdown.hasClass(ClassName$4.DROPRIGHT)) {
4362
- placement = AttachmentMap.RIGHT;
4363
- } else if ($parentDropdown.hasClass(ClassName$4.DROPLEFT)) {
4364
- placement = AttachmentMap.LEFT;
4365
- } else if ($(this._menu).hasClass(ClassName$4.MENURIGHT)) {
4366
- placement = AttachmentMap.BOTTOMEND;
4368
+ if ($parentDropdown.hasClass(CLASS_NAME_DROPUP)) {
4369
+ placement = $__default["default"](this._menu).hasClass(CLASS_NAME_MENURIGHT) ? PLACEMENT_TOPEND : PLACEMENT_TOP;
4370
+ } else if ($parentDropdown.hasClass(CLASS_NAME_DROPRIGHT)) {
4371
+ placement = PLACEMENT_RIGHT;
4372
+ } else if ($parentDropdown.hasClass(CLASS_NAME_DROPLEFT)) {
4373
+ placement = PLACEMENT_LEFT;
4374
+ } else if ($__default["default"](this._menu).hasClass(CLASS_NAME_MENURIGHT)) {
4375
+ placement = PLACEMENT_BOTTOMEND;
4367
4376
  }
4368
4377
 
4369
4378
  return placement;
4370
4379
  };
4371
4380
 
4372
4381
  _proto._detectNavbar = function _detectNavbar() {
4373
- return $(this._element).closest('.navbar').length > 0;
4382
+ return $__default["default"](this._element).closest('.navbar').length > 0;
4374
4383
  };
4375
4384
 
4376
4385
  _proto._getOffset = function _getOffset() {
@@ -4380,7 +4389,7 @@
4380
4389
 
4381
4390
  if (typeof this._config.offset === 'function') {
4382
4391
  offset.fn = function (data) {
4383
- data.offsets = _objectSpread({}, data.offsets, _this2._config.offset(data.offsets, _this2._element) || {});
4392
+ data.offsets = _extends$1({}, data.offsets, _this2._config.offset(data.offsets, _this2._element));
4384
4393
  return data;
4385
4394
  };
4386
4395
  } else {
@@ -4401,9 +4410,8 @@
4401
4410
  preventOverflow: {
4402
4411
  boundariesElement: this._config.boundary
4403
4412
  }
4404
- } // Disable Popper.js if we have a static display
4405
-
4406
- };
4413
+ }
4414
+ }; // Disable Popper if we have a static display
4407
4415
 
4408
4416
  if (this._config.display === 'static') {
4409
4417
  popperConfig.modifiers.applyStyle = {
@@ -4411,19 +4419,19 @@
4411
4419
  };
4412
4420
  }
4413
4421
 
4414
- return popperConfig;
4422
+ return _extends$1({}, popperConfig, this._config.popperConfig);
4415
4423
  } // Static
4416
4424
  ;
4417
4425
 
4418
4426
  Dropdown._jQueryInterface = function _jQueryInterface(config) {
4419
4427
  return this.each(function () {
4420
- var data = $(this).data(DATA_KEY$4);
4428
+ var data = $__default["default"](this).data(DATA_KEY$6);
4421
4429
 
4422
4430
  var _config = typeof config === 'object' ? config : null;
4423
4431
 
4424
4432
  if (!data) {
4425
4433
  data = new Dropdown(this, _config);
4426
- $(this).data(DATA_KEY$4, data);
4434
+ $__default["default"](this).data(DATA_KEY$6, data);
4427
4435
  }
4428
4436
 
4429
4437
  if (typeof config === 'string') {
@@ -4441,12 +4449,12 @@
4441
4449
  return;
4442
4450
  }
4443
4451
 
4444
- var toggles = [].slice.call(document.querySelectorAll(Selector$4.DATA_TOGGLE));
4452
+ var toggles = [].slice.call(document.querySelectorAll(SELECTOR_DATA_TOGGLE$2));
4445
4453
 
4446
4454
  for (var i = 0, len = toggles.length; i < len; i++) {
4447
4455
  var parent = Dropdown._getParentFromElement(toggles[i]);
4448
4456
 
4449
- var context = $(toggles[i]).data(DATA_KEY$4);
4457
+ var context = $__default["default"](toggles[i]).data(DATA_KEY$6);
4450
4458
  var relatedTarget = {
4451
4459
  relatedTarget: toggles[i]
4452
4460
  };
@@ -4461,16 +4469,16 @@
4461
4469
 
4462
4470
  var dropdownMenu = context._menu;
4463
4471
 
4464
- if (!$(parent).hasClass(ClassName$4.SHOW)) {
4472
+ if (!$__default["default"](parent).hasClass(CLASS_NAME_SHOW$5)) {
4465
4473
  continue;
4466
4474
  }
4467
4475
 
4468
- if (event && (event.type === 'click' && /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.which === TAB_KEYCODE) && $.contains(parent, event.target)) {
4476
+ if (event && (event.type === 'click' && /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.which === TAB_KEYCODE) && $__default["default"].contains(parent, event.target)) {
4469
4477
  continue;
4470
4478
  }
4471
4479
 
4472
- var hideEvent = $.Event(Event$4.HIDE, relatedTarget);
4473
- $(parent).trigger(hideEvent);
4480
+ var hideEvent = $__default["default"].Event(EVENT_HIDE$3, relatedTarget);
4481
+ $__default["default"](parent).trigger(hideEvent);
4474
4482
 
4475
4483
  if (hideEvent.isDefaultPrevented()) {
4476
4484
  continue;
@@ -4479,12 +4487,17 @@
4479
4487
 
4480
4488
 
4481
4489
  if ('ontouchstart' in document.documentElement) {
4482
- $(document.body).children().off('mouseover', null, $.noop);
4490
+ $__default["default"](document.body).children().off('mouseover', null, $__default["default"].noop);
4483
4491
  }
4484
4492
 
4485
4493
  toggles[i].setAttribute('aria-expanded', 'false');
4486
- $(dropdownMenu).removeClass(ClassName$4.SHOW);
4487
- $(parent).removeClass(ClassName$4.SHOW).trigger($.Event(Event$4.HIDDEN, relatedTarget));
4494
+
4495
+ if (context._popper) {
4496
+ context._popper.destroy();
4497
+ }
4498
+
4499
+ $__default["default"](dropdownMenu).removeClass(CLASS_NAME_SHOW$5);
4500
+ $__default["default"](parent).removeClass(CLASS_NAME_SHOW$5).trigger($__default["default"].Event(EVENT_HIDDEN$3, relatedTarget));
4488
4501
  }
4489
4502
  };
4490
4503
 
@@ -4508,32 +4521,37 @@
4508
4521
  // - If key is other than escape
4509
4522
  // - If key is not up or down => not a dropdown command
4510
4523
  // - If trigger inside the menu => not a dropdown command
4511
- if (/input|textarea/i.test(event.target.tagName) ? event.which === SPACE_KEYCODE || event.which !== ESCAPE_KEYCODE && (event.which !== ARROW_DOWN_KEYCODE && event.which !== ARROW_UP_KEYCODE || $(event.target).closest(Selector$4.MENU).length) : !REGEXP_KEYDOWN.test(event.which)) {
4524
+ if (/input|textarea/i.test(event.target.tagName) ? event.which === SPACE_KEYCODE || event.which !== ESCAPE_KEYCODE$1 && (event.which !== ARROW_DOWN_KEYCODE && event.which !== ARROW_UP_KEYCODE || $__default["default"](event.target).closest(SELECTOR_MENU).length) : !REGEXP_KEYDOWN.test(event.which)) {
4512
4525
  return;
4513
4526
  }
4514
4527
 
4515
- event.preventDefault();
4516
- event.stopPropagation();
4517
-
4518
- if (this.disabled || $(this).hasClass(ClassName$4.DISABLED)) {
4528
+ if (this.disabled || $__default["default"](this).hasClass(CLASS_NAME_DISABLED$1)) {
4519
4529
  return;
4520
4530
  }
4521
4531
 
4522
4532
  var parent = Dropdown._getParentFromElement(this);
4523
4533
 
4524
- var isActive = $(parent).hasClass(ClassName$4.SHOW);
4534
+ var isActive = $__default["default"](parent).hasClass(CLASS_NAME_SHOW$5);
4535
+
4536
+ if (!isActive && event.which === ESCAPE_KEYCODE$1) {
4537
+ return;
4538
+ }
4539
+
4540
+ event.preventDefault();
4541
+ event.stopPropagation();
4525
4542
 
4526
- if (!isActive || isActive && (event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE)) {
4527
- if (event.which === ESCAPE_KEYCODE) {
4528
- var toggle = parent.querySelector(Selector$4.DATA_TOGGLE);
4529
- $(toggle).trigger('focus');
4543
+ if (!isActive || event.which === ESCAPE_KEYCODE$1 || event.which === SPACE_KEYCODE) {
4544
+ if (event.which === ESCAPE_KEYCODE$1) {
4545
+ $__default["default"](parent.querySelector(SELECTOR_DATA_TOGGLE$2)).trigger('focus');
4530
4546
  }
4531
4547
 
4532
- $(this).trigger('click');
4548
+ $__default["default"](this).trigger('click');
4533
4549
  return;
4534
4550
  }
4535
4551
 
4536
- var items = [].slice.call(parent.querySelectorAll(Selector$4.VISIBLE_ITEMS));
4552
+ var items = [].slice.call(parent.querySelectorAll(SELECTOR_VISIBLE_ITEMS)).filter(function (item) {
4553
+ return $__default["default"](item).is(':visible');
4554
+ });
4537
4555
 
4538
4556
  if (items.length === 0) {
4539
4557
  return;
@@ -4561,120 +4579,105 @@
4561
4579
  _createClass(Dropdown, null, [{
4562
4580
  key: "VERSION",
4563
4581
  get: function get() {
4564
- return VERSION$4;
4582
+ return VERSION$6;
4565
4583
  }
4566
4584
  }, {
4567
4585
  key: "Default",
4568
4586
  get: function get() {
4569
- return Default$2;
4587
+ return Default$5;
4570
4588
  }
4571
4589
  }, {
4572
4590
  key: "DefaultType",
4573
4591
  get: function get() {
4574
- return DefaultType$2;
4592
+ return DefaultType$5;
4575
4593
  }
4576
4594
  }]);
4577
4595
 
4578
4596
  return Dropdown;
4579
4597
  }();
4580
4598
  /**
4581
- * ------------------------------------------------------------------------
4582
- * Data Api implementation
4583
- * ------------------------------------------------------------------------
4599
+ * Data API implementation
4584
4600
  */
4585
4601
 
4586
4602
 
4587
- $(document).on(Event$4.KEYDOWN_DATA_API, Selector$4.DATA_TOGGLE, Dropdown._dataApiKeydownHandler).on(Event$4.KEYDOWN_DATA_API, Selector$4.MENU, Dropdown._dataApiKeydownHandler).on(Event$4.CLICK_DATA_API + " " + Event$4.KEYUP_DATA_API, Dropdown._clearMenus).on(Event$4.CLICK_DATA_API, Selector$4.DATA_TOGGLE, function (event) {
4603
+ $__default["default"](document).on(EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$2, Dropdown._dataApiKeydownHandler).on(EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown._dataApiKeydownHandler).on(EVENT_CLICK_DATA_API$2 + " " + EVENT_KEYUP_DATA_API, Dropdown._clearMenus).on(EVENT_CLICK_DATA_API$2, SELECTOR_DATA_TOGGLE$2, function (event) {
4588
4604
  event.preventDefault();
4589
4605
  event.stopPropagation();
4590
4606
 
4591
- Dropdown._jQueryInterface.call($(this), 'toggle');
4592
- }).on(Event$4.CLICK_DATA_API, Selector$4.FORM_CHILD, function (e) {
4607
+ Dropdown._jQueryInterface.call($__default["default"](this), 'toggle');
4608
+ }).on(EVENT_CLICK_DATA_API$2, SELECTOR_FORM_CHILD, function (e) {
4593
4609
  e.stopPropagation();
4594
4610
  });
4595
4611
  /**
4596
- * ------------------------------------------------------------------------
4597
4612
  * jQuery
4598
- * ------------------------------------------------------------------------
4599
4613
  */
4600
4614
 
4601
- $.fn[NAME$4] = Dropdown._jQueryInterface;
4602
- $.fn[NAME$4].Constructor = Dropdown;
4615
+ $__default["default"].fn[NAME$6] = Dropdown._jQueryInterface;
4616
+ $__default["default"].fn[NAME$6].Constructor = Dropdown;
4603
4617
 
4604
- $.fn[NAME$4].noConflict = function () {
4605
- $.fn[NAME$4] = JQUERY_NO_CONFLICT$4;
4618
+ $__default["default"].fn[NAME$6].noConflict = function () {
4619
+ $__default["default"].fn[NAME$6] = JQUERY_NO_CONFLICT$6;
4606
4620
  return Dropdown._jQueryInterface;
4607
4621
  };
4608
4622
 
4609
4623
  /**
4610
- * ------------------------------------------------------------------------
4611
4624
  * Constants
4612
- * ------------------------------------------------------------------------
4613
4625
  */
4614
4626
 
4615
4627
  var NAME$5 = 'modal';
4616
- var VERSION$5 = '4.3.1';
4628
+ var VERSION$5 = '4.6.1';
4617
4629
  var DATA_KEY$5 = 'bs.modal';
4618
4630
  var EVENT_KEY$5 = "." + DATA_KEY$5;
4619
- var DATA_API_KEY$5 = '.data-api';
4620
- var JQUERY_NO_CONFLICT$5 = $.fn[NAME$5];
4621
- var ESCAPE_KEYCODE$1 = 27; // KeyboardEvent.which value for Escape (Esc) key
4631
+ var DATA_API_KEY$2 = '.data-api';
4632
+ var JQUERY_NO_CONFLICT$5 = $__default["default"].fn[NAME$5];
4633
+ var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key
4622
4634
 
4623
- var Default$3 = {
4635
+ var CLASS_NAME_SCROLLABLE = 'modal-dialog-scrollable';
4636
+ var CLASS_NAME_SCROLLBAR_MEASURER = 'modal-scrollbar-measure';
4637
+ var CLASS_NAME_BACKDROP = 'modal-backdrop';
4638
+ var CLASS_NAME_OPEN = 'modal-open';
4639
+ var CLASS_NAME_FADE$4 = 'fade';
4640
+ var CLASS_NAME_SHOW$4 = 'show';
4641
+ var CLASS_NAME_STATIC = 'modal-static';
4642
+ var EVENT_HIDE$2 = "hide" + EVENT_KEY$5;
4643
+ var EVENT_HIDE_PREVENTED = "hidePrevented" + EVENT_KEY$5;
4644
+ var EVENT_HIDDEN$2 = "hidden" + EVENT_KEY$5;
4645
+ var EVENT_SHOW$2 = "show" + EVENT_KEY$5;
4646
+ var EVENT_SHOWN$2 = "shown" + EVENT_KEY$5;
4647
+ var EVENT_FOCUSIN = "focusin" + EVENT_KEY$5;
4648
+ var EVENT_RESIZE = "resize" + EVENT_KEY$5;
4649
+ var EVENT_CLICK_DISMISS$1 = "click.dismiss" + EVENT_KEY$5;
4650
+ var EVENT_KEYDOWN_DISMISS = "keydown.dismiss" + EVENT_KEY$5;
4651
+ var EVENT_MOUSEUP_DISMISS = "mouseup.dismiss" + EVENT_KEY$5;
4652
+ var EVENT_MOUSEDOWN_DISMISS = "mousedown.dismiss" + EVENT_KEY$5;
4653
+ var EVENT_CLICK_DATA_API$1 = "click" + EVENT_KEY$5 + DATA_API_KEY$2;
4654
+ var SELECTOR_DIALOG = '.modal-dialog';
4655
+ var SELECTOR_MODAL_BODY = '.modal-body';
4656
+ var SELECTOR_DATA_TOGGLE$1 = '[data-toggle="modal"]';
4657
+ var SELECTOR_DATA_DISMISS$1 = '[data-dismiss="modal"]';
4658
+ var SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';
4659
+ var SELECTOR_STICKY_CONTENT = '.sticky-top';
4660
+ var Default$4 = {
4624
4661
  backdrop: true,
4625
4662
  keyboard: true,
4626
4663
  focus: true,
4627
4664
  show: true
4628
4665
  };
4629
- var DefaultType$3 = {
4666
+ var DefaultType$4 = {
4630
4667
  backdrop: '(boolean|string)',
4631
4668
  keyboard: 'boolean',
4632
4669
  focus: 'boolean',
4633
4670
  show: 'boolean'
4634
4671
  };
4635
- var Event$5 = {
4636
- HIDE: "hide" + EVENT_KEY$5,
4637
- HIDDEN: "hidden" + EVENT_KEY$5,
4638
- SHOW: "show" + EVENT_KEY$5,
4639
- SHOWN: "shown" + EVENT_KEY$5,
4640
- FOCUSIN: "focusin" + EVENT_KEY$5,
4641
- RESIZE: "resize" + EVENT_KEY$5,
4642
- CLICK_DISMISS: "click.dismiss" + EVENT_KEY$5,
4643
- KEYDOWN_DISMISS: "keydown.dismiss" + EVENT_KEY$5,
4644
- MOUSEUP_DISMISS: "mouseup.dismiss" + EVENT_KEY$5,
4645
- MOUSEDOWN_DISMISS: "mousedown.dismiss" + EVENT_KEY$5,
4646
- CLICK_DATA_API: "click" + EVENT_KEY$5 + DATA_API_KEY$5
4647
- };
4648
- var ClassName$5 = {
4649
- SCROLLABLE: 'modal-dialog-scrollable',
4650
- SCROLLBAR_MEASURER: 'modal-scrollbar-measure',
4651
- BACKDROP: 'modal-backdrop',
4652
- OPEN: 'modal-open',
4653
- FADE: 'fade',
4654
- SHOW: 'show'
4655
- };
4656
- var Selector$5 = {
4657
- DIALOG: '.modal-dialog',
4658
- MODAL_BODY: '.modal-body',
4659
- DATA_TOGGLE: '[data-toggle="modal"]',
4660
- DATA_DISMISS: '[data-dismiss="modal"]',
4661
- FIXED_CONTENT: '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',
4662
- STICKY_CONTENT: '.sticky-top'
4663
- /**
4664
- * ------------------------------------------------------------------------
4665
- * Class Definition
4666
- * ------------------------------------------------------------------------
4667
- */
4668
-
4669
- };
4672
+ /**
4673
+ * Class definition
4674
+ */
4670
4675
 
4671
- var Modal =
4672
- /*#__PURE__*/
4673
- function () {
4676
+ var Modal = /*#__PURE__*/function () {
4674
4677
  function Modal(element, config) {
4675
4678
  this._config = this._getConfig(config);
4676
4679
  this._element = element;
4677
- this._dialog = element.querySelector(Selector$5.DIALOG);
4680
+ this._dialog = element.querySelector(SELECTOR_DIALOG);
4678
4681
  this._backdrop = null;
4679
4682
  this._isShown = false;
4680
4683
  this._isBodyOverflowing = false;
@@ -4698,21 +4701,21 @@
4698
4701
  return;
4699
4702
  }
4700
4703
 
4701
- if ($(this._element).hasClass(ClassName$5.FADE)) {
4702
- this._isTransitioning = true;
4703
- }
4704
-
4705
- var showEvent = $.Event(Event$5.SHOW, {
4704
+ var showEvent = $__default["default"].Event(EVENT_SHOW$2, {
4706
4705
  relatedTarget: relatedTarget
4707
4706
  });
4708
- $(this._element).trigger(showEvent);
4707
+ $__default["default"](this._element).trigger(showEvent);
4709
4708
 
4710
- if (this._isShown || showEvent.isDefaultPrevented()) {
4709
+ if (showEvent.isDefaultPrevented()) {
4711
4710
  return;
4712
4711
  }
4713
4712
 
4714
4713
  this._isShown = true;
4715
4714
 
4715
+ if ($__default["default"](this._element).hasClass(CLASS_NAME_FADE$4)) {
4716
+ this._isTransitioning = true;
4717
+ }
4718
+
4716
4719
  this._checkScrollbar();
4717
4720
 
4718
4721
  this._setScrollbar();
@@ -4723,12 +4726,12 @@
4723
4726
 
4724
4727
  this._setResizeEvent();
4725
4728
 
4726
- $(this._element).on(Event$5.CLICK_DISMISS, Selector$5.DATA_DISMISS, function (event) {
4729
+ $__default["default"](this._element).on(EVENT_CLICK_DISMISS$1, SELECTOR_DATA_DISMISS$1, function (event) {
4727
4730
  return _this.hide(event);
4728
4731
  });
4729
- $(this._dialog).on(Event$5.MOUSEDOWN_DISMISS, function () {
4730
- $(_this._element).one(Event$5.MOUSEUP_DISMISS, function (event) {
4731
- if ($(event.target).is(_this._element)) {
4732
+ $__default["default"](this._dialog).on(EVENT_MOUSEDOWN_DISMISS, function () {
4733
+ $__default["default"](_this._element).one(EVENT_MOUSEUP_DISMISS, function (event) {
4734
+ if ($__default["default"](event.target).is(_this._element)) {
4732
4735
  _this._ignoreBackdropClick = true;
4733
4736
  }
4734
4737
  });
@@ -4750,15 +4753,15 @@
4750
4753
  return;
4751
4754
  }
4752
4755
 
4753
- var hideEvent = $.Event(Event$5.HIDE);
4754
- $(this._element).trigger(hideEvent);
4756
+ var hideEvent = $__default["default"].Event(EVENT_HIDE$2);
4757
+ $__default["default"](this._element).trigger(hideEvent);
4755
4758
 
4756
4759
  if (!this._isShown || hideEvent.isDefaultPrevented()) {
4757
4760
  return;
4758
4761
  }
4759
4762
 
4760
4763
  this._isShown = false;
4761
- var transition = $(this._element).hasClass(ClassName$5.FADE);
4764
+ var transition = $__default["default"](this._element).hasClass(CLASS_NAME_FADE$4);
4762
4765
 
4763
4766
  if (transition) {
4764
4767
  this._isTransitioning = true;
@@ -4768,14 +4771,14 @@
4768
4771
 
4769
4772
  this._setResizeEvent();
4770
4773
 
4771
- $(document).off(Event$5.FOCUSIN);
4772
- $(this._element).removeClass(ClassName$5.SHOW);
4773
- $(this._element).off(Event$5.CLICK_DISMISS);
4774
- $(this._dialog).off(Event$5.MOUSEDOWN_DISMISS);
4774
+ $__default["default"](document).off(EVENT_FOCUSIN);
4775
+ $__default["default"](this._element).removeClass(CLASS_NAME_SHOW$4);
4776
+ $__default["default"](this._element).off(EVENT_CLICK_DISMISS$1);
4777
+ $__default["default"](this._dialog).off(EVENT_MOUSEDOWN_DISMISS);
4775
4778
 
4776
4779
  if (transition) {
4777
4780
  var transitionDuration = Util.getTransitionDurationFromElement(this._element);
4778
- $(this._element).one(Util.TRANSITION_END, function (event) {
4781
+ $__default["default"](this._element).one(Util.TRANSITION_END, function (event) {
4779
4782
  return _this2._hideModal(event);
4780
4783
  }).emulateTransitionEnd(transitionDuration);
4781
4784
  } else {
@@ -4785,16 +4788,16 @@
4785
4788
 
4786
4789
  _proto.dispose = function dispose() {
4787
4790
  [window, this._element, this._dialog].forEach(function (htmlElement) {
4788
- return $(htmlElement).off(EVENT_KEY$5);
4791
+ return $__default["default"](htmlElement).off(EVENT_KEY$5);
4789
4792
  });
4790
4793
  /**
4791
- * `document` has 2 events `Event.FOCUSIN` and `Event.CLICK_DATA_API`
4794
+ * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`
4792
4795
  * Do not move `document` in `htmlElements` array
4793
- * It will remove `Event.CLICK_DATA_API` event that should remain
4796
+ * It will remove `EVENT_CLICK_DATA_API` event that should remain
4794
4797
  */
4795
4798
 
4796
- $(document).off(Event$5.FOCUSIN);
4797
- $.removeData(this._element, DATA_KEY$5);
4799
+ $__default["default"](document).off(EVENT_FOCUSIN);
4800
+ $__default["default"].removeData(this._element, DATA_KEY$5);
4798
4801
  this._config = null;
4799
4802
  this._element = null;
4800
4803
  this._dialog = null;
@@ -4812,15 +4815,49 @@
4812
4815
  ;
4813
4816
 
4814
4817
  _proto._getConfig = function _getConfig(config) {
4815
- config = _objectSpread({}, Default$3, config);
4816
- Util.typeCheckConfig(NAME$5, config, DefaultType$3);
4818
+ config = _extends$1({}, Default$4, config);
4819
+ Util.typeCheckConfig(NAME$5, config, DefaultType$4);
4817
4820
  return config;
4818
4821
  };
4819
4822
 
4820
- _proto._showElement = function _showElement(relatedTarget) {
4823
+ _proto._triggerBackdropTransition = function _triggerBackdropTransition() {
4821
4824
  var _this3 = this;
4822
4825
 
4823
- var transition = $(this._element).hasClass(ClassName$5.FADE);
4826
+ var hideEventPrevented = $__default["default"].Event(EVENT_HIDE_PREVENTED);
4827
+ $__default["default"](this._element).trigger(hideEventPrevented);
4828
+
4829
+ if (hideEventPrevented.isDefaultPrevented()) {
4830
+ return;
4831
+ }
4832
+
4833
+ var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
4834
+
4835
+ if (!isModalOverflowing) {
4836
+ this._element.style.overflowY = 'hidden';
4837
+ }
4838
+
4839
+ this._element.classList.add(CLASS_NAME_STATIC);
4840
+
4841
+ var modalTransitionDuration = Util.getTransitionDurationFromElement(this._dialog);
4842
+ $__default["default"](this._element).off(Util.TRANSITION_END);
4843
+ $__default["default"](this._element).one(Util.TRANSITION_END, function () {
4844
+ _this3._element.classList.remove(CLASS_NAME_STATIC);
4845
+
4846
+ if (!isModalOverflowing) {
4847
+ $__default["default"](_this3._element).one(Util.TRANSITION_END, function () {
4848
+ _this3._element.style.overflowY = '';
4849
+ }).emulateTransitionEnd(_this3._element, modalTransitionDuration);
4850
+ }
4851
+ }).emulateTransitionEnd(modalTransitionDuration);
4852
+
4853
+ this._element.focus();
4854
+ };
4855
+
4856
+ _proto._showElement = function _showElement(relatedTarget) {
4857
+ var _this4 = this;
4858
+
4859
+ var transition = $__default["default"](this._element).hasClass(CLASS_NAME_FADE$4);
4860
+ var modalBody = this._dialog ? this._dialog.querySelector(SELECTOR_MODAL_BODY) : null;
4824
4861
 
4825
4862
  if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {
4826
4863
  // Don't move modal's DOM position
@@ -4833,8 +4870,10 @@
4833
4870
 
4834
4871
  this._element.setAttribute('aria-modal', true);
4835
4872
 
4836
- if ($(this._dialog).hasClass(ClassName$5.SCROLLABLE)) {
4837
- this._dialog.querySelector(Selector$5.MODAL_BODY).scrollTop = 0;
4873
+ this._element.setAttribute('role', 'dialog');
4874
+
4875
+ if ($__default["default"](this._dialog).hasClass(CLASS_NAME_SCROLLABLE) && modalBody) {
4876
+ modalBody.scrollTop = 0;
4838
4877
  } else {
4839
4878
  this._element.scrollTop = 0;
4840
4879
  }
@@ -4843,74 +4882,76 @@
4843
4882
  Util.reflow(this._element);
4844
4883
  }
4845
4884
 
4846
- $(this._element).addClass(ClassName$5.SHOW);
4885
+ $__default["default"](this._element).addClass(CLASS_NAME_SHOW$4);
4847
4886
 
4848
4887
  if (this._config.focus) {
4849
4888
  this._enforceFocus();
4850
4889
  }
4851
4890
 
4852
- var shownEvent = $.Event(Event$5.SHOWN, {
4891
+ var shownEvent = $__default["default"].Event(EVENT_SHOWN$2, {
4853
4892
  relatedTarget: relatedTarget
4854
4893
  });
4855
4894
 
4856
4895
  var transitionComplete = function transitionComplete() {
4857
- if (_this3._config.focus) {
4858
- _this3._element.focus();
4896
+ if (_this4._config.focus) {
4897
+ _this4._element.focus();
4859
4898
  }
4860
4899
 
4861
- _this3._isTransitioning = false;
4862
- $(_this3._element).trigger(shownEvent);
4900
+ _this4._isTransitioning = false;
4901
+ $__default["default"](_this4._element).trigger(shownEvent);
4863
4902
  };
4864
4903
 
4865
4904
  if (transition) {
4866
4905
  var transitionDuration = Util.getTransitionDurationFromElement(this._dialog);
4867
- $(this._dialog).one(Util.TRANSITION_END, transitionComplete).emulateTransitionEnd(transitionDuration);
4906
+ $__default["default"](this._dialog).one(Util.TRANSITION_END, transitionComplete).emulateTransitionEnd(transitionDuration);
4868
4907
  } else {
4869
4908
  transitionComplete();
4870
4909
  }
4871
4910
  };
4872
4911
 
4873
4912
  _proto._enforceFocus = function _enforceFocus() {
4874
- var _this4 = this;
4913
+ var _this5 = this;
4875
4914
 
4876
- $(document).off(Event$5.FOCUSIN) // Guard against infinite focus loop
4877
- .on(Event$5.FOCUSIN, function (event) {
4878
- if (document !== event.target && _this4._element !== event.target && $(_this4._element).has(event.target).length === 0) {
4879
- _this4._element.focus();
4915
+ $__default["default"](document).off(EVENT_FOCUSIN) // Guard against infinite focus loop
4916
+ .on(EVENT_FOCUSIN, function (event) {
4917
+ if (document !== event.target && _this5._element !== event.target && $__default["default"](_this5._element).has(event.target).length === 0) {
4918
+ _this5._element.focus();
4880
4919
  }
4881
4920
  });
4882
4921
  };
4883
4922
 
4884
4923
  _proto._setEscapeEvent = function _setEscapeEvent() {
4885
- var _this5 = this;
4924
+ var _this6 = this;
4886
4925
 
4887
- if (this._isShown && this._config.keyboard) {
4888
- $(this._element).on(Event$5.KEYDOWN_DISMISS, function (event) {
4889
- if (event.which === ESCAPE_KEYCODE$1) {
4926
+ if (this._isShown) {
4927
+ $__default["default"](this._element).on(EVENT_KEYDOWN_DISMISS, function (event) {
4928
+ if (_this6._config.keyboard && event.which === ESCAPE_KEYCODE) {
4890
4929
  event.preventDefault();
4891
4930
 
4892
- _this5.hide();
4931
+ _this6.hide();
4932
+ } else if (!_this6._config.keyboard && event.which === ESCAPE_KEYCODE) {
4933
+ _this6._triggerBackdropTransition();
4893
4934
  }
4894
4935
  });
4895
4936
  } else if (!this._isShown) {
4896
- $(this._element).off(Event$5.KEYDOWN_DISMISS);
4937
+ $__default["default"](this._element).off(EVENT_KEYDOWN_DISMISS);
4897
4938
  }
4898
4939
  };
4899
4940
 
4900
4941
  _proto._setResizeEvent = function _setResizeEvent() {
4901
- var _this6 = this;
4942
+ var _this7 = this;
4902
4943
 
4903
4944
  if (this._isShown) {
4904
- $(window).on(Event$5.RESIZE, function (event) {
4905
- return _this6.handleUpdate(event);
4945
+ $__default["default"](window).on(EVENT_RESIZE, function (event) {
4946
+ return _this7.handleUpdate(event);
4906
4947
  });
4907
4948
  } else {
4908
- $(window).off(Event$5.RESIZE);
4949
+ $__default["default"](window).off(EVENT_RESIZE);
4909
4950
  }
4910
4951
  };
4911
4952
 
4912
4953
  _proto._hideModal = function _hideModal() {
4913
- var _this7 = this;
4954
+ var _this8 = this;
4914
4955
 
4915
4956
  this._element.style.display = 'none';
4916
4957
 
@@ -4918,43 +4959,45 @@
4918
4959
 
4919
4960
  this._element.removeAttribute('aria-modal');
4920
4961
 
4962
+ this._element.removeAttribute('role');
4963
+
4921
4964
  this._isTransitioning = false;
4922
4965
 
4923
4966
  this._showBackdrop(function () {
4924
- $(document.body).removeClass(ClassName$5.OPEN);
4967
+ $__default["default"](document.body).removeClass(CLASS_NAME_OPEN);
4925
4968
 
4926
- _this7._resetAdjustments();
4969
+ _this8._resetAdjustments();
4927
4970
 
4928
- _this7._resetScrollbar();
4971
+ _this8._resetScrollbar();
4929
4972
 
4930
- $(_this7._element).trigger(Event$5.HIDDEN);
4973
+ $__default["default"](_this8._element).trigger(EVENT_HIDDEN$2);
4931
4974
  });
4932
4975
  };
4933
4976
 
4934
4977
  _proto._removeBackdrop = function _removeBackdrop() {
4935
4978
  if (this._backdrop) {
4936
- $(this._backdrop).remove();
4979
+ $__default["default"](this._backdrop).remove();
4937
4980
  this._backdrop = null;
4938
4981
  }
4939
4982
  };
4940
4983
 
4941
4984
  _proto._showBackdrop = function _showBackdrop(callback) {
4942
- var _this8 = this;
4985
+ var _this9 = this;
4943
4986
 
4944
- var animate = $(this._element).hasClass(ClassName$5.FADE) ? ClassName$5.FADE : '';
4987
+ var animate = $__default["default"](this._element).hasClass(CLASS_NAME_FADE$4) ? CLASS_NAME_FADE$4 : '';
4945
4988
 
4946
4989
  if (this._isShown && this._config.backdrop) {
4947
4990
  this._backdrop = document.createElement('div');
4948
- this._backdrop.className = ClassName$5.BACKDROP;
4991
+ this._backdrop.className = CLASS_NAME_BACKDROP;
4949
4992
 
4950
4993
  if (animate) {
4951
4994
  this._backdrop.classList.add(animate);
4952
4995
  }
4953
4996
 
4954
- $(this._backdrop).appendTo(document.body);
4955
- $(this._element).on(Event$5.CLICK_DISMISS, function (event) {
4956
- if (_this8._ignoreBackdropClick) {
4957
- _this8._ignoreBackdropClick = false;
4997
+ $__default["default"](this._backdrop).appendTo(document.body);
4998
+ $__default["default"](this._element).on(EVENT_CLICK_DISMISS$1, function (event) {
4999
+ if (_this9._ignoreBackdropClick) {
5000
+ _this9._ignoreBackdropClick = false;
4958
5001
  return;
4959
5002
  }
4960
5003
 
@@ -4962,10 +5005,10 @@
4962
5005
  return;
4963
5006
  }
4964
5007
 
4965
- if (_this8._config.backdrop === 'static') {
4966
- _this8._element.focus();
5008
+ if (_this9._config.backdrop === 'static') {
5009
+ _this9._triggerBackdropTransition();
4967
5010
  } else {
4968
- _this8.hide();
5011
+ _this9.hide();
4969
5012
  }
4970
5013
  });
4971
5014
 
@@ -4973,7 +5016,7 @@
4973
5016
  Util.reflow(this._backdrop);
4974
5017
  }
4975
5018
 
4976
- $(this._backdrop).addClass(ClassName$5.SHOW);
5019
+ $__default["default"](this._backdrop).addClass(CLASS_NAME_SHOW$4);
4977
5020
 
4978
5021
  if (!callback) {
4979
5022
  return;
@@ -4985,22 +5028,22 @@
4985
5028
  }
4986
5029
 
4987
5030
  var backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop);
4988
- $(this._backdrop).one(Util.TRANSITION_END, callback).emulateTransitionEnd(backdropTransitionDuration);
5031
+ $__default["default"](this._backdrop).one(Util.TRANSITION_END, callback).emulateTransitionEnd(backdropTransitionDuration);
4989
5032
  } else if (!this._isShown && this._backdrop) {
4990
- $(this._backdrop).removeClass(ClassName$5.SHOW);
5033
+ $__default["default"](this._backdrop).removeClass(CLASS_NAME_SHOW$4);
4991
5034
 
4992
5035
  var callbackRemove = function callbackRemove() {
4993
- _this8._removeBackdrop();
5036
+ _this9._removeBackdrop();
4994
5037
 
4995
5038
  if (callback) {
4996
5039
  callback();
4997
5040
  }
4998
5041
  };
4999
5042
 
5000
- if ($(this._element).hasClass(ClassName$5.FADE)) {
5043
+ if ($__default["default"](this._element).hasClass(CLASS_NAME_FADE$4)) {
5001
5044
  var _backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop);
5002
5045
 
5003
- $(this._backdrop).one(Util.TRANSITION_END, callbackRemove).emulateTransitionEnd(_backdropTransitionDuration);
5046
+ $__default["default"](this._backdrop).one(Util.TRANSITION_END, callbackRemove).emulateTransitionEnd(_backdropTransitionDuration);
5004
5047
  } else {
5005
5048
  callbackRemove();
5006
5049
  }
@@ -5032,66 +5075,66 @@
5032
5075
 
5033
5076
  _proto._checkScrollbar = function _checkScrollbar() {
5034
5077
  var rect = document.body.getBoundingClientRect();
5035
- this._isBodyOverflowing = rect.left + rect.right < window.innerWidth;
5078
+ this._isBodyOverflowing = Math.round(rect.left + rect.right) < window.innerWidth;
5036
5079
  this._scrollbarWidth = this._getScrollbarWidth();
5037
5080
  };
5038
5081
 
5039
5082
  _proto._setScrollbar = function _setScrollbar() {
5040
- var _this9 = this;
5083
+ var _this10 = this;
5041
5084
 
5042
5085
  if (this._isBodyOverflowing) {
5043
5086
  // Note: DOMNode.style.paddingRight returns the actual value or '' if not set
5044
5087
  // while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set
5045
- var fixedContent = [].slice.call(document.querySelectorAll(Selector$5.FIXED_CONTENT));
5046
- var stickyContent = [].slice.call(document.querySelectorAll(Selector$5.STICKY_CONTENT)); // Adjust fixed content padding
5088
+ var fixedContent = [].slice.call(document.querySelectorAll(SELECTOR_FIXED_CONTENT));
5089
+ var stickyContent = [].slice.call(document.querySelectorAll(SELECTOR_STICKY_CONTENT)); // Adjust fixed content padding
5047
5090
 
5048
- $(fixedContent).each(function (index, element) {
5091
+ $__default["default"](fixedContent).each(function (index, element) {
5049
5092
  var actualPadding = element.style.paddingRight;
5050
- var calculatedPadding = $(element).css('padding-right');
5051
- $(element).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + _this9._scrollbarWidth + "px");
5093
+ var calculatedPadding = $__default["default"](element).css('padding-right');
5094
+ $__default["default"](element).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + _this10._scrollbarWidth + "px");
5052
5095
  }); // Adjust sticky content margin
5053
5096
 
5054
- $(stickyContent).each(function (index, element) {
5097
+ $__default["default"](stickyContent).each(function (index, element) {
5055
5098
  var actualMargin = element.style.marginRight;
5056
- var calculatedMargin = $(element).css('margin-right');
5057
- $(element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) - _this9._scrollbarWidth + "px");
5099
+ var calculatedMargin = $__default["default"](element).css('margin-right');
5100
+ $__default["default"](element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) - _this10._scrollbarWidth + "px");
5058
5101
  }); // Adjust body padding
5059
5102
 
5060
5103
  var actualPadding = document.body.style.paddingRight;
5061
- var calculatedPadding = $(document.body).css('padding-right');
5062
- $(document.body).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + this._scrollbarWidth + "px");
5104
+ var calculatedPadding = $__default["default"](document.body).css('padding-right');
5105
+ $__default["default"](document.body).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + this._scrollbarWidth + "px");
5063
5106
  }
5064
5107
 
5065
- $(document.body).addClass(ClassName$5.OPEN);
5108
+ $__default["default"](document.body).addClass(CLASS_NAME_OPEN);
5066
5109
  };
5067
5110
 
5068
5111
  _proto._resetScrollbar = function _resetScrollbar() {
5069
5112
  // Restore fixed content padding
5070
- var fixedContent = [].slice.call(document.querySelectorAll(Selector$5.FIXED_CONTENT));
5071
- $(fixedContent).each(function (index, element) {
5072
- var padding = $(element).data('padding-right');
5073
- $(element).removeData('padding-right');
5113
+ var fixedContent = [].slice.call(document.querySelectorAll(SELECTOR_FIXED_CONTENT));
5114
+ $__default["default"](fixedContent).each(function (index, element) {
5115
+ var padding = $__default["default"](element).data('padding-right');
5116
+ $__default["default"](element).removeData('padding-right');
5074
5117
  element.style.paddingRight = padding ? padding : '';
5075
5118
  }); // Restore sticky content
5076
5119
 
5077
- var elements = [].slice.call(document.querySelectorAll("" + Selector$5.STICKY_CONTENT));
5078
- $(elements).each(function (index, element) {
5079
- var margin = $(element).data('margin-right');
5120
+ var elements = [].slice.call(document.querySelectorAll("" + SELECTOR_STICKY_CONTENT));
5121
+ $__default["default"](elements).each(function (index, element) {
5122
+ var margin = $__default["default"](element).data('margin-right');
5080
5123
 
5081
5124
  if (typeof margin !== 'undefined') {
5082
- $(element).css('margin-right', margin).removeData('margin-right');
5125
+ $__default["default"](element).css('margin-right', margin).removeData('margin-right');
5083
5126
  }
5084
5127
  }); // Restore body padding
5085
5128
 
5086
- var padding = $(document.body).data('padding-right');
5087
- $(document.body).removeData('padding-right');
5129
+ var padding = $__default["default"](document.body).data('padding-right');
5130
+ $__default["default"](document.body).removeData('padding-right');
5088
5131
  document.body.style.paddingRight = padding ? padding : '';
5089
5132
  };
5090
5133
 
5091
5134
  _proto._getScrollbarWidth = function _getScrollbarWidth() {
5092
5135
  // thx d.walsh
5093
5136
  var scrollDiv = document.createElement('div');
5094
- scrollDiv.className = ClassName$5.SCROLLBAR_MEASURER;
5137
+ scrollDiv.className = CLASS_NAME_SCROLLBAR_MEASURER;
5095
5138
  document.body.appendChild(scrollDiv);
5096
5139
  var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth;
5097
5140
  document.body.removeChild(scrollDiv);
@@ -5101,13 +5144,13 @@
5101
5144
 
5102
5145
  Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) {
5103
5146
  return this.each(function () {
5104
- var data = $(this).data(DATA_KEY$5);
5147
+ var data = $__default["default"](this).data(DATA_KEY$5);
5105
5148
 
5106
- var _config = _objectSpread({}, Default$3, $(this).data(), typeof config === 'object' && config ? config : {});
5149
+ var _config = _extends$1({}, Default$4, $__default["default"](this).data(), typeof config === 'object' && config ? config : {});
5107
5150
 
5108
5151
  if (!data) {
5109
5152
  data = new Modal(this, _config);
5110
- $(this).data(DATA_KEY$5, data);
5153
+ $__default["default"](this).data(DATA_KEY$5, data);
5111
5154
  }
5112
5155
 
5113
5156
  if (typeof config === 'string') {
@@ -5130,21 +5173,19 @@
5130
5173
  }, {
5131
5174
  key: "Default",
5132
5175
  get: function get() {
5133
- return Default$3;
5176
+ return Default$4;
5134
5177
  }
5135
5178
  }]);
5136
5179
 
5137
5180
  return Modal;
5138
5181
  }();
5139
5182
  /**
5140
- * ------------------------------------------------------------------------
5141
- * Data Api implementation
5142
- * ------------------------------------------------------------------------
5183
+ * Data API implementation
5143
5184
  */
5144
5185
 
5145
5186
 
5146
- $(document).on(Event$5.CLICK_DATA_API, Selector$5.DATA_TOGGLE, function (event) {
5147
- var _this10 = this;
5187
+ $__default["default"](document).on(EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE$1, function (event) {
5188
+ var _this11 = this;
5148
5189
 
5149
5190
  var target;
5150
5191
  var selector = Util.getSelectorFromElement(this);
@@ -5153,45 +5194,43 @@
5153
5194
  target = document.querySelector(selector);
5154
5195
  }
5155
5196
 
5156
- var config = $(target).data(DATA_KEY$5) ? 'toggle' : _objectSpread({}, $(target).data(), $(this).data());
5197
+ var config = $__default["default"](target).data(DATA_KEY$5) ? 'toggle' : _extends$1({}, $__default["default"](target).data(), $__default["default"](this).data());
5157
5198
 
5158
5199
  if (this.tagName === 'A' || this.tagName === 'AREA') {
5159
5200
  event.preventDefault();
5160
5201
  }
5161
5202
 
5162
- var $target = $(target).one(Event$5.SHOW, function (showEvent) {
5203
+ var $target = $__default["default"](target).one(EVENT_SHOW$2, function (showEvent) {
5163
5204
  if (showEvent.isDefaultPrevented()) {
5164
5205
  // Only register focus restorer if modal will actually get shown
5165
5206
  return;
5166
5207
  }
5167
5208
 
5168
- $target.one(Event$5.HIDDEN, function () {
5169
- if ($(_this10).is(':visible')) {
5170
- _this10.focus();
5209
+ $target.one(EVENT_HIDDEN$2, function () {
5210
+ if ($__default["default"](_this11).is(':visible')) {
5211
+ _this11.focus();
5171
5212
  }
5172
5213
  });
5173
5214
  });
5174
5215
 
5175
- Modal._jQueryInterface.call($(target), config, this);
5216
+ Modal._jQueryInterface.call($__default["default"](target), config, this);
5176
5217
  });
5177
5218
  /**
5178
- * ------------------------------------------------------------------------
5179
5219
  * jQuery
5180
- * ------------------------------------------------------------------------
5181
5220
  */
5182
5221
 
5183
- $.fn[NAME$5] = Modal._jQueryInterface;
5184
- $.fn[NAME$5].Constructor = Modal;
5222
+ $__default["default"].fn[NAME$5] = Modal._jQueryInterface;
5223
+ $__default["default"].fn[NAME$5].Constructor = Modal;
5185
5224
 
5186
- $.fn[NAME$5].noConflict = function () {
5187
- $.fn[NAME$5] = JQUERY_NO_CONFLICT$5;
5225
+ $__default["default"].fn[NAME$5].noConflict = function () {
5226
+ $__default["default"].fn[NAME$5] = JQUERY_NO_CONFLICT$5;
5188
5227
  return Modal._jQueryInterface;
5189
5228
  };
5190
5229
 
5191
5230
  /**
5192
5231
  * --------------------------------------------------------------------------
5193
- * Bootstrap (v4.3.1): tools/sanitizer.js
5194
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5232
+ * Bootstrap (v4.6.1): tools/sanitizer.js
5233
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5195
5234
  * --------------------------------------------------------------------------
5196
5235
  */
5197
5236
  var uriAttrs = ['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href'];
@@ -5215,7 +5254,7 @@
5215
5254
  h5: [],
5216
5255
  h6: [],
5217
5256
  i: [],
5218
- img: ['src', 'alt', 'title', 'width', 'height'],
5257
+ img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],
5219
5258
  li: [],
5220
5259
  ol: [],
5221
5260
  p: [],
@@ -5228,28 +5267,28 @@
5228
5267
  strong: [],
5229
5268
  u: [],
5230
5269
  ul: []
5231
- /**
5232
- * A pattern that recognizes a commonly useful subset of URLs that are safe.
5233
- *
5234
- * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts
5235
- */
5236
-
5237
5270
  };
5238
- var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi;
5271
+ /**
5272
+ * A pattern that recognizes a commonly useful subset of URLs that are safe.
5273
+ *
5274
+ * Shoutout to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts
5275
+ */
5276
+
5277
+ var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i;
5239
5278
  /**
5240
5279
  * A pattern that matches safe data URLs. Only matches image, video and audio types.
5241
5280
  *
5242
- * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts
5281
+ * Shoutout to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts
5243
5282
  */
5244
5283
 
5245
- var DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;
5284
+ var DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i;
5246
5285
 
5247
5286
  function allowedAttribute(attr, allowedAttributeList) {
5248
5287
  var attrName = attr.nodeName.toLowerCase();
5249
5288
 
5250
5289
  if (allowedAttributeList.indexOf(attrName) !== -1) {
5251
5290
  if (uriAttrs.indexOf(attrName) !== -1) {
5252
- return Boolean(attr.nodeValue.match(SAFE_URL_PATTERN) || attr.nodeValue.match(DATA_URL_PATTERN));
5291
+ return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue));
5253
5292
  }
5254
5293
 
5255
5294
  return true;
@@ -5259,8 +5298,8 @@
5259
5298
  return attrRegex instanceof RegExp;
5260
5299
  }); // Check if a regular expression validates the attribute.
5261
5300
 
5262
- for (var i = 0, l = regExp.length; i < l; i++) {
5263
- if (attrName.match(regExp[i])) {
5301
+ for (var i = 0, len = regExp.length; i < len; i++) {
5302
+ if (regExp[i].test(attrName)) {
5264
5303
  return true;
5265
5304
  }
5266
5305
  }
@@ -5291,7 +5330,8 @@
5291
5330
  return "continue";
5292
5331
  }
5293
5332
 
5294
- var attributeList = [].slice.call(el.attributes);
5333
+ var attributeList = [].slice.call(el.attributes); // eslint-disable-next-line unicorn/prefer-spread
5334
+
5295
5335
  var whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || []);
5296
5336
  attributeList.forEach(function (attr) {
5297
5337
  if (!allowedAttribute(attr, whitelistedAttributes)) {
@@ -5301,7 +5341,7 @@
5301
5341
  };
5302
5342
 
5303
5343
  for (var i = 0, len = elements.length; i < len; i++) {
5304
- var _ret = _loop(i, len);
5344
+ var _ret = _loop(i);
5305
5345
 
5306
5346
  if (_ret === "continue") continue;
5307
5347
  }
@@ -5310,44 +5350,35 @@
5310
5350
  }
5311
5351
 
5312
5352
  /**
5313
- * ------------------------------------------------------------------------
5314
5353
  * Constants
5315
- * ------------------------------------------------------------------------
5316
5354
  */
5317
5355
 
5318
- var NAME$6 = 'tooltip';
5319
- var VERSION$6 = '4.3.1';
5320
- var DATA_KEY$6 = 'bs.tooltip';
5321
- var EVENT_KEY$6 = "." + DATA_KEY$6;
5322
- var JQUERY_NO_CONFLICT$6 = $.fn[NAME$6];
5323
- var CLASS_PREFIX = 'bs-tooltip';
5324
- var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
5356
+ var NAME$4 = 'tooltip';
5357
+ var VERSION$4 = '4.6.1';
5358
+ var DATA_KEY$4 = 'bs.tooltip';
5359
+ var EVENT_KEY$4 = "." + DATA_KEY$4;
5360
+ var JQUERY_NO_CONFLICT$4 = $__default["default"].fn[NAME$4];
5361
+ var CLASS_PREFIX$1 = 'bs-tooltip';
5362
+ var BSCLS_PREFIX_REGEX$1 = new RegExp("(^|\\s)" + CLASS_PREFIX$1 + "\\S+", 'g');
5325
5363
  var DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn'];
5326
- var DefaultType$4 = {
5327
- animation: 'boolean',
5328
- template: 'string',
5329
- title: '(string|element|function)',
5330
- trigger: 'string',
5331
- delay: '(number|object)',
5332
- html: 'boolean',
5333
- selector: '(string|boolean)',
5334
- placement: '(string|function)',
5335
- offset: '(number|string|function)',
5336
- container: '(string|element|boolean)',
5337
- fallbackPlacement: '(string|array)',
5338
- boundary: '(string|element)',
5339
- sanitize: 'boolean',
5340
- sanitizeFn: '(null|function)',
5341
- whiteList: 'object'
5342
- };
5343
- var AttachmentMap$1 = {
5364
+ var CLASS_NAME_FADE$3 = 'fade';
5365
+ var CLASS_NAME_SHOW$3 = 'show';
5366
+ var HOVER_STATE_SHOW = 'show';
5367
+ var HOVER_STATE_OUT = 'out';
5368
+ var SELECTOR_TOOLTIP_INNER = '.tooltip-inner';
5369
+ var SELECTOR_ARROW = '.arrow';
5370
+ var TRIGGER_HOVER = 'hover';
5371
+ var TRIGGER_FOCUS = 'focus';
5372
+ var TRIGGER_CLICK = 'click';
5373
+ var TRIGGER_MANUAL = 'manual';
5374
+ var AttachmentMap = {
5344
5375
  AUTO: 'auto',
5345
5376
  TOP: 'top',
5346
5377
  RIGHT: 'right',
5347
5378
  BOTTOM: 'bottom',
5348
5379
  LEFT: 'left'
5349
5380
  };
5350
- var Default$4 = {
5381
+ var Default$3 = {
5351
5382
  animation: true,
5352
5383
  template: '<div class="tooltip" role="tooltip">' + '<div class="arrow"></div>' + '<div class="tooltip-inner"></div></div>',
5353
5384
  trigger: 'hover focus',
@@ -5360,59 +5391,52 @@
5360
5391
  container: false,
5361
5392
  fallbackPlacement: 'flip',
5362
5393
  boundary: 'scrollParent',
5394
+ customClass: '',
5363
5395
  sanitize: true,
5364
5396
  sanitizeFn: null,
5365
- whiteList: DefaultWhitelist
5397
+ whiteList: DefaultWhitelist,
5398
+ popperConfig: null
5366
5399
  };
5367
- var HoverState = {
5368
- SHOW: 'show',
5369
- OUT: 'out'
5370
- };
5371
- var Event$6 = {
5372
- HIDE: "hide" + EVENT_KEY$6,
5373
- HIDDEN: "hidden" + EVENT_KEY$6,
5374
- SHOW: "show" + EVENT_KEY$6,
5375
- SHOWN: "shown" + EVENT_KEY$6,
5376
- INSERTED: "inserted" + EVENT_KEY$6,
5377
- CLICK: "click" + EVENT_KEY$6,
5378
- FOCUSIN: "focusin" + EVENT_KEY$6,
5379
- FOCUSOUT: "focusout" + EVENT_KEY$6,
5380
- MOUSEENTER: "mouseenter" + EVENT_KEY$6,
5381
- MOUSELEAVE: "mouseleave" + EVENT_KEY$6
5382
- };
5383
- var ClassName$6 = {
5384
- FADE: 'fade',
5385
- SHOW: 'show'
5386
- };
5387
- var Selector$6 = {
5388
- TOOLTIP: '.tooltip',
5389
- TOOLTIP_INNER: '.tooltip-inner',
5390
- ARROW: '.arrow'
5400
+ var DefaultType$3 = {
5401
+ animation: 'boolean',
5402
+ template: 'string',
5403
+ title: '(string|element|function)',
5404
+ trigger: 'string',
5405
+ delay: '(number|object)',
5406
+ html: 'boolean',
5407
+ selector: '(string|boolean)',
5408
+ placement: '(string|function)',
5409
+ offset: '(number|string|function)',
5410
+ container: '(string|element|boolean)',
5411
+ fallbackPlacement: '(string|array)',
5412
+ boundary: '(string|element)',
5413
+ customClass: '(string|function)',
5414
+ sanitize: 'boolean',
5415
+ sanitizeFn: '(null|function)',
5416
+ whiteList: 'object',
5417
+ popperConfig: '(null|object)'
5391
5418
  };
5392
- var Trigger = {
5393
- HOVER: 'hover',
5394
- FOCUS: 'focus',
5395
- CLICK: 'click',
5396
- MANUAL: 'manual'
5397
- /**
5398
- * ------------------------------------------------------------------------
5399
- * Class Definition
5400
- * ------------------------------------------------------------------------
5401
- */
5402
-
5419
+ var Event$1 = {
5420
+ HIDE: "hide" + EVENT_KEY$4,
5421
+ HIDDEN: "hidden" + EVENT_KEY$4,
5422
+ SHOW: "show" + EVENT_KEY$4,
5423
+ SHOWN: "shown" + EVENT_KEY$4,
5424
+ INSERTED: "inserted" + EVENT_KEY$4,
5425
+ CLICK: "click" + EVENT_KEY$4,
5426
+ FOCUSIN: "focusin" + EVENT_KEY$4,
5427
+ FOCUSOUT: "focusout" + EVENT_KEY$4,
5428
+ MOUSEENTER: "mouseenter" + EVENT_KEY$4,
5429
+ MOUSELEAVE: "mouseleave" + EVENT_KEY$4
5403
5430
  };
5431
+ /**
5432
+ * Class definition
5433
+ */
5404
5434
 
5405
- var Tooltip =
5406
- /*#__PURE__*/
5407
- function () {
5435
+ var Tooltip = /*#__PURE__*/function () {
5408
5436
  function Tooltip(element, config) {
5409
- /**
5410
- * Check for Popper dependency
5411
- * Popper - https://popper.js.org
5412
- */
5413
- if (typeof Popper === 'undefined') {
5414
- throw new TypeError('Bootstrap\'s tooltips require Popper.js (https://popper.js.org/)');
5415
- } // private
5437
+ if (typeof Popper$1 === 'undefined') {
5438
+ throw new TypeError('Bootstrap\'s tooltips require Popper (https://popper.js.org)');
5439
+ } // Private
5416
5440
 
5417
5441
 
5418
5442
  this._isEnabled = true;
@@ -5451,11 +5475,11 @@
5451
5475
 
5452
5476
  if (event) {
5453
5477
  var dataKey = this.constructor.DATA_KEY;
5454
- var context = $(event.currentTarget).data(dataKey);
5478
+ var context = $__default["default"](event.currentTarget).data(dataKey);
5455
5479
 
5456
5480
  if (!context) {
5457
5481
  context = new this.constructor(event.currentTarget, this._getDelegateConfig());
5458
- $(event.currentTarget).data(dataKey, context);
5482
+ $__default["default"](event.currentTarget).data(dataKey, context);
5459
5483
  }
5460
5484
 
5461
5485
  context._activeTrigger.click = !context._activeTrigger.click;
@@ -5466,7 +5490,7 @@
5466
5490
  context._leave(null, context);
5467
5491
  }
5468
5492
  } else {
5469
- if ($(this.getTipElement()).hasClass(ClassName$6.SHOW)) {
5493
+ if ($__default["default"](this.getTipElement()).hasClass(CLASS_NAME_SHOW$3)) {
5470
5494
  this._leave(null, this);
5471
5495
 
5472
5496
  return;
@@ -5478,12 +5502,12 @@
5478
5502
 
5479
5503
  _proto.dispose = function dispose() {
5480
5504
  clearTimeout(this._timeout);
5481
- $.removeData(this.element, this.constructor.DATA_KEY);
5482
- $(this.element).off(this.constructor.EVENT_KEY);
5483
- $(this.element).closest('.modal').off('hide.bs.modal');
5505
+ $__default["default"].removeData(this.element, this.constructor.DATA_KEY);
5506
+ $__default["default"](this.element).off(this.constructor.EVENT_KEY);
5507
+ $__default["default"](this.element).closest('.modal').off('hide.bs.modal', this._hideModalHandler);
5484
5508
 
5485
5509
  if (this.tip) {
5486
- $(this.tip).remove();
5510
+ $__default["default"](this.tip).remove();
5487
5511
  }
5488
5512
 
5489
5513
  this._isEnabled = null;
@@ -5491,7 +5515,7 @@
5491
5515
  this._hoverState = null;
5492
5516
  this._activeTrigger = null;
5493
5517
 
5494
- if (this._popper !== null) {
5518
+ if (this._popper) {
5495
5519
  this._popper.destroy();
5496
5520
  }
5497
5521
 
@@ -5504,16 +5528,16 @@
5504
5528
  _proto.show = function show() {
5505
5529
  var _this = this;
5506
5530
 
5507
- if ($(this.element).css('display') === 'none') {
5531
+ if ($__default["default"](this.element).css('display') === 'none') {
5508
5532
  throw new Error('Please use show on visible elements');
5509
5533
  }
5510
5534
 
5511
- var showEvent = $.Event(this.constructor.Event.SHOW);
5535
+ var showEvent = $__default["default"].Event(this.constructor.Event.SHOW);
5512
5536
 
5513
5537
  if (this.isWithContent() && this._isEnabled) {
5514
- $(this.element).trigger(showEvent);
5538
+ $__default["default"](this.element).trigger(showEvent);
5515
5539
  var shadowRoot = Util.findShadowRoot(this.element);
5516
- var isInTheDom = $.contains(shadowRoot !== null ? shadowRoot : this.element.ownerDocument.documentElement, this.element);
5540
+ var isInTheDom = $__default["default"].contains(shadowRoot !== null ? shadowRoot : this.element.ownerDocument.documentElement, this.element);
5517
5541
 
5518
5542
  if (showEvent.isDefaultPrevented() || !isInTheDom) {
5519
5543
  return;
@@ -5526,7 +5550,7 @@
5526
5550
  this.setContent();
5527
5551
 
5528
5552
  if (this.config.animation) {
5529
- $(tip).addClass(ClassName$6.FADE);
5553
+ $__default["default"](tip).addClass(CLASS_NAME_FADE$3);
5530
5554
  }
5531
5555
 
5532
5556
  var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement;
@@ -5537,43 +5561,22 @@
5537
5561
 
5538
5562
  var container = this._getContainer();
5539
5563
 
5540
- $(tip).data(this.constructor.DATA_KEY, this);
5564
+ $__default["default"](tip).data(this.constructor.DATA_KEY, this);
5541
5565
 
5542
- if (!$.contains(this.element.ownerDocument.documentElement, this.tip)) {
5543
- $(tip).appendTo(container);
5566
+ if (!$__default["default"].contains(this.element.ownerDocument.documentElement, this.tip)) {
5567
+ $__default["default"](tip).appendTo(container);
5544
5568
  }
5545
5569
 
5546
- $(this.element).trigger(this.constructor.Event.INSERTED);
5547
- this._popper = new Popper(this.element, tip, {
5548
- placement: attachment,
5549
- modifiers: {
5550
- offset: this._getOffset(),
5551
- flip: {
5552
- behavior: this.config.fallbackPlacement
5553
- },
5554
- arrow: {
5555
- element: Selector$6.ARROW
5556
- },
5557
- preventOverflow: {
5558
- boundariesElement: this.config.boundary
5559
- }
5560
- },
5561
- onCreate: function onCreate(data) {
5562
- if (data.originalPlacement !== data.placement) {
5563
- _this._handlePopperPlacementChange(data);
5564
- }
5565
- },
5566
- onUpdate: function onUpdate(data) {
5567
- return _this._handlePopperPlacementChange(data);
5568
- }
5569
- });
5570
- $(tip).addClass(ClassName$6.SHOW); // If this is a touch-enabled device we add extra
5570
+ $__default["default"](this.element).trigger(this.constructor.Event.INSERTED);
5571
+ this._popper = new Popper$1(this.element, tip, this._getPopperConfig(attachment));
5572
+ $__default["default"](tip).addClass(CLASS_NAME_SHOW$3);
5573
+ $__default["default"](tip).addClass(this.config.customClass); // If this is a touch-enabled device we add extra
5571
5574
  // empty mouseover listeners to the body's immediate children;
5572
5575
  // only needed because of broken event delegation on iOS
5573
5576
  // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html
5574
5577
 
5575
5578
  if ('ontouchstart' in document.documentElement) {
5576
- $(document.body).children().on('mouseover', null, $.noop);
5579
+ $__default["default"](document.body).children().on('mouseover', null, $__default["default"].noop);
5577
5580
  }
5578
5581
 
5579
5582
  var complete = function complete() {
@@ -5583,16 +5586,16 @@
5583
5586
 
5584
5587
  var prevHoverState = _this._hoverState;
5585
5588
  _this._hoverState = null;
5586
- $(_this.element).trigger(_this.constructor.Event.SHOWN);
5589
+ $__default["default"](_this.element).trigger(_this.constructor.Event.SHOWN);
5587
5590
 
5588
- if (prevHoverState === HoverState.OUT) {
5591
+ if (prevHoverState === HOVER_STATE_OUT) {
5589
5592
  _this._leave(null, _this);
5590
5593
  }
5591
5594
  };
5592
5595
 
5593
- if ($(this.tip).hasClass(ClassName$6.FADE)) {
5596
+ if ($__default["default"](this.tip).hasClass(CLASS_NAME_FADE$3)) {
5594
5597
  var transitionDuration = Util.getTransitionDurationFromElement(this.tip);
5595
- $(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
5598
+ $__default["default"](this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
5596
5599
  } else {
5597
5600
  complete();
5598
5601
  }
@@ -5603,10 +5606,10 @@
5603
5606
  var _this2 = this;
5604
5607
 
5605
5608
  var tip = this.getTipElement();
5606
- var hideEvent = $.Event(this.constructor.Event.HIDE);
5609
+ var hideEvent = $__default["default"].Event(this.constructor.Event.HIDE);
5607
5610
 
5608
5611
  var complete = function complete() {
5609
- if (_this2._hoverState !== HoverState.SHOW && tip.parentNode) {
5612
+ if (_this2._hoverState !== HOVER_STATE_SHOW && tip.parentNode) {
5610
5613
  tip.parentNode.removeChild(tip);
5611
5614
  }
5612
5615
 
@@ -5614,7 +5617,7 @@
5614
5617
 
5615
5618
  _this2.element.removeAttribute('aria-describedby');
5616
5619
 
5617
- $(_this2.element).trigger(_this2.constructor.Event.HIDDEN);
5620
+ $__default["default"](_this2.element).trigger(_this2.constructor.Event.HIDDEN);
5618
5621
 
5619
5622
  if (_this2._popper !== null) {
5620
5623
  _this2._popper.destroy();
@@ -5625,26 +5628,26 @@
5625
5628
  }
5626
5629
  };
5627
5630
 
5628
- $(this.element).trigger(hideEvent);
5631
+ $__default["default"](this.element).trigger(hideEvent);
5629
5632
 
5630
5633
  if (hideEvent.isDefaultPrevented()) {
5631
5634
  return;
5632
5635
  }
5633
5636
 
5634
- $(tip).removeClass(ClassName$6.SHOW); // If this is a touch-enabled device we remove the extra
5637
+ $__default["default"](tip).removeClass(CLASS_NAME_SHOW$3); // If this is a touch-enabled device we remove the extra
5635
5638
  // empty mouseover listeners we added for iOS support
5636
5639
 
5637
5640
  if ('ontouchstart' in document.documentElement) {
5638
- $(document.body).children().off('mouseover', null, $.noop);
5641
+ $__default["default"](document.body).children().off('mouseover', null, $__default["default"].noop);
5639
5642
  }
5640
5643
 
5641
- this._activeTrigger[Trigger.CLICK] = false;
5642
- this._activeTrigger[Trigger.FOCUS] = false;
5643
- this._activeTrigger[Trigger.HOVER] = false;
5644
+ this._activeTrigger[TRIGGER_CLICK] = false;
5645
+ this._activeTrigger[TRIGGER_FOCUS] = false;
5646
+ this._activeTrigger[TRIGGER_HOVER] = false;
5644
5647
 
5645
- if ($(this.tip).hasClass(ClassName$6.FADE)) {
5648
+ if ($__default["default"](this.tip).hasClass(CLASS_NAME_FADE$3)) {
5646
5649
  var transitionDuration = Util.getTransitionDurationFromElement(tip);
5647
- $(tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
5650
+ $__default["default"](tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
5648
5651
  } else {
5649
5652
  complete();
5650
5653
  }
@@ -5664,29 +5667,29 @@
5664
5667
  };
5665
5668
 
5666
5669
  _proto.addAttachmentClass = function addAttachmentClass(attachment) {
5667
- $(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
5670
+ $__default["default"](this.getTipElement()).addClass(CLASS_PREFIX$1 + "-" + attachment);
5668
5671
  };
5669
5672
 
5670
5673
  _proto.getTipElement = function getTipElement() {
5671
- this.tip = this.tip || $(this.config.template)[0];
5674
+ this.tip = this.tip || $__default["default"](this.config.template)[0];
5672
5675
  return this.tip;
5673
5676
  };
5674
5677
 
5675
5678
  _proto.setContent = function setContent() {
5676
5679
  var tip = this.getTipElement();
5677
- this.setElementContent($(tip.querySelectorAll(Selector$6.TOOLTIP_INNER)), this.getTitle());
5678
- $(tip).removeClass(ClassName$6.FADE + " " + ClassName$6.SHOW);
5680
+ this.setElementContent($__default["default"](tip.querySelectorAll(SELECTOR_TOOLTIP_INNER)), this.getTitle());
5681
+ $__default["default"](tip).removeClass(CLASS_NAME_FADE$3 + " " + CLASS_NAME_SHOW$3);
5679
5682
  };
5680
5683
 
5681
5684
  _proto.setElementContent = function setElementContent($element, content) {
5682
5685
  if (typeof content === 'object' && (content.nodeType || content.jquery)) {
5683
5686
  // Content is a DOM node or a jQuery
5684
5687
  if (this.config.html) {
5685
- if (!$(content).parent().is($element)) {
5688
+ if (!$__default["default"](content).parent().is($element)) {
5686
5689
  $element.empty().append(content);
5687
5690
  }
5688
5691
  } else {
5689
- $element.text($(content).text());
5692
+ $element.text($__default["default"](content).text());
5690
5693
  }
5691
5694
 
5692
5695
  return;
@@ -5714,14 +5717,43 @@
5714
5717
  } // Private
5715
5718
  ;
5716
5719
 
5717
- _proto._getOffset = function _getOffset() {
5720
+ _proto._getPopperConfig = function _getPopperConfig(attachment) {
5718
5721
  var _this3 = this;
5719
5722
 
5723
+ var defaultBsConfig = {
5724
+ placement: attachment,
5725
+ modifiers: {
5726
+ offset: this._getOffset(),
5727
+ flip: {
5728
+ behavior: this.config.fallbackPlacement
5729
+ },
5730
+ arrow: {
5731
+ element: SELECTOR_ARROW
5732
+ },
5733
+ preventOverflow: {
5734
+ boundariesElement: this.config.boundary
5735
+ }
5736
+ },
5737
+ onCreate: function onCreate(data) {
5738
+ if (data.originalPlacement !== data.placement) {
5739
+ _this3._handlePopperPlacementChange(data);
5740
+ }
5741
+ },
5742
+ onUpdate: function onUpdate(data) {
5743
+ return _this3._handlePopperPlacementChange(data);
5744
+ }
5745
+ };
5746
+ return _extends$1({}, defaultBsConfig, this.config.popperConfig);
5747
+ };
5748
+
5749
+ _proto._getOffset = function _getOffset() {
5750
+ var _this4 = this;
5751
+
5720
5752
  var offset = {};
5721
5753
 
5722
5754
  if (typeof this.config.offset === 'function') {
5723
5755
  offset.fn = function (data) {
5724
- data.offsets = _objectSpread({}, data.offsets, _this3.config.offset(data.offsets, _this3.element) || {});
5756
+ data.offsets = _extends$1({}, data.offsets, _this4.config.offset(data.offsets, _this4.element));
5725
5757
  return data;
5726
5758
  };
5727
5759
  } else {
@@ -5737,43 +5769,46 @@
5737
5769
  }
5738
5770
 
5739
5771
  if (Util.isElement(this.config.container)) {
5740
- return $(this.config.container);
5772
+ return $__default["default"](this.config.container);
5741
5773
  }
5742
5774
 
5743
- return $(document).find(this.config.container);
5775
+ return $__default["default"](document).find(this.config.container);
5744
5776
  };
5745
5777
 
5746
5778
  _proto._getAttachment = function _getAttachment(placement) {
5747
- return AttachmentMap$1[placement.toUpperCase()];
5779
+ return AttachmentMap[placement.toUpperCase()];
5748
5780
  };
5749
5781
 
5750
5782
  _proto._setListeners = function _setListeners() {
5751
- var _this4 = this;
5783
+ var _this5 = this;
5752
5784
 
5753
5785
  var triggers = this.config.trigger.split(' ');
5754
5786
  triggers.forEach(function (trigger) {
5755
5787
  if (trigger === 'click') {
5756
- $(_this4.element).on(_this4.constructor.Event.CLICK, _this4.config.selector, function (event) {
5757
- return _this4.toggle(event);
5788
+ $__default["default"](_this5.element).on(_this5.constructor.Event.CLICK, _this5.config.selector, function (event) {
5789
+ return _this5.toggle(event);
5758
5790
  });
5759
- } else if (trigger !== Trigger.MANUAL) {
5760
- var eventIn = trigger === Trigger.HOVER ? _this4.constructor.Event.MOUSEENTER : _this4.constructor.Event.FOCUSIN;
5761
- var eventOut = trigger === Trigger.HOVER ? _this4.constructor.Event.MOUSELEAVE : _this4.constructor.Event.FOCUSOUT;
5762
- $(_this4.element).on(eventIn, _this4.config.selector, function (event) {
5763
- return _this4._enter(event);
5764
- }).on(eventOut, _this4.config.selector, function (event) {
5765
- return _this4._leave(event);
5791
+ } else if (trigger !== TRIGGER_MANUAL) {
5792
+ var eventIn = trigger === TRIGGER_HOVER ? _this5.constructor.Event.MOUSEENTER : _this5.constructor.Event.FOCUSIN;
5793
+ var eventOut = trigger === TRIGGER_HOVER ? _this5.constructor.Event.MOUSELEAVE : _this5.constructor.Event.FOCUSOUT;
5794
+ $__default["default"](_this5.element).on(eventIn, _this5.config.selector, function (event) {
5795
+ return _this5._enter(event);
5796
+ }).on(eventOut, _this5.config.selector, function (event) {
5797
+ return _this5._leave(event);
5766
5798
  });
5767
5799
  }
5768
5800
  });
5769
- $(this.element).closest('.modal').on('hide.bs.modal', function () {
5770
- if (_this4.element) {
5771
- _this4.hide();
5801
+
5802
+ this._hideModalHandler = function () {
5803
+ if (_this5.element) {
5804
+ _this5.hide();
5772
5805
  }
5773
- });
5806
+ };
5807
+
5808
+ $__default["default"](this.element).closest('.modal').on('hide.bs.modal', this._hideModalHandler);
5774
5809
 
5775
5810
  if (this.config.selector) {
5776
- this.config = _objectSpread({}, this.config, {
5811
+ this.config = _extends$1({}, this.config, {
5777
5812
  trigger: 'manual',
5778
5813
  selector: ''
5779
5814
  });
@@ -5793,24 +5828,24 @@
5793
5828
 
5794
5829
  _proto._enter = function _enter(event, context) {
5795
5830
  var dataKey = this.constructor.DATA_KEY;
5796
- context = context || $(event.currentTarget).data(dataKey);
5831
+ context = context || $__default["default"](event.currentTarget).data(dataKey);
5797
5832
 
5798
5833
  if (!context) {
5799
5834
  context = new this.constructor(event.currentTarget, this._getDelegateConfig());
5800
- $(event.currentTarget).data(dataKey, context);
5835
+ $__default["default"](event.currentTarget).data(dataKey, context);
5801
5836
  }
5802
5837
 
5803
5838
  if (event) {
5804
- context._activeTrigger[event.type === 'focusin' ? Trigger.FOCUS : Trigger.HOVER] = true;
5839
+ context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true;
5805
5840
  }
5806
5841
 
5807
- if ($(context.getTipElement()).hasClass(ClassName$6.SHOW) || context._hoverState === HoverState.SHOW) {
5808
- context._hoverState = HoverState.SHOW;
5842
+ if ($__default["default"](context.getTipElement()).hasClass(CLASS_NAME_SHOW$3) || context._hoverState === HOVER_STATE_SHOW) {
5843
+ context._hoverState = HOVER_STATE_SHOW;
5809
5844
  return;
5810
5845
  }
5811
5846
 
5812
5847
  clearTimeout(context._timeout);
5813
- context._hoverState = HoverState.SHOW;
5848
+ context._hoverState = HOVER_STATE_SHOW;
5814
5849
 
5815
5850
  if (!context.config.delay || !context.config.delay.show) {
5816
5851
  context.show();
@@ -5818,7 +5853,7 @@
5818
5853
  }
5819
5854
 
5820
5855
  context._timeout = setTimeout(function () {
5821
- if (context._hoverState === HoverState.SHOW) {
5856
+ if (context._hoverState === HOVER_STATE_SHOW) {
5822
5857
  context.show();
5823
5858
  }
5824
5859
  }, context.config.delay.show);
@@ -5826,15 +5861,15 @@
5826
5861
 
5827
5862
  _proto._leave = function _leave(event, context) {
5828
5863
  var dataKey = this.constructor.DATA_KEY;
5829
- context = context || $(event.currentTarget).data(dataKey);
5864
+ context = context || $__default["default"](event.currentTarget).data(dataKey);
5830
5865
 
5831
5866
  if (!context) {
5832
5867
  context = new this.constructor(event.currentTarget, this._getDelegateConfig());
5833
- $(event.currentTarget).data(dataKey, context);
5868
+ $__default["default"](event.currentTarget).data(dataKey, context);
5834
5869
  }
5835
5870
 
5836
5871
  if (event) {
5837
- context._activeTrigger[event.type === 'focusout' ? Trigger.FOCUS : Trigger.HOVER] = false;
5872
+ context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = false;
5838
5873
  }
5839
5874
 
5840
5875
  if (context._isWithActiveTrigger()) {
@@ -5842,7 +5877,7 @@
5842
5877
  }
5843
5878
 
5844
5879
  clearTimeout(context._timeout);
5845
- context._hoverState = HoverState.OUT;
5880
+ context._hoverState = HOVER_STATE_OUT;
5846
5881
 
5847
5882
  if (!context.config.delay || !context.config.delay.hide) {
5848
5883
  context.hide();
@@ -5850,7 +5885,7 @@
5850
5885
  }
5851
5886
 
5852
5887
  context._timeout = setTimeout(function () {
5853
- if (context._hoverState === HoverState.OUT) {
5888
+ if (context._hoverState === HOVER_STATE_OUT) {
5854
5889
  context.hide();
5855
5890
  }
5856
5891
  }, context.config.delay.hide);
@@ -5867,13 +5902,13 @@
5867
5902
  };
5868
5903
 
5869
5904
  _proto._getConfig = function _getConfig(config) {
5870
- var dataAttributes = $(this.element).data();
5905
+ var dataAttributes = $__default["default"](this.element).data();
5871
5906
  Object.keys(dataAttributes).forEach(function (dataAttr) {
5872
5907
  if (DISALLOWED_ATTRIBUTES.indexOf(dataAttr) !== -1) {
5873
5908
  delete dataAttributes[dataAttr];
5874
5909
  }
5875
5910
  });
5876
- config = _objectSpread({}, this.constructor.Default, dataAttributes, typeof config === 'object' && config ? config : {});
5911
+ config = _extends$1({}, this.constructor.Default, dataAttributes, typeof config === 'object' && config ? config : {});
5877
5912
 
5878
5913
  if (typeof config.delay === 'number') {
5879
5914
  config.delay = {
@@ -5890,7 +5925,7 @@
5890
5925
  config.content = config.content.toString();
5891
5926
  }
5892
5927
 
5893
- Util.typeCheckConfig(NAME$6, config, this.constructor.DefaultType);
5928
+ Util.typeCheckConfig(NAME$4, config, this.constructor.DefaultType);
5894
5929
 
5895
5930
  if (config.sanitize) {
5896
5931
  config.template = sanitizeHtml(config.template, config.whiteList, config.sanitizeFn);
@@ -5914,8 +5949,8 @@
5914
5949
  };
5915
5950
 
5916
5951
  _proto._cleanTipClass = function _cleanTipClass() {
5917
- var $tip = $(this.getTipElement());
5918
- var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
5952
+ var $tip = $__default["default"](this.getTipElement());
5953
+ var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX$1);
5919
5954
 
5920
5955
  if (tabClass !== null && tabClass.length) {
5921
5956
  $tip.removeClass(tabClass.join(''));
@@ -5923,8 +5958,7 @@
5923
5958
  };
5924
5959
 
5925
5960
  _proto._handlePopperPlacementChange = function _handlePopperPlacementChange(popperData) {
5926
- var popperInstance = popperData.instance;
5927
- this.tip = popperInstance.popper;
5961
+ this.tip = popperData.instance.popper;
5928
5962
 
5929
5963
  this._cleanTipClass();
5930
5964
 
@@ -5939,7 +5973,7 @@
5939
5973
  return;
5940
5974
  }
5941
5975
 
5942
- $(tip).removeClass(ClassName$6.FADE);
5976
+ $__default["default"](tip).removeClass(CLASS_NAME_FADE$3);
5943
5977
  this.config.animation = false;
5944
5978
  this.hide();
5945
5979
  this.show();
@@ -5949,7 +5983,8 @@
5949
5983
 
5950
5984
  Tooltip._jQueryInterface = function _jQueryInterface(config) {
5951
5985
  return this.each(function () {
5952
- var data = $(this).data(DATA_KEY$6);
5986
+ var $element = $__default["default"](this);
5987
+ var data = $element.data(DATA_KEY$4);
5953
5988
 
5954
5989
  var _config = typeof config === 'object' && config;
5955
5990
 
@@ -5959,7 +5994,7 @@
5959
5994
 
5960
5995
  if (!data) {
5961
5996
  data = new Tooltip(this, _config);
5962
- $(this).data(DATA_KEY$6, data);
5997
+ $element.data(DATA_KEY$4, data);
5963
5998
  }
5964
5999
 
5965
6000
  if (typeof config === 'string') {
@@ -5975,112 +6010,99 @@
5975
6010
  _createClass(Tooltip, null, [{
5976
6011
  key: "VERSION",
5977
6012
  get: function get() {
5978
- return VERSION$6;
6013
+ return VERSION$4;
5979
6014
  }
5980
6015
  }, {
5981
6016
  key: "Default",
5982
6017
  get: function get() {
5983
- return Default$4;
6018
+ return Default$3;
5984
6019
  }
5985
6020
  }, {
5986
6021
  key: "NAME",
5987
6022
  get: function get() {
5988
- return NAME$6;
6023
+ return NAME$4;
5989
6024
  }
5990
6025
  }, {
5991
6026
  key: "DATA_KEY",
5992
6027
  get: function get() {
5993
- return DATA_KEY$6;
6028
+ return DATA_KEY$4;
5994
6029
  }
5995
6030
  }, {
5996
6031
  key: "Event",
5997
6032
  get: function get() {
5998
- return Event$6;
6033
+ return Event$1;
5999
6034
  }
6000
6035
  }, {
6001
6036
  key: "EVENT_KEY",
6002
6037
  get: function get() {
6003
- return EVENT_KEY$6;
6038
+ return EVENT_KEY$4;
6004
6039
  }
6005
6040
  }, {
6006
6041
  key: "DefaultType",
6007
6042
  get: function get() {
6008
- return DefaultType$4;
6043
+ return DefaultType$3;
6009
6044
  }
6010
6045
  }]);
6011
6046
 
6012
6047
  return Tooltip;
6013
6048
  }();
6014
6049
  /**
6015
- * ------------------------------------------------------------------------
6016
6050
  * jQuery
6017
- * ------------------------------------------------------------------------
6018
6051
  */
6019
6052
 
6020
6053
 
6021
- $.fn[NAME$6] = Tooltip._jQueryInterface;
6022
- $.fn[NAME$6].Constructor = Tooltip;
6054
+ $__default["default"].fn[NAME$4] = Tooltip._jQueryInterface;
6055
+ $__default["default"].fn[NAME$4].Constructor = Tooltip;
6023
6056
 
6024
- $.fn[NAME$6].noConflict = function () {
6025
- $.fn[NAME$6] = JQUERY_NO_CONFLICT$6;
6057
+ $__default["default"].fn[NAME$4].noConflict = function () {
6058
+ $__default["default"].fn[NAME$4] = JQUERY_NO_CONFLICT$4;
6026
6059
  return Tooltip._jQueryInterface;
6027
6060
  };
6028
6061
 
6029
6062
  /**
6030
- * ------------------------------------------------------------------------
6031
6063
  * Constants
6032
- * ------------------------------------------------------------------------
6033
6064
  */
6034
6065
 
6035
- var NAME$7 = 'popover';
6036
- var VERSION$7 = '4.3.1';
6037
- var DATA_KEY$7 = 'bs.popover';
6038
- var EVENT_KEY$7 = "." + DATA_KEY$7;
6039
- var JQUERY_NO_CONFLICT$7 = $.fn[NAME$7];
6040
- var CLASS_PREFIX$1 = 'bs-popover';
6041
- var BSCLS_PREFIX_REGEX$1 = new RegExp("(^|\\s)" + CLASS_PREFIX$1 + "\\S+", 'g');
6066
+ var NAME$3 = 'popover';
6067
+ var VERSION$3 = '4.6.1';
6068
+ var DATA_KEY$3 = 'bs.popover';
6069
+ var EVENT_KEY$3 = "." + DATA_KEY$3;
6070
+ var JQUERY_NO_CONFLICT$3 = $__default["default"].fn[NAME$3];
6071
+ var CLASS_PREFIX = 'bs-popover';
6072
+ var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
6073
+ var CLASS_NAME_FADE$2 = 'fade';
6074
+ var CLASS_NAME_SHOW$2 = 'show';
6075
+ var SELECTOR_TITLE = '.popover-header';
6076
+ var SELECTOR_CONTENT = '.popover-body';
6042
6077
 
6043
- var Default$5 = _objectSpread({}, Tooltip.Default, {
6078
+ var Default$2 = _extends$1({}, Tooltip.Default, {
6044
6079
  placement: 'right',
6045
6080
  trigger: 'click',
6046
6081
  content: '',
6047
6082
  template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
6048
6083
  });
6049
6084
 
6050
- var DefaultType$5 = _objectSpread({}, Tooltip.DefaultType, {
6085
+ var DefaultType$2 = _extends$1({}, Tooltip.DefaultType, {
6051
6086
  content: '(string|element|function)'
6052
6087
  });
6053
6088
 
6054
- var ClassName$7 = {
6055
- FADE: 'fade',
6056
- SHOW: 'show'
6057
- };
6058
- var Selector$7 = {
6059
- TITLE: '.popover-header',
6060
- CONTENT: '.popover-body'
6061
- };
6062
- var Event$7 = {
6063
- HIDE: "hide" + EVENT_KEY$7,
6064
- HIDDEN: "hidden" + EVENT_KEY$7,
6065
- SHOW: "show" + EVENT_KEY$7,
6066
- SHOWN: "shown" + EVENT_KEY$7,
6067
- INSERTED: "inserted" + EVENT_KEY$7,
6068
- CLICK: "click" + EVENT_KEY$7,
6069
- FOCUSIN: "focusin" + EVENT_KEY$7,
6070
- FOCUSOUT: "focusout" + EVENT_KEY$7,
6071
- MOUSEENTER: "mouseenter" + EVENT_KEY$7,
6072
- MOUSELEAVE: "mouseleave" + EVENT_KEY$7
6073
- /**
6074
- * ------------------------------------------------------------------------
6075
- * Class Definition
6076
- * ------------------------------------------------------------------------
6077
- */
6078
-
6089
+ var Event = {
6090
+ HIDE: "hide" + EVENT_KEY$3,
6091
+ HIDDEN: "hidden" + EVENT_KEY$3,
6092
+ SHOW: "show" + EVENT_KEY$3,
6093
+ SHOWN: "shown" + EVENT_KEY$3,
6094
+ INSERTED: "inserted" + EVENT_KEY$3,
6095
+ CLICK: "click" + EVENT_KEY$3,
6096
+ FOCUSIN: "focusin" + EVENT_KEY$3,
6097
+ FOCUSOUT: "focusout" + EVENT_KEY$3,
6098
+ MOUSEENTER: "mouseenter" + EVENT_KEY$3,
6099
+ MOUSELEAVE: "mouseleave" + EVENT_KEY$3
6079
6100
  };
6101
+ /**
6102
+ * Class definition
6103
+ */
6080
6104
 
6081
- var Popover =
6082
- /*#__PURE__*/
6083
- function (_Tooltip) {
6105
+ var Popover = /*#__PURE__*/function (_Tooltip) {
6084
6106
  _inheritsLoose(Popover, _Tooltip);
6085
6107
 
6086
6108
  function Popover() {
@@ -6095,18 +6117,18 @@
6095
6117
  };
6096
6118
 
6097
6119
  _proto.addAttachmentClass = function addAttachmentClass(attachment) {
6098
- $(this.getTipElement()).addClass(CLASS_PREFIX$1 + "-" + attachment);
6120
+ $__default["default"](this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
6099
6121
  };
6100
6122
 
6101
6123
  _proto.getTipElement = function getTipElement() {
6102
- this.tip = this.tip || $(this.config.template)[0];
6124
+ this.tip = this.tip || $__default["default"](this.config.template)[0];
6103
6125
  return this.tip;
6104
6126
  };
6105
6127
 
6106
6128
  _proto.setContent = function setContent() {
6107
- var $tip = $(this.getTipElement()); // We use append for html objects to maintain js events
6129
+ var $tip = $__default["default"](this.getTipElement()); // We use append for html objects to maintain js events
6108
6130
 
6109
- this.setElementContent($tip.find(Selector$7.TITLE), this.getTitle());
6131
+ this.setElementContent($tip.find(SELECTOR_TITLE), this.getTitle());
6110
6132
 
6111
6133
  var content = this._getContent();
6112
6134
 
@@ -6114,8 +6136,8 @@
6114
6136
  content = content.call(this.element);
6115
6137
  }
6116
6138
 
6117
- this.setElementContent($tip.find(Selector$7.CONTENT), content);
6118
- $tip.removeClass(ClassName$7.FADE + " " + ClassName$7.SHOW);
6139
+ this.setElementContent($tip.find(SELECTOR_CONTENT), content);
6140
+ $tip.removeClass(CLASS_NAME_FADE$2 + " " + CLASS_NAME_SHOW$2);
6119
6141
  } // Private
6120
6142
  ;
6121
6143
 
@@ -6124,8 +6146,8 @@
6124
6146
  };
6125
6147
 
6126
6148
  _proto._cleanTipClass = function _cleanTipClass() {
6127
- var $tip = $(this.getTipElement());
6128
- var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX$1);
6149
+ var $tip = $__default["default"](this.getTipElement());
6150
+ var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
6129
6151
 
6130
6152
  if (tabClass !== null && tabClass.length > 0) {
6131
6153
  $tip.removeClass(tabClass.join(''));
@@ -6135,7 +6157,7 @@
6135
6157
 
6136
6158
  Popover._jQueryInterface = function _jQueryInterface(config) {
6137
6159
  return this.each(function () {
6138
- var data = $(this).data(DATA_KEY$7);
6160
+ var data = $__default["default"](this).data(DATA_KEY$3);
6139
6161
 
6140
6162
  var _config = typeof config === 'object' ? config : null;
6141
6163
 
@@ -6145,7 +6167,7 @@
6145
6167
 
6146
6168
  if (!data) {
6147
6169
  data = new Popover(this, _config);
6148
- $(this).data(DATA_KEY$7, data);
6170
+ $__default["default"](this).data(DATA_KEY$3, data);
6149
6171
  }
6150
6172
 
6151
6173
  if (typeof config === 'string') {
@@ -6160,128 +6182,109 @@
6160
6182
 
6161
6183
  _createClass(Popover, null, [{
6162
6184
  key: "VERSION",
6163
- // Getters
6164
- get: function get() {
6165
- return VERSION$7;
6185
+ get: // Getters
6186
+ function get() {
6187
+ return VERSION$3;
6166
6188
  }
6167
6189
  }, {
6168
6190
  key: "Default",
6169
6191
  get: function get() {
6170
- return Default$5;
6192
+ return Default$2;
6171
6193
  }
6172
6194
  }, {
6173
6195
  key: "NAME",
6174
6196
  get: function get() {
6175
- return NAME$7;
6197
+ return NAME$3;
6176
6198
  }
6177
6199
  }, {
6178
6200
  key: "DATA_KEY",
6179
6201
  get: function get() {
6180
- return DATA_KEY$7;
6202
+ return DATA_KEY$3;
6181
6203
  }
6182
6204
  }, {
6183
6205
  key: "Event",
6184
6206
  get: function get() {
6185
- return Event$7;
6207
+ return Event;
6186
6208
  }
6187
6209
  }, {
6188
6210
  key: "EVENT_KEY",
6189
6211
  get: function get() {
6190
- return EVENT_KEY$7;
6212
+ return EVENT_KEY$3;
6191
6213
  }
6192
6214
  }, {
6193
6215
  key: "DefaultType",
6194
6216
  get: function get() {
6195
- return DefaultType$5;
6217
+ return DefaultType$2;
6196
6218
  }
6197
6219
  }]);
6198
6220
 
6199
6221
  return Popover;
6200
6222
  }(Tooltip);
6201
6223
  /**
6202
- * ------------------------------------------------------------------------
6203
6224
  * jQuery
6204
- * ------------------------------------------------------------------------
6205
6225
  */
6206
6226
 
6207
6227
 
6208
- $.fn[NAME$7] = Popover._jQueryInterface;
6209
- $.fn[NAME$7].Constructor = Popover;
6228
+ $__default["default"].fn[NAME$3] = Popover._jQueryInterface;
6229
+ $__default["default"].fn[NAME$3].Constructor = Popover;
6210
6230
 
6211
- $.fn[NAME$7].noConflict = function () {
6212
- $.fn[NAME$7] = JQUERY_NO_CONFLICT$7;
6231
+ $__default["default"].fn[NAME$3].noConflict = function () {
6232
+ $__default["default"].fn[NAME$3] = JQUERY_NO_CONFLICT$3;
6213
6233
  return Popover._jQueryInterface;
6214
6234
  };
6215
6235
 
6216
6236
  /**
6217
- * ------------------------------------------------------------------------
6218
6237
  * Constants
6219
- * ------------------------------------------------------------------------
6220
6238
  */
6221
6239
 
6222
- var NAME$8 = 'scrollspy';
6223
- var VERSION$8 = '4.3.1';
6224
- var DATA_KEY$8 = 'bs.scrollspy';
6225
- var EVENT_KEY$8 = "." + DATA_KEY$8;
6226
- var DATA_API_KEY$6 = '.data-api';
6227
- var JQUERY_NO_CONFLICT$8 = $.fn[NAME$8];
6228
- var Default$6 = {
6240
+ var NAME$2 = 'scrollspy';
6241
+ var VERSION$2 = '4.6.1';
6242
+ var DATA_KEY$2 = 'bs.scrollspy';
6243
+ var EVENT_KEY$2 = "." + DATA_KEY$2;
6244
+ var DATA_API_KEY$1 = '.data-api';
6245
+ var JQUERY_NO_CONFLICT$2 = $__default["default"].fn[NAME$2];
6246
+ var CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';
6247
+ var CLASS_NAME_ACTIVE$1 = 'active';
6248
+ var EVENT_ACTIVATE = "activate" + EVENT_KEY$2;
6249
+ var EVENT_SCROLL = "scroll" + EVENT_KEY$2;
6250
+ var EVENT_LOAD_DATA_API = "load" + EVENT_KEY$2 + DATA_API_KEY$1;
6251
+ var METHOD_OFFSET = 'offset';
6252
+ var METHOD_POSITION = 'position';
6253
+ var SELECTOR_DATA_SPY = '[data-spy="scroll"]';
6254
+ var SELECTOR_NAV_LIST_GROUP$1 = '.nav, .list-group';
6255
+ var SELECTOR_NAV_LINKS = '.nav-link';
6256
+ var SELECTOR_NAV_ITEMS = '.nav-item';
6257
+ var SELECTOR_LIST_ITEMS = '.list-group-item';
6258
+ var SELECTOR_DROPDOWN$1 = '.dropdown';
6259
+ var SELECTOR_DROPDOWN_ITEMS = '.dropdown-item';
6260
+ var SELECTOR_DROPDOWN_TOGGLE$1 = '.dropdown-toggle';
6261
+ var Default$1 = {
6229
6262
  offset: 10,
6230
6263
  method: 'auto',
6231
6264
  target: ''
6232
6265
  };
6233
- var DefaultType$6 = {
6266
+ var DefaultType$1 = {
6234
6267
  offset: 'number',
6235
6268
  method: 'string',
6236
6269
  target: '(string|element)'
6237
6270
  };
6238
- var Event$8 = {
6239
- ACTIVATE: "activate" + EVENT_KEY$8,
6240
- SCROLL: "scroll" + EVENT_KEY$8,
6241
- LOAD_DATA_API: "load" + EVENT_KEY$8 + DATA_API_KEY$6
6242
- };
6243
- var ClassName$8 = {
6244
- DROPDOWN_ITEM: 'dropdown-item',
6245
- DROPDOWN_MENU: 'dropdown-menu',
6246
- ACTIVE: 'active'
6247
- };
6248
- var Selector$8 = {
6249
- DATA_SPY: '[data-spy="scroll"]',
6250
- ACTIVE: '.active',
6251
- NAV_LIST_GROUP: '.nav, .list-group',
6252
- NAV_LINKS: '.nav-link',
6253
- NAV_ITEMS: '.nav-item',
6254
- LIST_ITEMS: '.list-group-item',
6255
- DROPDOWN: '.dropdown',
6256
- DROPDOWN_ITEMS: '.dropdown-item',
6257
- DROPDOWN_TOGGLE: '.dropdown-toggle'
6258
- };
6259
- var OffsetMethod = {
6260
- OFFSET: 'offset',
6261
- POSITION: 'position'
6262
- /**
6263
- * ------------------------------------------------------------------------
6264
- * Class Definition
6265
- * ------------------------------------------------------------------------
6266
- */
6267
-
6268
- };
6271
+ /**
6272
+ * Class definition
6273
+ */
6269
6274
 
6270
- var ScrollSpy =
6271
- /*#__PURE__*/
6272
- function () {
6275
+ var ScrollSpy = /*#__PURE__*/function () {
6273
6276
  function ScrollSpy(element, config) {
6274
6277
  var _this = this;
6275
6278
 
6276
6279
  this._element = element;
6277
6280
  this._scrollElement = element.tagName === 'BODY' ? window : element;
6278
6281
  this._config = this._getConfig(config);
6279
- this._selector = this._config.target + " " + Selector$8.NAV_LINKS + "," + (this._config.target + " " + Selector$8.LIST_ITEMS + ",") + (this._config.target + " " + Selector$8.DROPDOWN_ITEMS);
6282
+ this._selector = this._config.target + " " + SELECTOR_NAV_LINKS + "," + (this._config.target + " " + SELECTOR_LIST_ITEMS + ",") + (this._config.target + " " + SELECTOR_DROPDOWN_ITEMS);
6280
6283
  this._offsets = [];
6281
6284
  this._targets = [];
6282
6285
  this._activeTarget = null;
6283
6286
  this._scrollHeight = 0;
6284
- $(this._scrollElement).on(Event$8.SCROLL, function (event) {
6287
+ $__default["default"](this._scrollElement).on(EVENT_SCROLL, function (event) {
6285
6288
  return _this._process(event);
6286
6289
  });
6287
6290
  this.refresh();
@@ -6296,9 +6299,9 @@
6296
6299
  _proto.refresh = function refresh() {
6297
6300
  var _this2 = this;
6298
6301
 
6299
- var autoMethod = this._scrollElement === this._scrollElement.window ? OffsetMethod.OFFSET : OffsetMethod.POSITION;
6302
+ var autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION;
6300
6303
  var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
6301
- var offsetBase = offsetMethod === OffsetMethod.POSITION ? this._getScrollTop() : 0;
6304
+ var offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0;
6302
6305
  this._offsets = [];
6303
6306
  this._targets = [];
6304
6307
  this._scrollHeight = this._getScrollHeight();
@@ -6316,7 +6319,7 @@
6316
6319
 
6317
6320
  if (targetBCR.width || targetBCR.height) {
6318
6321
  // TODO (fat): remove sketch reliance on jQuery position/offset
6319
- return [$(target)[offsetMethod]().top + offsetBase, targetSelector];
6322
+ return [$__default["default"](target)[offsetMethod]().top + offsetBase, targetSelector];
6320
6323
  }
6321
6324
  }
6322
6325
 
@@ -6333,8 +6336,8 @@
6333
6336
  };
6334
6337
 
6335
6338
  _proto.dispose = function dispose() {
6336
- $.removeData(this._element, DATA_KEY$8);
6337
- $(this._scrollElement).off(EVENT_KEY$8);
6339
+ $__default["default"].removeData(this._element, DATA_KEY$2);
6340
+ $__default["default"](this._scrollElement).off(EVENT_KEY$2);
6338
6341
  this._element = null;
6339
6342
  this._scrollElement = null;
6340
6343
  this._config = null;
@@ -6347,20 +6350,20 @@
6347
6350
  ;
6348
6351
 
6349
6352
  _proto._getConfig = function _getConfig(config) {
6350
- config = _objectSpread({}, Default$6, typeof config === 'object' && config ? config : {});
6353
+ config = _extends$1({}, Default$1, typeof config === 'object' && config ? config : {});
6351
6354
 
6352
- if (typeof config.target !== 'string') {
6353
- var id = $(config.target).attr('id');
6355
+ if (typeof config.target !== 'string' && Util.isElement(config.target)) {
6356
+ var id = $__default["default"](config.target).attr('id');
6354
6357
 
6355
6358
  if (!id) {
6356
- id = Util.getUID(NAME$8);
6357
- $(config.target).attr('id', id);
6359
+ id = Util.getUID(NAME$2);
6360
+ $__default["default"](config.target).attr('id', id);
6358
6361
  }
6359
6362
 
6360
6363
  config.target = "#" + id;
6361
6364
  }
6362
6365
 
6363
- Util.typeCheckConfig(NAME$8, config, DefaultType$6);
6366
+ Util.typeCheckConfig(NAME$2, config, DefaultType$1);
6364
6367
  return config;
6365
6368
  };
6366
6369
 
@@ -6405,9 +6408,7 @@
6405
6408
  return;
6406
6409
  }
6407
6410
 
6408
- var offsetLength = this._offsets.length;
6409
-
6410
- for (var i = offsetLength; i--;) {
6411
+ for (var i = this._offsets.length; i--;) {
6411
6412
  var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]);
6412
6413
 
6413
6414
  if (isActiveTarget) {
@@ -6425,44 +6426,44 @@
6425
6426
  return selector + "[data-target=\"" + target + "\"]," + selector + "[href=\"" + target + "\"]";
6426
6427
  });
6427
6428
 
6428
- var $link = $([].slice.call(document.querySelectorAll(queries.join(','))));
6429
+ var $link = $__default["default"]([].slice.call(document.querySelectorAll(queries.join(','))));
6429
6430
 
6430
- if ($link.hasClass(ClassName$8.DROPDOWN_ITEM)) {
6431
- $link.closest(Selector$8.DROPDOWN).find(Selector$8.DROPDOWN_TOGGLE).addClass(ClassName$8.ACTIVE);
6432
- $link.addClass(ClassName$8.ACTIVE);
6431
+ if ($link.hasClass(CLASS_NAME_DROPDOWN_ITEM)) {
6432
+ $link.closest(SELECTOR_DROPDOWN$1).find(SELECTOR_DROPDOWN_TOGGLE$1).addClass(CLASS_NAME_ACTIVE$1);
6433
+ $link.addClass(CLASS_NAME_ACTIVE$1);
6433
6434
  } else {
6434
6435
  // Set triggered link as active
6435
- $link.addClass(ClassName$8.ACTIVE); // Set triggered links parents as active
6436
+ $link.addClass(CLASS_NAME_ACTIVE$1); // Set triggered links parents as active
6436
6437
  // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor
6437
6438
 
6438
- $link.parents(Selector$8.NAV_LIST_GROUP).prev(Selector$8.NAV_LINKS + ", " + Selector$8.LIST_ITEMS).addClass(ClassName$8.ACTIVE); // Handle special case when .nav-link is inside .nav-item
6439
+ $link.parents(SELECTOR_NAV_LIST_GROUP$1).prev(SELECTOR_NAV_LINKS + ", " + SELECTOR_LIST_ITEMS).addClass(CLASS_NAME_ACTIVE$1); // Handle special case when .nav-link is inside .nav-item
6439
6440
 
6440
- $link.parents(Selector$8.NAV_LIST_GROUP).prev(Selector$8.NAV_ITEMS).children(Selector$8.NAV_LINKS).addClass(ClassName$8.ACTIVE);
6441
+ $link.parents(SELECTOR_NAV_LIST_GROUP$1).prev(SELECTOR_NAV_ITEMS).children(SELECTOR_NAV_LINKS).addClass(CLASS_NAME_ACTIVE$1);
6441
6442
  }
6442
6443
 
6443
- $(this._scrollElement).trigger(Event$8.ACTIVATE, {
6444
+ $__default["default"](this._scrollElement).trigger(EVENT_ACTIVATE, {
6444
6445
  relatedTarget: target
6445
6446
  });
6446
6447
  };
6447
6448
 
6448
6449
  _proto._clear = function _clear() {
6449
6450
  [].slice.call(document.querySelectorAll(this._selector)).filter(function (node) {
6450
- return node.classList.contains(ClassName$8.ACTIVE);
6451
+ return node.classList.contains(CLASS_NAME_ACTIVE$1);
6451
6452
  }).forEach(function (node) {
6452
- return node.classList.remove(ClassName$8.ACTIVE);
6453
+ return node.classList.remove(CLASS_NAME_ACTIVE$1);
6453
6454
  });
6454
6455
  } // Static
6455
6456
  ;
6456
6457
 
6457
6458
  ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
6458
6459
  return this.each(function () {
6459
- var data = $(this).data(DATA_KEY$8);
6460
+ var data = $__default["default"](this).data(DATA_KEY$2);
6460
6461
 
6461
6462
  var _config = typeof config === 'object' && config;
6462
6463
 
6463
6464
  if (!data) {
6464
6465
  data = new ScrollSpy(this, _config);
6465
- $(this).data(DATA_KEY$8, data);
6466
+ $__default["default"](this).data(DATA_KEY$2, data);
6466
6467
  }
6467
6468
 
6468
6469
  if (typeof config === 'string') {
@@ -6478,93 +6479,76 @@
6478
6479
  _createClass(ScrollSpy, null, [{
6479
6480
  key: "VERSION",
6480
6481
  get: function get() {
6481
- return VERSION$8;
6482
+ return VERSION$2;
6482
6483
  }
6483
6484
  }, {
6484
6485
  key: "Default",
6485
6486
  get: function get() {
6486
- return Default$6;
6487
+ return Default$1;
6487
6488
  }
6488
6489
  }]);
6489
6490
 
6490
6491
  return ScrollSpy;
6491
6492
  }();
6492
6493
  /**
6493
- * ------------------------------------------------------------------------
6494
- * Data Api implementation
6495
- * ------------------------------------------------------------------------
6494
+ * Data API implementation
6496
6495
  */
6497
6496
 
6498
6497
 
6499
- $(window).on(Event$8.LOAD_DATA_API, function () {
6500
- var scrollSpys = [].slice.call(document.querySelectorAll(Selector$8.DATA_SPY));
6498
+ $__default["default"](window).on(EVENT_LOAD_DATA_API, function () {
6499
+ var scrollSpys = [].slice.call(document.querySelectorAll(SELECTOR_DATA_SPY));
6501
6500
  var scrollSpysLength = scrollSpys.length;
6502
6501
 
6503
6502
  for (var i = scrollSpysLength; i--;) {
6504
- var $spy = $(scrollSpys[i]);
6503
+ var $spy = $__default["default"](scrollSpys[i]);
6505
6504
 
6506
6505
  ScrollSpy._jQueryInterface.call($spy, $spy.data());
6507
6506
  }
6508
6507
  });
6509
6508
  /**
6510
- * ------------------------------------------------------------------------
6511
6509
  * jQuery
6512
- * ------------------------------------------------------------------------
6513
6510
  */
6514
6511
 
6515
- $.fn[NAME$8] = ScrollSpy._jQueryInterface;
6516
- $.fn[NAME$8].Constructor = ScrollSpy;
6512
+ $__default["default"].fn[NAME$2] = ScrollSpy._jQueryInterface;
6513
+ $__default["default"].fn[NAME$2].Constructor = ScrollSpy;
6517
6514
 
6518
- $.fn[NAME$8].noConflict = function () {
6519
- $.fn[NAME$8] = JQUERY_NO_CONFLICT$8;
6515
+ $__default["default"].fn[NAME$2].noConflict = function () {
6516
+ $__default["default"].fn[NAME$2] = JQUERY_NO_CONFLICT$2;
6520
6517
  return ScrollSpy._jQueryInterface;
6521
6518
  };
6522
6519
 
6523
6520
  /**
6524
- * ------------------------------------------------------------------------
6525
6521
  * Constants
6526
- * ------------------------------------------------------------------------
6527
6522
  */
6528
6523
 
6529
- var NAME$9 = 'tab';
6530
- var VERSION$9 = '4.3.1';
6531
- var DATA_KEY$9 = 'bs.tab';
6532
- var EVENT_KEY$9 = "." + DATA_KEY$9;
6533
- var DATA_API_KEY$7 = '.data-api';
6534
- var JQUERY_NO_CONFLICT$9 = $.fn[NAME$9];
6535
- var Event$9 = {
6536
- HIDE: "hide" + EVENT_KEY$9,
6537
- HIDDEN: "hidden" + EVENT_KEY$9,
6538
- SHOW: "show" + EVENT_KEY$9,
6539
- SHOWN: "shown" + EVENT_KEY$9,
6540
- CLICK_DATA_API: "click" + EVENT_KEY$9 + DATA_API_KEY$7
6541
- };
6542
- var ClassName$9 = {
6543
- DROPDOWN_MENU: 'dropdown-menu',
6544
- ACTIVE: 'active',
6545
- DISABLED: 'disabled',
6546
- FADE: 'fade',
6547
- SHOW: 'show'
6548
- };
6549
- var Selector$9 = {
6550
- DROPDOWN: '.dropdown',
6551
- NAV_LIST_GROUP: '.nav, .list-group',
6552
- ACTIVE: '.active',
6553
- ACTIVE_UL: '> li > .active',
6554
- DATA_TOGGLE: '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',
6555
- DROPDOWN_TOGGLE: '.dropdown-toggle',
6556
- DROPDOWN_ACTIVE_CHILD: '> .dropdown-menu .active'
6557
- /**
6558
- * ------------------------------------------------------------------------
6559
- * Class Definition
6560
- * ------------------------------------------------------------------------
6561
- */
6562
-
6563
- };
6524
+ var NAME$1 = 'tab';
6525
+ var VERSION$1 = '4.6.1';
6526
+ var DATA_KEY$1 = 'bs.tab';
6527
+ var EVENT_KEY$1 = "." + DATA_KEY$1;
6528
+ var DATA_API_KEY = '.data-api';
6529
+ var JQUERY_NO_CONFLICT$1 = $__default["default"].fn[NAME$1];
6530
+ var CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu';
6531
+ var CLASS_NAME_ACTIVE = 'active';
6532
+ var CLASS_NAME_DISABLED = 'disabled';
6533
+ var CLASS_NAME_FADE$1 = 'fade';
6534
+ var CLASS_NAME_SHOW$1 = 'show';
6535
+ var EVENT_HIDE$1 = "hide" + EVENT_KEY$1;
6536
+ var EVENT_HIDDEN$1 = "hidden" + EVENT_KEY$1;
6537
+ var EVENT_SHOW$1 = "show" + EVENT_KEY$1;
6538
+ var EVENT_SHOWN$1 = "shown" + EVENT_KEY$1;
6539
+ var EVENT_CLICK_DATA_API = "click" + EVENT_KEY$1 + DATA_API_KEY;
6540
+ var SELECTOR_DROPDOWN = '.dropdown';
6541
+ var SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';
6542
+ var SELECTOR_ACTIVE = '.active';
6543
+ var SELECTOR_ACTIVE_UL = '> li > .active';
6544
+ var SELECTOR_DATA_TOGGLE = '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]';
6545
+ var SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
6546
+ var SELECTOR_DROPDOWN_ACTIVE_CHILD = '> .dropdown-menu .active';
6547
+ /**
6548
+ * Class definition
6549
+ */
6564
6550
 
6565
- var Tab =
6566
- /*#__PURE__*/
6567
- function () {
6551
+ var Tab = /*#__PURE__*/function () {
6568
6552
  function Tab(element) {
6569
6553
  this._element = element;
6570
6554
  } // Getters
@@ -6576,33 +6560,33 @@
6576
6560
  _proto.show = function show() {
6577
6561
  var _this = this;
6578
6562
 
6579
- if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $(this._element).hasClass(ClassName$9.ACTIVE) || $(this._element).hasClass(ClassName$9.DISABLED)) {
6563
+ if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $__default["default"](this._element).hasClass(CLASS_NAME_ACTIVE) || $__default["default"](this._element).hasClass(CLASS_NAME_DISABLED)) {
6580
6564
  return;
6581
6565
  }
6582
6566
 
6583
6567
  var target;
6584
6568
  var previous;
6585
- var listElement = $(this._element).closest(Selector$9.NAV_LIST_GROUP)[0];
6569
+ var listElement = $__default["default"](this._element).closest(SELECTOR_NAV_LIST_GROUP)[0];
6586
6570
  var selector = Util.getSelectorFromElement(this._element);
6587
6571
 
6588
6572
  if (listElement) {
6589
- var itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? Selector$9.ACTIVE_UL : Selector$9.ACTIVE;
6590
- previous = $.makeArray($(listElement).find(itemSelector));
6573
+ var itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE;
6574
+ previous = $__default["default"].makeArray($__default["default"](listElement).find(itemSelector));
6591
6575
  previous = previous[previous.length - 1];
6592
6576
  }
6593
6577
 
6594
- var hideEvent = $.Event(Event$9.HIDE, {
6578
+ var hideEvent = $__default["default"].Event(EVENT_HIDE$1, {
6595
6579
  relatedTarget: this._element
6596
6580
  });
6597
- var showEvent = $.Event(Event$9.SHOW, {
6581
+ var showEvent = $__default["default"].Event(EVENT_SHOW$1, {
6598
6582
  relatedTarget: previous
6599
6583
  });
6600
6584
 
6601
6585
  if (previous) {
6602
- $(previous).trigger(hideEvent);
6586
+ $__default["default"](previous).trigger(hideEvent);
6603
6587
  }
6604
6588
 
6605
- $(this._element).trigger(showEvent);
6589
+ $__default["default"](this._element).trigger(showEvent);
6606
6590
 
6607
6591
  if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) {
6608
6592
  return;
@@ -6615,14 +6599,14 @@
6615
6599
  this._activate(this._element, listElement);
6616
6600
 
6617
6601
  var complete = function complete() {
6618
- var hiddenEvent = $.Event(Event$9.HIDDEN, {
6602
+ var hiddenEvent = $__default["default"].Event(EVENT_HIDDEN$1, {
6619
6603
  relatedTarget: _this._element
6620
6604
  });
6621
- var shownEvent = $.Event(Event$9.SHOWN, {
6605
+ var shownEvent = $__default["default"].Event(EVENT_SHOWN$1, {
6622
6606
  relatedTarget: previous
6623
6607
  });
6624
- $(previous).trigger(hiddenEvent);
6625
- $(_this._element).trigger(shownEvent);
6608
+ $__default["default"](previous).trigger(hiddenEvent);
6609
+ $__default["default"](_this._element).trigger(shownEvent);
6626
6610
  };
6627
6611
 
6628
6612
  if (target) {
@@ -6633,7 +6617,7 @@
6633
6617
  };
6634
6618
 
6635
6619
  _proto.dispose = function dispose() {
6636
- $.removeData(this._element, DATA_KEY$9);
6620
+ $__default["default"].removeData(this._element, DATA_KEY$1);
6637
6621
  this._element = null;
6638
6622
  } // Private
6639
6623
  ;
@@ -6641,9 +6625,9 @@
6641
6625
  _proto._activate = function _activate(element, container, callback) {
6642
6626
  var _this2 = this;
6643
6627
 
6644
- var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? $(container).find(Selector$9.ACTIVE_UL) : $(container).children(Selector$9.ACTIVE);
6628
+ var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? $__default["default"](container).find(SELECTOR_ACTIVE_UL) : $__default["default"](container).children(SELECTOR_ACTIVE);
6645
6629
  var active = activeElements[0];
6646
- var isTransitioning = callback && active && $(active).hasClass(ClassName$9.FADE);
6630
+ var isTransitioning = callback && active && $__default["default"](active).hasClass(CLASS_NAME_FADE$1);
6647
6631
 
6648
6632
  var complete = function complete() {
6649
6633
  return _this2._transitionComplete(element, active, callback);
@@ -6651,7 +6635,7 @@
6651
6635
 
6652
6636
  if (active && isTransitioning) {
6653
6637
  var transitionDuration = Util.getTransitionDurationFromElement(active);
6654
- $(active).removeClass(ClassName$9.SHOW).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
6638
+ $__default["default"](active).removeClass(CLASS_NAME_SHOW$1).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
6655
6639
  } else {
6656
6640
  complete();
6657
6641
  }
@@ -6659,11 +6643,11 @@
6659
6643
 
6660
6644
  _proto._transitionComplete = function _transitionComplete(element, active, callback) {
6661
6645
  if (active) {
6662
- $(active).removeClass(ClassName$9.ACTIVE);
6663
- var dropdownChild = $(active.parentNode).find(Selector$9.DROPDOWN_ACTIVE_CHILD)[0];
6646
+ $__default["default"](active).removeClass(CLASS_NAME_ACTIVE);
6647
+ var dropdownChild = $__default["default"](active.parentNode).find(SELECTOR_DROPDOWN_ACTIVE_CHILD)[0];
6664
6648
 
6665
6649
  if (dropdownChild) {
6666
- $(dropdownChild).removeClass(ClassName$9.ACTIVE);
6650
+ $__default["default"](dropdownChild).removeClass(CLASS_NAME_ACTIVE);
6667
6651
  }
6668
6652
 
6669
6653
  if (active.getAttribute('role') === 'tab') {
@@ -6671,7 +6655,7 @@
6671
6655
  }
6672
6656
  }
6673
6657
 
6674
- $(element).addClass(ClassName$9.ACTIVE);
6658
+ $__default["default"](element).addClass(CLASS_NAME_ACTIVE);
6675
6659
 
6676
6660
  if (element.getAttribute('role') === 'tab') {
6677
6661
  element.setAttribute('aria-selected', true);
@@ -6679,16 +6663,22 @@
6679
6663
 
6680
6664
  Util.reflow(element);
6681
6665
 
6682
- if (element.classList.contains(ClassName$9.FADE)) {
6683
- element.classList.add(ClassName$9.SHOW);
6666
+ if (element.classList.contains(CLASS_NAME_FADE$1)) {
6667
+ element.classList.add(CLASS_NAME_SHOW$1);
6668
+ }
6669
+
6670
+ var parent = element.parentNode;
6671
+
6672
+ if (parent && parent.nodeName === 'LI') {
6673
+ parent = parent.parentNode;
6684
6674
  }
6685
6675
 
6686
- if (element.parentNode && $(element.parentNode).hasClass(ClassName$9.DROPDOWN_MENU)) {
6687
- var dropdownElement = $(element).closest(Selector$9.DROPDOWN)[0];
6676
+ if (parent && $__default["default"](parent).hasClass(CLASS_NAME_DROPDOWN_MENU)) {
6677
+ var dropdownElement = $__default["default"](element).closest(SELECTOR_DROPDOWN)[0];
6688
6678
 
6689
6679
  if (dropdownElement) {
6690
- var dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(Selector$9.DROPDOWN_TOGGLE));
6691
- $(dropdownToggleList).addClass(ClassName$9.ACTIVE);
6680
+ var dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(SELECTOR_DROPDOWN_TOGGLE));
6681
+ $__default["default"](dropdownToggleList).addClass(CLASS_NAME_ACTIVE);
6692
6682
  }
6693
6683
 
6694
6684
  element.setAttribute('aria-expanded', true);
@@ -6702,12 +6692,12 @@
6702
6692
 
6703
6693
  Tab._jQueryInterface = function _jQueryInterface(config) {
6704
6694
  return this.each(function () {
6705
- var $this = $(this);
6706
- var data = $this.data(DATA_KEY$9);
6695
+ var $this = $__default["default"](this);
6696
+ var data = $this.data(DATA_KEY$1);
6707
6697
 
6708
6698
  if (!data) {
6709
6699
  data = new Tab(this);
6710
- $this.data(DATA_KEY$9, data);
6700
+ $this.data(DATA_KEY$1, data);
6711
6701
  }
6712
6702
 
6713
6703
  if (typeof config === 'string') {
@@ -6723,85 +6713,68 @@
6723
6713
  _createClass(Tab, null, [{
6724
6714
  key: "VERSION",
6725
6715
  get: function get() {
6726
- return VERSION$9;
6716
+ return VERSION$1;
6727
6717
  }
6728
6718
  }]);
6729
6719
 
6730
6720
  return Tab;
6731
6721
  }();
6732
6722
  /**
6733
- * ------------------------------------------------------------------------
6734
- * Data Api implementation
6735
- * ------------------------------------------------------------------------
6723
+ * Data API implementation
6736
6724
  */
6737
6725
 
6738
6726
 
6739
- $(document).on(Event$9.CLICK_DATA_API, Selector$9.DATA_TOGGLE, function (event) {
6727
+ $__default["default"](document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
6740
6728
  event.preventDefault();
6741
6729
 
6742
- Tab._jQueryInterface.call($(this), 'show');
6730
+ Tab._jQueryInterface.call($__default["default"](this), 'show');
6743
6731
  });
6744
6732
  /**
6745
- * ------------------------------------------------------------------------
6746
6733
  * jQuery
6747
- * ------------------------------------------------------------------------
6748
6734
  */
6749
6735
 
6750
- $.fn[NAME$9] = Tab._jQueryInterface;
6751
- $.fn[NAME$9].Constructor = Tab;
6736
+ $__default["default"].fn[NAME$1] = Tab._jQueryInterface;
6737
+ $__default["default"].fn[NAME$1].Constructor = Tab;
6752
6738
 
6753
- $.fn[NAME$9].noConflict = function () {
6754
- $.fn[NAME$9] = JQUERY_NO_CONFLICT$9;
6739
+ $__default["default"].fn[NAME$1].noConflict = function () {
6740
+ $__default["default"].fn[NAME$1] = JQUERY_NO_CONFLICT$1;
6755
6741
  return Tab._jQueryInterface;
6756
6742
  };
6757
6743
 
6758
6744
  /**
6759
- * ------------------------------------------------------------------------
6760
6745
  * Constants
6761
- * ------------------------------------------------------------------------
6762
6746
  */
6763
6747
 
6764
- var NAME$a = 'toast';
6765
- var VERSION$a = '4.3.1';
6766
- var DATA_KEY$a = 'bs.toast';
6767
- var EVENT_KEY$a = "." + DATA_KEY$a;
6768
- var JQUERY_NO_CONFLICT$a = $.fn[NAME$a];
6769
- var Event$a = {
6770
- CLICK_DISMISS: "click.dismiss" + EVENT_KEY$a,
6771
- HIDE: "hide" + EVENT_KEY$a,
6772
- HIDDEN: "hidden" + EVENT_KEY$a,
6773
- SHOW: "show" + EVENT_KEY$a,
6774
- SHOWN: "shown" + EVENT_KEY$a
6775
- };
6776
- var ClassName$a = {
6777
- FADE: 'fade',
6778
- HIDE: 'hide',
6779
- SHOW: 'show',
6780
- SHOWING: 'showing'
6781
- };
6782
- var DefaultType$7 = {
6783
- animation: 'boolean',
6784
- autohide: 'boolean',
6785
- delay: 'number'
6786
- };
6787
- var Default$7 = {
6748
+ var NAME = 'toast';
6749
+ var VERSION = '4.6.1';
6750
+ var DATA_KEY = 'bs.toast';
6751
+ var EVENT_KEY = "." + DATA_KEY;
6752
+ var JQUERY_NO_CONFLICT = $__default["default"].fn[NAME];
6753
+ var CLASS_NAME_FADE = 'fade';
6754
+ var CLASS_NAME_HIDE = 'hide';
6755
+ var CLASS_NAME_SHOW = 'show';
6756
+ var CLASS_NAME_SHOWING = 'showing';
6757
+ var EVENT_CLICK_DISMISS = "click.dismiss" + EVENT_KEY;
6758
+ var EVENT_HIDE = "hide" + EVENT_KEY;
6759
+ var EVENT_HIDDEN = "hidden" + EVENT_KEY;
6760
+ var EVENT_SHOW = "show" + EVENT_KEY;
6761
+ var EVENT_SHOWN = "shown" + EVENT_KEY;
6762
+ var SELECTOR_DATA_DISMISS = '[data-dismiss="toast"]';
6763
+ var Default = {
6788
6764
  animation: true,
6789
6765
  autohide: true,
6790
6766
  delay: 500
6791
6767
  };
6792
- var Selector$a = {
6793
- DATA_DISMISS: '[data-dismiss="toast"]'
6794
- /**
6795
- * ------------------------------------------------------------------------
6796
- * Class Definition
6797
- * ------------------------------------------------------------------------
6798
- */
6799
-
6768
+ var DefaultType = {
6769
+ animation: 'boolean',
6770
+ autohide: 'boolean',
6771
+ delay: 'number'
6800
6772
  };
6773
+ /**
6774
+ * Class definition
6775
+ */
6801
6776
 
6802
- var Toast =
6803
- /*#__PURE__*/
6804
- function () {
6777
+ var Toast = /*#__PURE__*/function () {
6805
6778
  function Toast(element, config) {
6806
6779
  this._element = element;
6807
6780
  this._config = this._getConfig(config);
@@ -6817,113 +6790,125 @@
6817
6790
  _proto.show = function show() {
6818
6791
  var _this = this;
6819
6792
 
6820
- $(this._element).trigger(Event$a.SHOW);
6793
+ var showEvent = $__default["default"].Event(EVENT_SHOW);
6794
+ $__default["default"](this._element).trigger(showEvent);
6795
+
6796
+ if (showEvent.isDefaultPrevented()) {
6797
+ return;
6798
+ }
6799
+
6800
+ this._clearTimeout();
6821
6801
 
6822
6802
  if (this._config.animation) {
6823
- this._element.classList.add(ClassName$a.FADE);
6803
+ this._element.classList.add(CLASS_NAME_FADE);
6824
6804
  }
6825
6805
 
6826
6806
  var complete = function complete() {
6827
- _this._element.classList.remove(ClassName$a.SHOWING);
6807
+ _this._element.classList.remove(CLASS_NAME_SHOWING);
6828
6808
 
6829
- _this._element.classList.add(ClassName$a.SHOW);
6809
+ _this._element.classList.add(CLASS_NAME_SHOW);
6830
6810
 
6831
- $(_this._element).trigger(Event$a.SHOWN);
6811
+ $__default["default"](_this._element).trigger(EVENT_SHOWN);
6832
6812
 
6833
6813
  if (_this._config.autohide) {
6834
- _this.hide();
6814
+ _this._timeout = setTimeout(function () {
6815
+ _this.hide();
6816
+ }, _this._config.delay);
6835
6817
  }
6836
6818
  };
6837
6819
 
6838
- this._element.classList.remove(ClassName$a.HIDE);
6820
+ this._element.classList.remove(CLASS_NAME_HIDE);
6821
+
6822
+ Util.reflow(this._element);
6839
6823
 
6840
- this._element.classList.add(ClassName$a.SHOWING);
6824
+ this._element.classList.add(CLASS_NAME_SHOWING);
6841
6825
 
6842
6826
  if (this._config.animation) {
6843
6827
  var transitionDuration = Util.getTransitionDurationFromElement(this._element);
6844
- $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
6828
+ $__default["default"](this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
6845
6829
  } else {
6846
6830
  complete();
6847
6831
  }
6848
6832
  };
6849
6833
 
6850
- _proto.hide = function hide(withoutTimeout) {
6851
- var _this2 = this;
6852
-
6853
- if (!this._element.classList.contains(ClassName$a.SHOW)) {
6834
+ _proto.hide = function hide() {
6835
+ if (!this._element.classList.contains(CLASS_NAME_SHOW)) {
6854
6836
  return;
6855
6837
  }
6856
6838
 
6857
- $(this._element).trigger(Event$a.HIDE);
6839
+ var hideEvent = $__default["default"].Event(EVENT_HIDE);
6840
+ $__default["default"](this._element).trigger(hideEvent);
6858
6841
 
6859
- if (withoutTimeout) {
6860
- this._close();
6861
- } else {
6862
- this._timeout = setTimeout(function () {
6863
- _this2._close();
6864
- }, this._config.delay);
6842
+ if (hideEvent.isDefaultPrevented()) {
6843
+ return;
6865
6844
  }
6845
+
6846
+ this._close();
6866
6847
  };
6867
6848
 
6868
6849
  _proto.dispose = function dispose() {
6869
- clearTimeout(this._timeout);
6870
- this._timeout = null;
6850
+ this._clearTimeout();
6871
6851
 
6872
- if (this._element.classList.contains(ClassName$a.SHOW)) {
6873
- this._element.classList.remove(ClassName$a.SHOW);
6852
+ if (this._element.classList.contains(CLASS_NAME_SHOW)) {
6853
+ this._element.classList.remove(CLASS_NAME_SHOW);
6874
6854
  }
6875
6855
 
6876
- $(this._element).off(Event$a.CLICK_DISMISS);
6877
- $.removeData(this._element, DATA_KEY$a);
6856
+ $__default["default"](this._element).off(EVENT_CLICK_DISMISS);
6857
+ $__default["default"].removeData(this._element, DATA_KEY);
6878
6858
  this._element = null;
6879
6859
  this._config = null;
6880
6860
  } // Private
6881
6861
  ;
6882
6862
 
6883
6863
  _proto._getConfig = function _getConfig(config) {
6884
- config = _objectSpread({}, Default$7, $(this._element).data(), typeof config === 'object' && config ? config : {});
6885
- Util.typeCheckConfig(NAME$a, config, this.constructor.DefaultType);
6864
+ config = _extends$1({}, Default, $__default["default"](this._element).data(), typeof config === 'object' && config ? config : {});
6865
+ Util.typeCheckConfig(NAME, config, this.constructor.DefaultType);
6886
6866
  return config;
6887
6867
  };
6888
6868
 
6889
6869
  _proto._setListeners = function _setListeners() {
6890
- var _this3 = this;
6870
+ var _this2 = this;
6891
6871
 
6892
- $(this._element).on(Event$a.CLICK_DISMISS, Selector$a.DATA_DISMISS, function () {
6893
- return _this3.hide(true);
6872
+ $__default["default"](this._element).on(EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, function () {
6873
+ return _this2.hide();
6894
6874
  });
6895
6875
  };
6896
6876
 
6897
6877
  _proto._close = function _close() {
6898
- var _this4 = this;
6878
+ var _this3 = this;
6899
6879
 
6900
6880
  var complete = function complete() {
6901
- _this4._element.classList.add(ClassName$a.HIDE);
6881
+ _this3._element.classList.add(CLASS_NAME_HIDE);
6902
6882
 
6903
- $(_this4._element).trigger(Event$a.HIDDEN);
6883
+ $__default["default"](_this3._element).trigger(EVENT_HIDDEN);
6904
6884
  };
6905
6885
 
6906
- this._element.classList.remove(ClassName$a.SHOW);
6886
+ this._element.classList.remove(CLASS_NAME_SHOW);
6907
6887
 
6908
6888
  if (this._config.animation) {
6909
6889
  var transitionDuration = Util.getTransitionDurationFromElement(this._element);
6910
- $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
6890
+ $__default["default"](this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
6911
6891
  } else {
6912
6892
  complete();
6913
6893
  }
6894
+ };
6895
+
6896
+ _proto._clearTimeout = function _clearTimeout() {
6897
+ clearTimeout(this._timeout);
6898
+ this._timeout = null;
6914
6899
  } // Static
6915
6900
  ;
6916
6901
 
6917
6902
  Toast._jQueryInterface = function _jQueryInterface(config) {
6918
6903
  return this.each(function () {
6919
- var $element = $(this);
6920
- var data = $element.data(DATA_KEY$a);
6904
+ var $element = $__default["default"](this);
6905
+ var data = $element.data(DATA_KEY);
6921
6906
 
6922
6907
  var _config = typeof config === 'object' && config;
6923
6908
 
6924
6909
  if (!data) {
6925
6910
  data = new Toast(this, _config);
6926
- $element.data(DATA_KEY$a, data);
6911
+ $element.data(DATA_KEY, data);
6927
6912
  }
6928
6913
 
6929
6914
  if (typeof config === 'string') {
@@ -6939,62 +6924,35 @@
6939
6924
  _createClass(Toast, null, [{
6940
6925
  key: "VERSION",
6941
6926
  get: function get() {
6942
- return VERSION$a;
6927
+ return VERSION;
6943
6928
  }
6944
6929
  }, {
6945
6930
  key: "DefaultType",
6946
6931
  get: function get() {
6947
- return DefaultType$7;
6932
+ return DefaultType;
6948
6933
  }
6949
6934
  }, {
6950
6935
  key: "Default",
6951
6936
  get: function get() {
6952
- return Default$7;
6937
+ return Default;
6953
6938
  }
6954
6939
  }]);
6955
6940
 
6956
6941
  return Toast;
6957
6942
  }();
6958
6943
  /**
6959
- * ------------------------------------------------------------------------
6960
6944
  * jQuery
6961
- * ------------------------------------------------------------------------
6962
6945
  */
6963
6946
 
6964
6947
 
6965
- $.fn[NAME$a] = Toast._jQueryInterface;
6966
- $.fn[NAME$a].Constructor = Toast;
6948
+ $__default["default"].fn[NAME] = Toast._jQueryInterface;
6949
+ $__default["default"].fn[NAME].Constructor = Toast;
6967
6950
 
6968
- $.fn[NAME$a].noConflict = function () {
6969
- $.fn[NAME$a] = JQUERY_NO_CONFLICT$a;
6951
+ $__default["default"].fn[NAME].noConflict = function () {
6952
+ $__default["default"].fn[NAME] = JQUERY_NO_CONFLICT;
6970
6953
  return Toast._jQueryInterface;
6971
6954
  };
6972
6955
 
6973
- /**
6974
- * --------------------------------------------------------------------------
6975
- * Bootstrap (v4.3.1): index.js
6976
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
6977
- * --------------------------------------------------------------------------
6978
- */
6979
-
6980
- (function () {
6981
- if (typeof $ === 'undefined') {
6982
- throw new TypeError('Bootstrap\'s JavaScript requires jQuery. jQuery must be included before Bootstrap\'s JavaScript.');
6983
- }
6984
-
6985
- var version = $.fn.jquery.split(' ')[0].split('.');
6986
- var minMajor = 1;
6987
- var ltMajor = 2;
6988
- var minMinor = 9;
6989
- var minPatch = 1;
6990
- var maxMajor = 4;
6991
-
6992
- if (version[0] < ltMajor && version[1] < minMinor || version[0] === minMajor && version[1] === minMinor && version[2] < minPatch || version[0] >= maxMajor) {
6993
- throw new Error('Bootstrap\'s JavaScript requires at least jQuery v1.9.1 but less than v4.0.0');
6994
- }
6995
- })();
6996
-
6997
- exports.Util = Util;
6998
6956
  exports.Alert = Alert;
6999
6957
  exports.Button = Button;
7000
6958
  exports.Carousel = Carousel;
@@ -7006,6 +6964,7 @@
7006
6964
  exports.Tab = Tab;
7007
6965
  exports.Toast = Toast;
7008
6966
  exports.Tooltip = Tooltip;
6967
+ exports.Util = Util;
7009
6968
 
7010
6969
  Object.defineProperty(exports, '__esModule', { value: true });
7011
6970