diff --git a/404.html b/404.html index 447179191..2a57be9fe 100644 --- a/404.html +++ b/404.html @@ -8,13 +8,13 @@ - + -

404

There's nothing here.
+ - + diff --git a/assets/js/24.eb210474.js b/assets/js/24.842a7c84.js similarity index 99% rename from assets/js/24.eb210474.js rename to assets/js/24.842a7c84.js index 48842b560..eba9710ff 100644 --- a/assets/js/24.eb210474.js +++ b/assets/js/24.842a7c84.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[24],{309:function(e,a,t){"use strict";t.r(a);var s=t(10),n=Object(s.a)({},(function(){var e=this,a=e._self._c;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"change"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#change"}},[e._v("#")]),e._v(" "),a("code",[e._v("change")])]),e._v(" "),a("p",[e._v("This command walks you through a couple of questions and will generate the appropriate "),a("a",{attrs:{href:"../concepts/change-files"}},[e._v("change file")]),e._v(" in the "),a("code",[e._v("/change")]),e._v(" directory. The generated file will be committed automatically.")]),e._v(" "),a("p",[e._v("One of the niceties of using this utility to generate change files is that it will "),a("a",{attrs:{href:"./check"}},[e._v("check")]),e._v(" whether or not you even need a change file. Also, it will load recent commit messages to ease change file generation.")]),e._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[e._v("$ beachball change\n")])])]),a("h3",{attrs:{id:"options"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#options"}},[e._v("#")]),e._v(" Options")]),e._v(" "),a("p",[e._v("Some "),a("a",{attrs:{href:"./options"}},[e._v("general options")]),e._v(" including "),a("code",[e._v("--branch")]),e._v(" and "),a("code",[e._v("--scope")]),e._v(" also apply for this command.")]),e._v(" "),a("table",[a("thead",[a("tr",[a("th",[e._v("Option")]),e._v(" "),a("th",[e._v("Alias")]),e._v(" "),a("th",[e._v("Default")]),e._v(" "),a("th",[e._v("Description")])])]),e._v(" "),a("tbody",[a("tr",[a("td",[a("code",[e._v("--all")])]),e._v(" "),a("td"),e._v(" "),a("td",[e._v("false")]),e._v(" "),a("td",[e._v("Generate change files for all packages")])]),e._v(" "),a("tr",[a("td",[a("code",[e._v("--message")])]),e._v(" "),a("td",[a("code",[e._v("-m")])]),e._v(" "),a("td",[e._v("(interactive prompt)")]),e._v(" "),a("td",[e._v("Description for all change files")])]),e._v(" "),a("tr",[a("td",[a("code",[e._v("--no-commit")])]),e._v(" "),a("td"),e._v(" "),a("td",[e._v("false")]),e._v(" "),a("td",[e._v("Stage the change files rather than committing")])]),e._v(" "),a("tr",[a("td",[a("code",[e._v("--package")])]),e._v(" "),a("td"),e._v(" "),a("td",[e._v("(changed packages)")]),e._v(" "),a("td",[e._v("Generate change files for these packages (option can be specified multiple times)")])]),e._v(" "),a("tr",[a("td",[a("code",[e._v("--type")])]),e._v(" "),a("td"),e._v(" "),a("td",[e._v("(interactive prompt)")]),e._v(" "),a("td",[e._v("Type for all the change files (must be valid for each package)")])])])]),e._v(" "),a("h3",{attrs:{id:"examples"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#examples"}},[e._v("#")]),e._v(" Examples")]),e._v(" "),a("p",[e._v("Basic interactive prompt (see "),a("a",{attrs:{href:"#prompt-walkthrough"}},[e._v("walkthrough")]),e._v(" for details):")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("beachball change\n")])])]),a("p",[e._v("Skip the interactive prompt by specifying a message and type for all changed packages:")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("beachball change --type patch --message 'some message'\n")])])]),a("p",[e._v("Generate change file for specific package(s), regardless of changes, and even if a change file already exists for the package in this branch. Each package must be specified with a separate "),a("code",[e._v("--package")]),e._v(" option. (You can also use the "),a("code",[e._v("--message")]),e._v(" and "),a("code",[e._v("--type")]),e._v(" options here.)")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("beachball change --package foo --package bar\n")])])]),a("p",[e._v("Generate change files for all packages, regardless of changes. This would most often be used for build config updates which only touch a shared config file, but actually impact the output of all packages.")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("beachball change --all --type patch --message 'update build output settings'\n")])])]),a("h3",{attrs:{id:"prompt-walkthrough"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#prompt-walkthrough"}},[e._v("#")]),e._v(" Prompt walkthrough")]),e._v(" "),a("p",[e._v("If you have changes that are not committed yet (i.e. "),a("code",[e._v("git status")]),e._v(" reports changes), then "),a("code",[e._v("beachball change")]),e._v(" will warn you about these:")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('$ beachball change\nDefaults to "origin/master"\nThere are uncommitted changes in your repository. Please commit these files first:\n- a-new-file\n')])])]),a("p",[e._v("Make sure to commit "),a("em",[e._v("all")]),e._v(" changes before proceeding with the "),a("code",[e._v("change")]),e._v(" command.")]),e._v(" "),a("p",[e._v("After committing, run "),a("code",[e._v("beachball change")]),e._v(":")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('$ beachball change\n\nValidating options and change files...\nChecking for changes against "origin/main"\nFound changes in the following packages:\n some-pkg\n')])])]),a("p",[e._v("For each package, the prompt will start by asking for a change "),a("strong",[e._v("type")]),e._v(". This should be chosen based on "),a("a",{attrs:{href:"https://semver.org/",target:"_blank",rel:"noopener noreferrer"}},[e._v("semantic versioning rules"),a("OutboundLink")],1),e._v(" because it determines how to update the package version. If the change doesn't affect the published package at all (e.g. you just updated some comments), choose "),a("code",[e._v("none")]),e._v(".")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("Please describe the changes for: some-pkg\n? Change type › - Use arrow-keys. Return to submit.\n❯ Patch - bug fixes; no backwards incompatible changes.\n Minor - small feature; backwards compatible changes.\n None - this change does not affect the published package in any way.\n Major - major feature; breaking changes.\n")])])]),a("p",[e._v("Next, it asks for a "),a("strong",[e._v("description")]),e._v(" of the change. You can type any text or choose from a list of recent commit messages.")]),e._v(" "),a("blockquote",[a("p",[e._v("Tip: These descriptions will be collated into a changelog when the change is published by "),a("code",[e._v("beachball publish")]),e._v(", so think about how to describe your change in a way that's helpful and relevant for consumers of the package.")])]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("Please describe the changes for: some-pkg\n? Describe changes (type or choose one) ›\nadding a new file\n")])])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[24],{315:function(e,a,t){"use strict";t.r(a);var s=t(10),n=Object(s.a)({},(function(){var e=this,a=e._self._c;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"change"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#change"}},[e._v("#")]),e._v(" "),a("code",[e._v("change")])]),e._v(" "),a("p",[e._v("This command walks you through a couple of questions and will generate the appropriate "),a("a",{attrs:{href:"../concepts/change-files"}},[e._v("change file")]),e._v(" in the "),a("code",[e._v("/change")]),e._v(" directory. The generated file will be committed automatically.")]),e._v(" "),a("p",[e._v("One of the niceties of using this utility to generate change files is that it will "),a("a",{attrs:{href:"./check"}},[e._v("check")]),e._v(" whether or not you even need a change file. Also, it will load recent commit messages to ease change file generation.")]),e._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[e._v("$ beachball change\n")])])]),a("h3",{attrs:{id:"options"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#options"}},[e._v("#")]),e._v(" Options")]),e._v(" "),a("p",[e._v("Some "),a("a",{attrs:{href:"./options"}},[e._v("general options")]),e._v(" including "),a("code",[e._v("--branch")]),e._v(" and "),a("code",[e._v("--scope")]),e._v(" also apply for this command.")]),e._v(" "),a("table",[a("thead",[a("tr",[a("th",[e._v("Option")]),e._v(" "),a("th",[e._v("Alias")]),e._v(" "),a("th",[e._v("Default")]),e._v(" "),a("th",[e._v("Description")])])]),e._v(" "),a("tbody",[a("tr",[a("td",[a("code",[e._v("--all")])]),e._v(" "),a("td"),e._v(" "),a("td",[e._v("false")]),e._v(" "),a("td",[e._v("Generate change files for all packages")])]),e._v(" "),a("tr",[a("td",[a("code",[e._v("--message")])]),e._v(" "),a("td",[a("code",[e._v("-m")])]),e._v(" "),a("td",[e._v("(interactive prompt)")]),e._v(" "),a("td",[e._v("Description for all change files")])]),e._v(" "),a("tr",[a("td",[a("code",[e._v("--no-commit")])]),e._v(" "),a("td"),e._v(" "),a("td",[e._v("false")]),e._v(" "),a("td",[e._v("Stage the change files rather than committing")])]),e._v(" "),a("tr",[a("td",[a("code",[e._v("--package")])]),e._v(" "),a("td"),e._v(" "),a("td",[e._v("(changed packages)")]),e._v(" "),a("td",[e._v("Generate change files for these packages (option can be specified multiple times)")])]),e._v(" "),a("tr",[a("td",[a("code",[e._v("--type")])]),e._v(" "),a("td"),e._v(" "),a("td",[e._v("(interactive prompt)")]),e._v(" "),a("td",[e._v("Type for all the change files (must be valid for each package)")])])])]),e._v(" "),a("h3",{attrs:{id:"examples"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#examples"}},[e._v("#")]),e._v(" Examples")]),e._v(" "),a("p",[e._v("Basic interactive prompt (see "),a("a",{attrs:{href:"#prompt-walkthrough"}},[e._v("walkthrough")]),e._v(" for details):")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("beachball change\n")])])]),a("p",[e._v("Skip the interactive prompt by specifying a message and type for all changed packages:")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("beachball change --type patch --message 'some message'\n")])])]),a("p",[e._v("Generate change file for specific package(s), regardless of changes, and even if a change file already exists for the package in this branch. Each package must be specified with a separate "),a("code",[e._v("--package")]),e._v(" option. (You can also use the "),a("code",[e._v("--message")]),e._v(" and "),a("code",[e._v("--type")]),e._v(" options here.)")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("beachball change --package foo --package bar\n")])])]),a("p",[e._v("Generate change files for all packages, regardless of changes. This would most often be used for build config updates which only touch a shared config file, but actually impact the output of all packages.")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("beachball change --all --type patch --message 'update build output settings'\n")])])]),a("h3",{attrs:{id:"prompt-walkthrough"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#prompt-walkthrough"}},[e._v("#")]),e._v(" Prompt walkthrough")]),e._v(" "),a("p",[e._v("If you have changes that are not committed yet (i.e. "),a("code",[e._v("git status")]),e._v(" reports changes), then "),a("code",[e._v("beachball change")]),e._v(" will warn you about these:")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('$ beachball change\nDefaults to "origin/master"\nThere are uncommitted changes in your repository. Please commit these files first:\n- a-new-file\n')])])]),a("p",[e._v("Make sure to commit "),a("em",[e._v("all")]),e._v(" changes before proceeding with the "),a("code",[e._v("change")]),e._v(" command.")]),e._v(" "),a("p",[e._v("After committing, run "),a("code",[e._v("beachball change")]),e._v(":")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('$ beachball change\n\nValidating options and change files...\nChecking for changes against "origin/main"\nFound changes in the following packages:\n some-pkg\n')])])]),a("p",[e._v("For each package, the prompt will start by asking for a change "),a("strong",[e._v("type")]),e._v(". This should be chosen based on "),a("a",{attrs:{href:"https://semver.org/",target:"_blank",rel:"noopener noreferrer"}},[e._v("semantic versioning rules"),a("OutboundLink")],1),e._v(" because it determines how to update the package version. If the change doesn't affect the published package at all (e.g. you just updated some comments), choose "),a("code",[e._v("none")]),e._v(".")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("Please describe the changes for: some-pkg\n? Change type › - Use arrow-keys. Return to submit.\n❯ Patch - bug fixes; no backwards incompatible changes.\n Minor - small feature; backwards compatible changes.\n None - this change does not affect the published package in any way.\n Major - major feature; breaking changes.\n")])])]),a("p",[e._v("Next, it asks for a "),a("strong",[e._v("description")]),e._v(" of the change. You can type any text or choose from a list of recent commit messages.")]),e._v(" "),a("blockquote",[a("p",[e._v("Tip: These descriptions will be collated into a changelog when the change is published by "),a("code",[e._v("beachball publish")]),e._v(", so think about how to describe your change in a way that's helpful and relevant for consumers of the package.")])]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("Please describe the changes for: some-pkg\n? Describe changes (type or choose one) ›\nadding a new file\n")])])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/25.d36dffe0.js b/assets/js/25.ef2176ca.js similarity index 97% rename from assets/js/25.d36dffe0.js rename to assets/js/25.ef2176ca.js index 2c9a3e152..68625ce37 100644 --- a/assets/js/25.d36dffe0.js +++ b/assets/js/25.ef2176ca.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[25],{311:function(e,t,a){"use strict";a.r(t);var s=a(10),o=Object(s.a)({},(function(){var e=this,t=e._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"check"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#check"}},[e._v("#")]),e._v(" "),t("code",[e._v("check")])]),e._v(" "),t("p",[e._v("It's recommended to enforce that "),t("a",{attrs:{href:"../concepts/change-files"}},[e._v("change files")]),e._v(" are included with each PR. This way, all changes are captured and affect semver appropriately.")]),e._v(" "),t("p",[e._v("To ensure that all changes are captured in change files, simply run:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("$ beachball check\n")])])]),t("p",[e._v("This command also checks for misconfigurations that would result in problems when attempting to publish.")]),e._v(" "),t("h3",{attrs:{id:"options"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#options"}},[e._v("#")]),e._v(" Options")]),e._v(" "),t("p",[e._v("See the "),t("a",{attrs:{href:"./options"}},[e._v("options page")]),e._v(".")]),e._v(" "),t("h3",{attrs:{id:"where-should-check-be-run"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#where-should-check-be-run"}},[e._v("#")]),e._v(" Where should "),t("code",[e._v("check")]),e._v(" be run?")]),e._v(" "),t("h4",{attrs:{id:"as-a-step-in-the-pr-review-gate"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#as-a-step-in-the-pr-review-gate"}},[e._v("#")]),e._v(" As a step in the PR review gate")]),e._v(" "),t("p",[e._v("See the "),t("a",{attrs:{href:"../concepts/change-files#validating-change-files"}},[e._v("change files page")]),e._v(" for how to set this up.")]),e._v(" "),t("h4",{attrs:{id:"as-git-hook-optional"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#as-git-hook-optional"}},[e._v("#")]),e._v(" As git hook (optional)")]),e._v(" "),t("p",[e._v("For a reference about git hooks, take a look at "),t("a",{attrs:{href:"https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks",target:"_blank",rel:"noopener noreferrer"}},[e._v("this documentation"),t("OutboundLink")],1),e._v(". This hook would typically be run pre-push.")]),e._v(" "),t("p",[e._v("While running "),t("code",[e._v("beachball check")]),e._v(" before push may seem appealing, it has some downsides: it will substantially slow down running "),t("code",[e._v("git push")]),e._v(" and could be annoying when pushing work-in-progress changes to remote branches. Our experience with repos enabling this hook is that it's often quickly removed due to developer feedback.")])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[25],{309:function(e,t,a){"use strict";a.r(t);var s=a(10),o=Object(s.a)({},(function(){var e=this,t=e._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"check"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#check"}},[e._v("#")]),e._v(" "),t("code",[e._v("check")])]),e._v(" "),t("p",[e._v("It's recommended to enforce that "),t("a",{attrs:{href:"../concepts/change-files"}},[e._v("change files")]),e._v(" are included with each PR. This way, all changes are captured and affect semver appropriately.")]),e._v(" "),t("p",[e._v("To ensure that all changes are captured in change files, simply run:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("$ beachball check\n")])])]),t("p",[e._v("This command also checks for misconfigurations that would result in problems when attempting to publish.")]),e._v(" "),t("h3",{attrs:{id:"options"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#options"}},[e._v("#")]),e._v(" Options")]),e._v(" "),t("p",[e._v("See the "),t("a",{attrs:{href:"./options"}},[e._v("options page")]),e._v(".")]),e._v(" "),t("h3",{attrs:{id:"where-should-check-be-run"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#where-should-check-be-run"}},[e._v("#")]),e._v(" Where should "),t("code",[e._v("check")]),e._v(" be run?")]),e._v(" "),t("h4",{attrs:{id:"as-a-step-in-the-pr-review-gate"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#as-a-step-in-the-pr-review-gate"}},[e._v("#")]),e._v(" As a step in the PR review gate")]),e._v(" "),t("p",[e._v("See the "),t("a",{attrs:{href:"../concepts/change-files#validating-change-files"}},[e._v("change files page")]),e._v(" for how to set this up.")]),e._v(" "),t("h4",{attrs:{id:"as-git-hook-optional"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#as-git-hook-optional"}},[e._v("#")]),e._v(" As git hook (optional)")]),e._v(" "),t("p",[e._v("For a reference about git hooks, take a look at "),t("a",{attrs:{href:"https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks",target:"_blank",rel:"noopener noreferrer"}},[e._v("this documentation"),t("OutboundLink")],1),e._v(". This hook would typically be run pre-push.")]),e._v(" "),t("p",[e._v("While running "),t("code",[e._v("beachball check")]),e._v(" before push may seem appealing, it has some downsides: it will substantially slow down running "),t("code",[e._v("git push")]),e._v(" and could be annoying when pushing work-in-progress changes to remote branches. Our experience with repos enabling this hook is that it's often quickly removed due to developer feedback.")])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/27.56855b97.js b/assets/js/27.d30a20d6.js similarity index 98% rename from assets/js/27.56855b97.js rename to assets/js/27.d30a20d6.js index ffde28e7c..f78249f1a 100644 --- a/assets/js/27.56855b97.js +++ b/assets/js/27.d30a20d6.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[27],{314:function(e,t,s){"use strict";s.r(t);var a=s(10),i=Object(a.a)({},(function(){var e=this,t=e._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"publish"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#publish"}},[e._v("#")]),e._v(" "),t("code",[e._v("publish")])]),e._v(" "),t("p",[e._v("Publishing automates all the bumping and synchronizing of package versions in the git remote as well as the npm registry.")]),e._v(" "),t("h3",{attrs:{id:"options"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#options"}},[e._v("#")]),e._v(" Options")]),e._v(" "),t("p",[e._v("See the "),t("a",{attrs:{href:"./options"}},[e._v("options page")]),e._v(".")]),e._v(" "),t("h3",{attrs:{id:"algorithm"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#algorithm"}},[e._v("#")]),e._v(" Algorithm")]),e._v(" "),t("p",[e._v("The "),t("code",[e._v("publish")]),e._v(" command is designed to run steps in an order that minimizes the chances of mid-publish failure by doing validation upfront.")]),e._v(" "),t("p",[t("code",[e._v("beachball publish")]),e._v(" performs the following steps:")]),e._v(" "),t("ol",[t("li",[e._v("Validate that options and change files are valid")]),e._v(" "),t("li",[e._v("Bump and publish to npm (unless disabled):\n"),t("ol",[t("li",[e._v("Bump the package versions locally")]),e._v(" "),t("li",[e._v("Generate the changelog files (unless disabled)")]),e._v(" "),t("li",[e._v("Delete change files locally (unless disabled)")]),e._v(" "),t("li",[e._v("Validate that nothing to be published depends on a private package")]),e._v(" "),t("li",[e._v("Publish packages to npm in topological order based on the dependency graph (to reduce the chances that if there's a failure partway through, a published package might require unpublished versions)")])])]),e._v(" "),t("li",[e._v("Bump and push to git (unless bumping or pushing is disabled):\n"),t("ol",[t("li",[e._v("Revert any previous changes (from the publish step)")]),e._v(" "),t("li",[e._v("Merge the latest changes from the remote branch to avoid merge conflicts (unless fetching is disabled)")]),e._v(" "),t("li",[e._v("Bump the versions locally")]),e._v(" "),t("li",[e._v("Generate the changelog files (unless disabled)")]),e._v(" "),t("li",[e._v("Delete change files locally (unless disabled)")]),e._v(" "),t("li",[e._v("Commit the changes")]),e._v(" "),t("li",[e._v("Create git tags for new package versions (unless disabled)")]),e._v(" "),t("li",[e._v("Push the changes and tags")])])])]),e._v(" "),t("p",[e._v("It might be surprising that "),t("code",[e._v("beachball publish")]),e._v(" does so many steps, especially the step about reverting changes! In most version bumping systems that automate syncing the git repo and npm registry, they assume that the source code is still fresh once it's time to push changes back to the git repository. This is rarely the case for large repos with many developers. So, "),t("code",[e._v("beachball")]),e._v(" fetches the latest changes before pushing back to the target branch to avoid merge conflicts.")]),e._v(" "),t("h3",{attrs:{id:"example-ci-workflow"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#example-ci-workflow"}},[e._v("#")]),e._v(" Example CI workflow")]),e._v(" "),t("p",[e._v("See the "),t("a",{attrs:{href:"../concepts/ci-integration"}},[e._v("CI integration page")]),e._v(" details and examples for how to run "),t("code",[e._v("beachball publish")]),e._v(" in CI.")]),e._v(" "),t("h3",{attrs:{id:"recovering-from-failed-publish"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#recovering-from-failed-publish"}},[e._v("#")]),e._v(" Recovering from failed publish")]),e._v(" "),t("p",[e._v("If the "),t("code",[e._v("publish")]),e._v(" command fails partway through, after some versions have been published to the registry, you'll need to run "),t("a",{attrs:{href:"./sync"}},[t("code",[e._v("beachball sync")])]),e._v(" and commit the changes.")])])}),[],!1,null,null,null);t.default=i.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[27],{313:function(e,t,s){"use strict";s.r(t);var a=s(10),i=Object(a.a)({},(function(){var e=this,t=e._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"publish"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#publish"}},[e._v("#")]),e._v(" "),t("code",[e._v("publish")])]),e._v(" "),t("p",[e._v("Publishing automates all the bumping and synchronizing of package versions in the git remote as well as the npm registry.")]),e._v(" "),t("h3",{attrs:{id:"options"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#options"}},[e._v("#")]),e._v(" Options")]),e._v(" "),t("p",[e._v("See the "),t("a",{attrs:{href:"./options"}},[e._v("options page")]),e._v(".")]),e._v(" "),t("h3",{attrs:{id:"algorithm"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#algorithm"}},[e._v("#")]),e._v(" Algorithm")]),e._v(" "),t("p",[e._v("The "),t("code",[e._v("publish")]),e._v(" command is designed to run steps in an order that minimizes the chances of mid-publish failure by doing validation upfront.")]),e._v(" "),t("p",[t("code",[e._v("beachball publish")]),e._v(" performs the following steps:")]),e._v(" "),t("ol",[t("li",[e._v("Validate that options and change files are valid")]),e._v(" "),t("li",[e._v("Bump and publish to npm (unless disabled):\n"),t("ol",[t("li",[e._v("Bump the package versions locally")]),e._v(" "),t("li",[e._v("Generate the changelog files (unless disabled)")]),e._v(" "),t("li",[e._v("Delete change files locally (unless disabled)")]),e._v(" "),t("li",[e._v("Validate that nothing to be published depends on a private package")]),e._v(" "),t("li",[e._v("Publish packages to npm in topological order based on the dependency graph (to reduce the chances that if there's a failure partway through, a published package might require unpublished versions)")])])]),e._v(" "),t("li",[e._v("Bump and push to git (unless bumping or pushing is disabled):\n"),t("ol",[t("li",[e._v("Revert any previous changes (from the publish step)")]),e._v(" "),t("li",[e._v("Merge the latest changes from the remote branch to avoid merge conflicts (unless fetching is disabled)")]),e._v(" "),t("li",[e._v("Bump the versions locally")]),e._v(" "),t("li",[e._v("Generate the changelog files (unless disabled)")]),e._v(" "),t("li",[e._v("Delete change files locally (unless disabled)")]),e._v(" "),t("li",[e._v("Commit the changes")]),e._v(" "),t("li",[e._v("Create git tags for new package versions (unless disabled)")]),e._v(" "),t("li",[e._v("Push the changes and tags")])])])]),e._v(" "),t("p",[e._v("It might be surprising that "),t("code",[e._v("beachball publish")]),e._v(" does so many steps, especially the step about reverting changes! In most version bumping systems that automate syncing the git repo and npm registry, they assume that the source code is still fresh once it's time to push changes back to the git repository. This is rarely the case for large repos with many developers. So, "),t("code",[e._v("beachball")]),e._v(" fetches the latest changes before pushing back to the target branch to avoid merge conflicts.")]),e._v(" "),t("h3",{attrs:{id:"example-ci-workflow"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#example-ci-workflow"}},[e._v("#")]),e._v(" Example CI workflow")]),e._v(" "),t("p",[e._v("See the "),t("a",{attrs:{href:"../concepts/ci-integration"}},[e._v("CI integration page")]),e._v(" details and examples for how to run "),t("code",[e._v("beachball publish")]),e._v(" in CI.")]),e._v(" "),t("h3",{attrs:{id:"recovering-from-failed-publish"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#recovering-from-failed-publish"}},[e._v("#")]),e._v(" Recovering from failed publish")]),e._v(" "),t("p",[e._v("If the "),t("code",[e._v("publish")]),e._v(" command fails partway through, after some versions have been published to the registry, you'll need to run "),t("a",{attrs:{href:"./sync"}},[t("code",[e._v("beachball sync")])]),e._v(" and commit the changes.")])])}),[],!1,null,null,null);t.default=i.exports}}]); \ No newline at end of file diff --git a/assets/js/28.3d6d816e.js b/assets/js/28.e37e5e06.js similarity index 96% rename from assets/js/28.3d6d816e.js rename to assets/js/28.e37e5e06.js index f7794880f..a7d732782 100644 --- a/assets/js/28.3d6d816e.js +++ b/assets/js/28.e37e5e06.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[28],{313:function(t,e,o){"use strict";o.r(e);var s=o(10),a=Object(s.a)({},(function(){var t=this,e=t._self._c;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"sync"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sync"}},[t._v("#")]),t._v(" "),e("code",[t._v("sync")])]),t._v(" "),e("p",[t._v("Synchronizes the local version number of each package to the current version of the given "),e("code",[t._v("dist-tag")]),t._v(" in the npm registry. This is useful for helping get a repo back into a valid state after publishing fails partway through.")]),t._v(" "),e("p",[t._v("By default, the local version will only be updated if it's "),e("strong",[t._v("older")]),t._v(" than the version the specified "),e("code",[t._v("dist-tag")]),t._v(" points to. Use "),e("code",[t._v("--force")]),t._v(" to override this behavior.")]),t._v(" "),e("p",[t._v("After syncing, be sure to commit and push the changes.")]),t._v(" "),e("h3",{attrs:{id:"options"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#options"}},[t._v("#")]),t._v(" Options")]),t._v(" "),e("p",[t._v("In addition to the options below, certain "),e("a",{attrs:{href:"./options"}},[t._v("common options")]),t._v(" also apply.")]),t._v(" "),e("h4",{attrs:{id:"force"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#force"}},[t._v("#")]),t._v(" "),e("code",[t._v("--force")])]),t._v(" "),e("p",[t._v("Force the sync command to skip the version comparison and use the version in the registry as is.")]),t._v(" "),e("h4",{attrs:{id:"tag-t"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#tag-t"}},[t._v("#")]),t._v(" "),e("code",[t._v("--tag, -t")])]),t._v(" "),e("p",[t._v("Sync with the version this "),e("code",[t._v("dist-tag")]),t._v(" points to. Defaults to the tag from repo, group, or package level beachball configs if present, falling back to "),e("code",[t._v("latest")]),t._v(".")])])}),[],!1,null,null,null);e.default=a.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[28],{311:function(t,e,o){"use strict";o.r(e);var s=o(10),a=Object(s.a)({},(function(){var t=this,e=t._self._c;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"sync"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sync"}},[t._v("#")]),t._v(" "),e("code",[t._v("sync")])]),t._v(" "),e("p",[t._v("Synchronizes the local version number of each package to the current version of the given "),e("code",[t._v("dist-tag")]),t._v(" in the npm registry. This is useful for helping get a repo back into a valid state after publishing fails partway through.")]),t._v(" "),e("p",[t._v("By default, the local version will only be updated if it's "),e("strong",[t._v("older")]),t._v(" than the version the specified "),e("code",[t._v("dist-tag")]),t._v(" points to. Use "),e("code",[t._v("--force")]),t._v(" to override this behavior.")]),t._v(" "),e("p",[t._v("After syncing, be sure to commit and push the changes.")]),t._v(" "),e("h3",{attrs:{id:"options"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#options"}},[t._v("#")]),t._v(" Options")]),t._v(" "),e("p",[t._v("In addition to the options below, certain "),e("a",{attrs:{href:"./options"}},[t._v("common options")]),t._v(" also apply.")]),t._v(" "),e("h4",{attrs:{id:"force"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#force"}},[t._v("#")]),t._v(" "),e("code",[t._v("--force")])]),t._v(" "),e("p",[t._v("Force the sync command to skip the version comparison and use the version in the registry as is.")]),t._v(" "),e("h4",{attrs:{id:"tag-t"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#tag-t"}},[t._v("#")]),t._v(" "),e("code",[t._v("--tag, -t")])]),t._v(" "),e("p",[t._v("Sync with the version this "),e("code",[t._v("dist-tag")]),t._v(" points to. Defaults to the tag from repo, group, or package level beachball configs if present, falling back to "),e("code",[t._v("latest")]),t._v(".")])])}),[],!1,null,null,null);e.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/30.b1f2d654.js b/assets/js/30.fac76c2f.js similarity index 99% rename from assets/js/30.b1f2d654.js rename to assets/js/30.fac76c2f.js index 8a677a643..806e3cfce 100644 --- a/assets/js/30.b1f2d654.js +++ b/assets/js/30.fac76c2f.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[30],{315:function(e,a,t){"use strict";t.r(a);var s=t(10),n=Object(s.a)({},(function(){var e=this,a=e._self._c;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"change-files"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#change-files"}},[e._v("#")]),e._v(" Change Files")]),e._v(" "),a("p",[e._v("There are "),a("a",{attrs:{href:"https://semantic-release.gitbook.io/semantic-release/",target:"_blank"}},[e._v("very popular")]),e._v(" and excellent packages available which manage package versioning based on commit messages. "),a("code",[e._v("beachball")]),e._v(" works differently, using something called a "),a("strong",[e._v("change file")]),e._v(".")]),e._v(" "),a("h2",{attrs:{id:"what-is-a-change-file"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#what-is-a-change-file"}},[e._v("#")]),e._v(" What is a change file?")]),e._v(" "),a("p",[e._v("Change files are generated by the "),a("code",[e._v("beachball change")]),e._v(" command and live under the "),a("code",[e._v("/change")]),e._v(" folder. They look something like this:")]),e._v(" "),a("div",{staticClass:"language-json extra-class"},[a("pre",{pre:!0,attrs:{class:"language-json"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),e._v("\n "),a("span",{pre:!0,attrs:{class:"token property"}},[e._v('"comment"')]),a("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Upgrading React to 16.8.x to use hooks"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),a("span",{pre:!0,attrs:{class:"token property"}},[e._v('"type"')]),a("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[e._v('"minor"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),a("span",{pre:!0,attrs:{class:"token property"}},[e._v('"packageName"')]),a("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[e._v('"my-amazing-app"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),a("span",{pre:!0,attrs:{class:"token property"}},[e._v('"email"')]),a("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[e._v('"me@me.me"')]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n")])])]),a("p",[a("code",[e._v("beachball")]),e._v(" then uses the change files during publishing to determine how to bump package versions, and what content should be in the changelog.")]),e._v(" "),a("p",[e._v("The advantage of using "),a("code",[e._v(".json")]),e._v(" files rather than commit messages is that it's very easy to see visual diffs of these files in a PR, so reviewers can verify that the change type and message are correct.")]),e._v(" "),a("p",[e._v("For example, a reviewer might remind the author that a certain new API has been introduced and that the change ought to be a minor. The author can then modify the change file without having to amend history of a commit!")]),e._v(" "),a("h2",{attrs:{id:"generating-a-change-file"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#generating-a-change-file"}},[e._v("#")]),e._v(" Generating a change file")]),e._v(" "),a("p",[e._v("After making some commits, it's time to create a change file. Change files are generated with the "),a("code",[e._v("beachball change")]),e._v(" command. (In a monorepo, this should only be run at the repo root.)")]),e._v(" "),a("p",[e._v("Assuming you've defined the "),a("code",[e._v("change")]),e._v(" wrapper script suggested on the "),a("a",{attrs:{href:"../overview/installation"}},[e._v("installation page")]),e._v(", run one of the following commands:")]),e._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# for npm")]),e._v("\n$ "),a("span",{pre:!0,attrs:{class:"token function"}},[e._v("npm")]),e._v(" run change\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# for yarn")]),e._v("\n$ "),a("span",{pre:!0,attrs:{class:"token function"}},[e._v("yarn")]),e._v(" change\n")])])]),a("p",[e._v("If you don't already have a change file for this branch and package, it will ask you to enter a description and a change type (in a monorepo, it will ask for each changed package).")]),e._v(" "),a("ul",[a("li",[e._v("For the "),a("strong",[e._v("description")]),e._v(", "),a("code",[e._v("beachball")]),e._v(" will provide a list of recent commit messages to choose from, or you can type a custom message.")]),e._v(" "),a("li",[e._v("Choose the correct "),a("strong",[e._v("type")]),e._v(" using "),a("a",{attrs:{href:"https://semver.org/",target:"_blank",rel:"noopener noreferrer"}},[e._v("semantic versioning rules"),a("OutboundLink")],1),e._v(".")])]),e._v(" "),a("p",[e._v("After you've answered those questions, a change file similar to the example above is created and committed in your branch under "),a("code",[e._v("/change")]),e._v(".")]),e._v(" "),a("p",[e._v("If you prefer, you can specify the change type and message on the command line. (In a monorepo, the specified type and message will be used for all changed packages.)")]),e._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# for npm")]),e._v("\n$ "),a("span",{pre:!0,attrs:{class:"token function"}},[e._v("npm")]),e._v(" run change -- "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--type")]),e._v(" minor "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--message")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Upgrading React to 16.8.x to use hooks"')]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# for yarn")]),e._v("\n$ "),a("span",{pre:!0,attrs:{class:"token function"}},[e._v("yarn")]),e._v(" change "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--type")]),e._v(" minor "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--message")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Upgrading React to 16.8.x to use hooks"')]),e._v("\n")])])]),a("h2",{attrs:{id:"validating-change-files"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#validating-change-files"}},[e._v("#")]),e._v(" Validating change files")]),e._v(" "),a("p",[e._v("Your PR build should include a step that calls "),a("code",[e._v("beachball check")]),e._v(" to validate that change files are included.")]),e._v(" "),a("p",[e._v("Assuming you've defined the "),a("code",[e._v("checkchange")]),e._v(" wrapper script suggested on the "),a("a",{attrs:{href:"../overview/installation"}},[e._v("installation page")]),e._v(", add a step to your PR build as follows.")]),e._v(" "),a("div",{staticClass:"language-yml extra-class"},[a("pre",{pre:!0,attrs:{class:"language-yml"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# For GitHub Actions:")]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("### With npm:")]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("-")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[e._v("run")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(":")]),e._v(" npm run checkchange\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("### With yarn:")]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("-")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[e._v("run")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(":")]),e._v(" yarn checkchange\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# For Azure Pipelines:")]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("### With npm:")]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("-")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[e._v("script")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(":")]),e._v(" npm run checkchange\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("### With yarn:")]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("-")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[e._v("script")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(":")]),e._v(" yarn checkchange\n")])])]),a("p",[e._v("An alternative if desired is to define a separate required workflow/pipeline which skips the main install step and only runs "),a("code",[e._v("npx beachball check")]),e._v(". This has the advantage of providing faster validation and not blocking the main PR build (and hiding any later build/test/lint errors) simply for missing change files.")]),e._v(" "),a("p",[e._v("To prevent change files from being required for changes that will never affect the published package (such as tests, snapshots, or certain config files), use the "),a("a",{attrs:{href:"../overview/configuration#options"}},[a("code",[e._v("ignorePatterns")]),e._v(" option")]),e._v(".")]),e._v(" "),a("blockquote",[a("p",[e._v("Note: In the past, it was necessary to check out the repo's whole history for "),a("code",[e._v("beachball check")]),e._v(" to work properly (such as setting "),a("code",[e._v("fetch-depth: 0")]),e._v(" in "),a("code",[e._v("actions/checkout")]),e._v(" for GitHub workflows). This should no longer be needed because if "),a("code",[e._v("beachball")]),e._v(" detects a shallow clone, it will automatically fetch more history, and exit with an error if the current branch and target branch don't appear to share history.")])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[30],{314:function(e,a,t){"use strict";t.r(a);var s=t(10),n=Object(s.a)({},(function(){var e=this,a=e._self._c;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"change-files"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#change-files"}},[e._v("#")]),e._v(" Change Files")]),e._v(" "),a("p",[e._v("There are "),a("a",{attrs:{href:"https://semantic-release.gitbook.io/semantic-release/",target:"_blank"}},[e._v("very popular")]),e._v(" and excellent packages available which manage package versioning based on commit messages. "),a("code",[e._v("beachball")]),e._v(" works differently, using something called a "),a("strong",[e._v("change file")]),e._v(".")]),e._v(" "),a("h2",{attrs:{id:"what-is-a-change-file"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#what-is-a-change-file"}},[e._v("#")]),e._v(" What is a change file?")]),e._v(" "),a("p",[e._v("Change files are generated by the "),a("code",[e._v("beachball change")]),e._v(" command and live under the "),a("code",[e._v("/change")]),e._v(" folder. They look something like this:")]),e._v(" "),a("div",{staticClass:"language-json extra-class"},[a("pre",{pre:!0,attrs:{class:"language-json"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),e._v("\n "),a("span",{pre:!0,attrs:{class:"token property"}},[e._v('"comment"')]),a("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Upgrading React to 16.8.x to use hooks"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),a("span",{pre:!0,attrs:{class:"token property"}},[e._v('"type"')]),a("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[e._v('"minor"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),a("span",{pre:!0,attrs:{class:"token property"}},[e._v('"packageName"')]),a("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[e._v('"my-amazing-app"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),a("span",{pre:!0,attrs:{class:"token property"}},[e._v('"email"')]),a("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[e._v('"me@me.me"')]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n")])])]),a("p",[a("code",[e._v("beachball")]),e._v(" then uses the change files during publishing to determine how to bump package versions, and what content should be in the changelog.")]),e._v(" "),a("p",[e._v("The advantage of using "),a("code",[e._v(".json")]),e._v(" files rather than commit messages is that it's very easy to see visual diffs of these files in a PR, so reviewers can verify that the change type and message are correct.")]),e._v(" "),a("p",[e._v("For example, a reviewer might remind the author that a certain new API has been introduced and that the change ought to be a minor. The author can then modify the change file without having to amend history of a commit!")]),e._v(" "),a("h2",{attrs:{id:"generating-a-change-file"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#generating-a-change-file"}},[e._v("#")]),e._v(" Generating a change file")]),e._v(" "),a("p",[e._v("After making some commits, it's time to create a change file. Change files are generated with the "),a("code",[e._v("beachball change")]),e._v(" command. (In a monorepo, this should only be run at the repo root.)")]),e._v(" "),a("p",[e._v("Assuming you've defined the "),a("code",[e._v("change")]),e._v(" wrapper script suggested on the "),a("a",{attrs:{href:"../overview/installation"}},[e._v("installation page")]),e._v(", run one of the following commands:")]),e._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# for npm")]),e._v("\n$ "),a("span",{pre:!0,attrs:{class:"token function"}},[e._v("npm")]),e._v(" run change\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# for yarn")]),e._v("\n$ "),a("span",{pre:!0,attrs:{class:"token function"}},[e._v("yarn")]),e._v(" change\n")])])]),a("p",[e._v("If you don't already have a change file for this branch and package, it will ask you to enter a description and a change type (in a monorepo, it will ask for each changed package).")]),e._v(" "),a("ul",[a("li",[e._v("For the "),a("strong",[e._v("description")]),e._v(", "),a("code",[e._v("beachball")]),e._v(" will provide a list of recent commit messages to choose from, or you can type a custom message.")]),e._v(" "),a("li",[e._v("Choose the correct "),a("strong",[e._v("type")]),e._v(" using "),a("a",{attrs:{href:"https://semver.org/",target:"_blank",rel:"noopener noreferrer"}},[e._v("semantic versioning rules"),a("OutboundLink")],1),e._v(".")])]),e._v(" "),a("p",[e._v("After you've answered those questions, a change file similar to the example above is created and committed in your branch under "),a("code",[e._v("/change")]),e._v(".")]),e._v(" "),a("p",[e._v("If you prefer, you can specify the change type and message on the command line. (In a monorepo, the specified type and message will be used for all changed packages.)")]),e._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# for npm")]),e._v("\n$ "),a("span",{pre:!0,attrs:{class:"token function"}},[e._v("npm")]),e._v(" run change -- "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--type")]),e._v(" minor "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--message")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Upgrading React to 16.8.x to use hooks"')]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# for yarn")]),e._v("\n$ "),a("span",{pre:!0,attrs:{class:"token function"}},[e._v("yarn")]),e._v(" change "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--type")]),e._v(" minor "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--message")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Upgrading React to 16.8.x to use hooks"')]),e._v("\n")])])]),a("h2",{attrs:{id:"validating-change-files"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#validating-change-files"}},[e._v("#")]),e._v(" Validating change files")]),e._v(" "),a("p",[e._v("Your PR build should include a step that calls "),a("code",[e._v("beachball check")]),e._v(" to validate that change files are included.")]),e._v(" "),a("p",[e._v("Assuming you've defined the "),a("code",[e._v("checkchange")]),e._v(" wrapper script suggested on the "),a("a",{attrs:{href:"../overview/installation"}},[e._v("installation page")]),e._v(", add a step to your PR build as follows.")]),e._v(" "),a("div",{staticClass:"language-yml extra-class"},[a("pre",{pre:!0,attrs:{class:"language-yml"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# For GitHub Actions:")]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("### With npm:")]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("-")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[e._v("run")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(":")]),e._v(" npm run checkchange\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("### With yarn:")]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("-")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[e._v("run")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(":")]),e._v(" yarn checkchange\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# For Azure Pipelines:")]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("### With npm:")]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("-")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[e._v("script")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(":")]),e._v(" npm run checkchange\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[e._v("### With yarn:")]),e._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("-")]),e._v(" "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[e._v("script")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(":")]),e._v(" yarn checkchange\n")])])]),a("p",[e._v("An alternative if desired is to define a separate required workflow/pipeline which skips the main install step and only runs "),a("code",[e._v("npx beachball check")]),e._v(". This has the advantage of providing faster validation and not blocking the main PR build (and hiding any later build/test/lint errors) simply for missing change files.")]),e._v(" "),a("p",[e._v("To prevent change files from being required for changes that will never affect the published package (such as tests, snapshots, or certain config files), use the "),a("a",{attrs:{href:"../overview/configuration#options"}},[a("code",[e._v("ignorePatterns")]),e._v(" option")]),e._v(".")]),e._v(" "),a("blockquote",[a("p",[e._v("Note: In the past, it was necessary to check out the repo's whole history for "),a("code",[e._v("beachball check")]),e._v(" to work properly (such as setting "),a("code",[e._v("fetch-depth: 0")]),e._v(" in "),a("code",[e._v("actions/checkout")]),e._v(" for GitHub workflows). This should no longer be needed because if "),a("code",[e._v("beachball")]),e._v(" detects a shallow clone, it will automatically fetch more history, and exit with an error if the current branch and target branch don't appear to share history.")])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/33.d826f62e.js b/assets/js/33.4d4f61c7.js similarity index 99% rename from assets/js/33.d826f62e.js rename to assets/js/33.4d4f61c7.js index 52b31afcd..2b7f2749a 100644 --- a/assets/js/33.d826f62e.js +++ b/assets/js/33.4d4f61c7.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[33],{318:function(e,t,o){"use strict";o.r(t);var a=o(10),r=Object(a.a)({},(function(){var e=this,t=e._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"configuration"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#configuration"}},[e._v("#")]),e._v(" Configuration")]),e._v(" "),t("p",[e._v("For most uses you probably do not need any specific configuration on each package within your repository. But there are a few options to customize "),t("code",[e._v("beachball")]),e._v("'s behavior.")]),e._v(" "),t("p",[e._v("There are two types of configurations:")]),e._v(" "),t("ol",[t("li",[e._v("repository config")]),e._v(" "),t("li",[e._v("package config")])]),e._v(" "),t("h2",{attrs:{id:"configuration-files"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#configuration-files"}},[e._v("#")]),e._v(" Configuration files")]),e._v(" "),t("p",[t("code",[e._v("beachball")]),e._v(" uses "),t("a",{attrs:{href:"https://github.com/davidtheclark/cosmiconfig",target:"_blank",rel:"noopener noreferrer"}},[t("code",[e._v("cosmiconfig")]),t("OutboundLink")],1),e._v(" to read its configuration, so you can specify configuration in several ways (in addition to CLI arguments).")]),e._v(" "),t("ul",[t("li",[t("code",[e._v('"beachball"')]),e._v(" key inside "),t("code",[e._v("package.json")])]),e._v(" "),t("li",[t("code",[e._v(".beachballrc")])]),e._v(" "),t("li",[t("code",[e._v(".beachballrc.json")])]),e._v(" "),t("li",[t("code",[e._v("beachball.config.js")])])]),e._v(" "),t("h3",{attrs:{id:"beachball-config-js"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#beachball-config-js"}},[e._v("#")]),e._v(" "),t("code",[e._v("beachball.config.js")])]),e._v(" "),t("p",[e._v("In many cases, you'll want to use a JavaScript config file (written as a CommonJS module), since this is the most flexible and allows comments.")]),e._v(" "),t("div",{staticClass:"language-js extra-class"},[t("pre",{pre:!0,attrs:{class:"language-js"}},[t("code",[e._v("module"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(".")]),e._v("exports "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("key")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" value"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("key2")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" value2\n "),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("key3")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" value3\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n")])])]),t("p",[e._v("Config files can be placed in either the root of a repo and/or within individual packages (package config overrides the repo config where applicable). For example:")]),e._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("packages/\n foo/\n src/\n package.json\n beachball.config.js\n bar/\n src/\n package.json\npackage.json\nbeachball.config.js\n")])])]),t("p",[e._v("It's also common to have a repo-level "),t("code",[e._v("beachball.config.js")]),e._v(" and any individual package overrides (if they're simple) in the "),t("code",[e._v('"beachball"')]),e._v(" key in the package's "),t("code",[e._v("package.json")]),e._v(".")]),e._v(" "),t("h2",{attrs:{id:"options"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#options"}},[e._v("#")]),e._v(" Options")]),e._v(" "),t("p",[e._v("For the latest full list of supported options, see "),t("code",[e._v("RepoOptions")]),e._v(" "),t("a",{attrs:{href:"https://github.com/microsoft/beachball/blob/master/src/types/BeachballOptions.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("in this file"),t("OutboundLink")],1),e._v(".")]),e._v(" "),t("table",[t("thead",[t("tr",[t("th",[e._v("Option")]),e._v(" "),t("th",[e._v("Type")]),e._v(" "),t("th",[e._v("Default")]),e._v(" "),t("th",[e._v("Option Type")]),e._v(" "),t("th",[e._v("Description")])])]),e._v(" "),t("tbody",[t("tr",[t("td",[t("code",[e._v("access")])]),e._v(" "),t("td",[t("code",[e._v("'public'")]),e._v(" or "),t("code",[e._v("'restricted'")])]),e._v(" "),t("td",[t("code",[e._v("'restricted'")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("publishes private packages access level")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("branch")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td",[t("code",[e._v("'origin/master'")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("the target branch (with remote)")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("bumpDeps")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("true")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("bump dependent packages during publish (bump A if A depends on B)")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("changeFilePrompt")])]),e._v(" "),t("td",[t("code",[e._v("ChangeFilePromptOptions")]),e._v(" ("),t("a",{attrs:{href:"https://github.com/microsoft/beachball/blob/master/src/types/ChangeFilePrompt.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("details"),t("OutboundLink")],1),e._v(")")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("customize the prompt for change files (can be used to add custom fields)")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("changehint")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("hint message for when change files are not detected but required")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("changelog")])]),e._v(" "),t("td",[t("code",[e._v("ChangelogOptions")]),e._v(" ("),t("a",{attrs:{href:"https://github.com/microsoft/beachball/blob/master/src/types/ChangelogOptions.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("details"),t("OutboundLink")],1),e._v(")")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("changelog rendering and grouping options")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("defaultNpmTag")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td",[t("code",[e._v("'latest'")])]),e._v(" "),t("td",[e._v("package")]),e._v(" "),t("td",[e._v("the default dist-tag used for NPM publish")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("disallowedChangeTypes")])]),e._v(" "),t("td",[e._v("string[]")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo, group, package")]),e._v(" "),t("td",[e._v("what change types are disallowed")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("fetch")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("true")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("fetch from remote before doing diff comparisons")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("generateChangelog")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("true")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("whether to generate changelog files")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("gitTags")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("true")])]),e._v(" "),t("td",[e._v("repo, package")]),e._v(" "),t("td",[e._v("whether to create git tags for published packages (eg: foo_v1.0.1)")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("groups")])]),e._v(" "),t("td",[t("code",[e._v("VersionGroupOptions[]")]),e._v(" ("),t("a",{attrs:{href:"../concepts/groups"}},[e._v("details")]),e._v(")")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("specifies groups of packages that need to be version bumped at the same time")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("groupChanges")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("false")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("will write multiple changes to a single changefile")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("hooks")])]),e._v(" "),t("td",[t("code",[e._v("HooksOptions")]),e._v(" ("),t("a",{attrs:{href:"https://github.com/microsoft/beachball/blob/master/src/types/BeachballOptions.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("details"),t("OutboundLink")],1),e._v(")")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("hooks for custom pre/post publish actions")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("ignorePatterns")])]),e._v(" "),t("td",[e._v("string[]")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("ignore changes in these files (minimatch patterns; negations not supported)")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("package")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("specifies which package the command relates to (overrides change detection based on "),t("code",[e._v("git diff")]),e._v(")")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("prereleasePrefix")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("prerelease prefix for packages that are specified to receive a prerelease bump")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("publish")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("true")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("whether to publish to npm registry")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("push")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("true")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("whether to push to the remote git branch")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("registry")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("target NPM registry to publish")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("retries")])]),e._v(" "),t("td",[e._v("number")]),e._v(" "),t("td",[t("code",[e._v("3")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("number of retries for a package publish before failing")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("shouldPublish")])]),e._v(" "),t("td",[e._v("false | undefined")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("package")]),e._v(" "),t("td",[e._v("manually disable publishing of a package by beachball (does not work to force publishing)")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("tag")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td",[t("code",[e._v("'latest'")])]),e._v(" "),t("td",[e._v("repo, package")]),e._v(" "),t("td",[e._v("dist-tag for npm when published")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("transform")])]),e._v(" "),t("td",[t("code",[e._v("TransformOptions")]),e._v(" ("),t("a",{attrs:{href:"https://github.com/microsoft/beachball/blob/master/src/types/BeachballOptions.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("details"),t("OutboundLink")],1),e._v(")")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("transformations for change files")])])])])])}),[],!1,null,null,null);t.default=r.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[33],{319:function(e,t,o){"use strict";o.r(t);var a=o(10),r=Object(a.a)({},(function(){var e=this,t=e._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"configuration"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#configuration"}},[e._v("#")]),e._v(" Configuration")]),e._v(" "),t("p",[e._v("For most uses you probably do not need any specific configuration on each package within your repository. But there are a few options to customize "),t("code",[e._v("beachball")]),e._v("'s behavior.")]),e._v(" "),t("p",[e._v("There are two types of configurations:")]),e._v(" "),t("ol",[t("li",[e._v("repository config")]),e._v(" "),t("li",[e._v("package config")])]),e._v(" "),t("h2",{attrs:{id:"configuration-files"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#configuration-files"}},[e._v("#")]),e._v(" Configuration files")]),e._v(" "),t("p",[t("code",[e._v("beachball")]),e._v(" uses "),t("a",{attrs:{href:"https://github.com/davidtheclark/cosmiconfig",target:"_blank",rel:"noopener noreferrer"}},[t("code",[e._v("cosmiconfig")]),t("OutboundLink")],1),e._v(" to read its configuration, so you can specify configuration in several ways (in addition to CLI arguments).")]),e._v(" "),t("ul",[t("li",[t("code",[e._v('"beachball"')]),e._v(" key inside "),t("code",[e._v("package.json")])]),e._v(" "),t("li",[t("code",[e._v(".beachballrc")])]),e._v(" "),t("li",[t("code",[e._v(".beachballrc.json")])]),e._v(" "),t("li",[t("code",[e._v("beachball.config.js")])])]),e._v(" "),t("h3",{attrs:{id:"beachball-config-js"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#beachball-config-js"}},[e._v("#")]),e._v(" "),t("code",[e._v("beachball.config.js")])]),e._v(" "),t("p",[e._v("In many cases, you'll want to use a JavaScript config file (written as a CommonJS module), since this is the most flexible and allows comments.")]),e._v(" "),t("div",{staticClass:"language-js extra-class"},[t("pre",{pre:!0,attrs:{class:"language-js"}},[t("code",[e._v("module"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(".")]),e._v("exports "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("key")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" value"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("key2")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" value2\n "),t("span",{pre:!0,attrs:{class:"token literal-property property"}},[e._v("key3")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" value3\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n")])])]),t("p",[e._v("Config files can be placed in either the root of a repo and/or within individual packages (package config overrides the repo config where applicable). For example:")]),e._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("packages/\n foo/\n src/\n package.json\n beachball.config.js\n bar/\n src/\n package.json\npackage.json\nbeachball.config.js\n")])])]),t("p",[e._v("It's also common to have a repo-level "),t("code",[e._v("beachball.config.js")]),e._v(" and any individual package overrides (if they're simple) in the "),t("code",[e._v('"beachball"')]),e._v(" key in the package's "),t("code",[e._v("package.json")]),e._v(".")]),e._v(" "),t("h2",{attrs:{id:"options"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#options"}},[e._v("#")]),e._v(" Options")]),e._v(" "),t("p",[e._v("For the latest full list of supported options, see "),t("code",[e._v("RepoOptions")]),e._v(" "),t("a",{attrs:{href:"https://github.com/microsoft/beachball/blob/master/src/types/BeachballOptions.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("in this file"),t("OutboundLink")],1),e._v(".")]),e._v(" "),t("table",[t("thead",[t("tr",[t("th",[e._v("Option")]),e._v(" "),t("th",[e._v("Type")]),e._v(" "),t("th",[e._v("Default")]),e._v(" "),t("th",[e._v("Option Type")]),e._v(" "),t("th",[e._v("Description")])])]),e._v(" "),t("tbody",[t("tr",[t("td",[t("code",[e._v("access")])]),e._v(" "),t("td",[t("code",[e._v("'public'")]),e._v(" or "),t("code",[e._v("'restricted'")])]),e._v(" "),t("td",[t("code",[e._v("'restricted'")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("publishes private packages access level")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("branch")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td",[t("code",[e._v("'origin/master'")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("the target branch (with remote)")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("bumpDeps")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("true")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("bump dependent packages during publish (bump A if A depends on B)")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("changeFilePrompt")])]),e._v(" "),t("td",[t("code",[e._v("ChangeFilePromptOptions")]),e._v(" ("),t("a",{attrs:{href:"https://github.com/microsoft/beachball/blob/master/src/types/ChangeFilePrompt.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("details"),t("OutboundLink")],1),e._v(")")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("customize the prompt for change files (can be used to add custom fields)")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("changehint")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("hint message for when change files are not detected but required")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("changelog")])]),e._v(" "),t("td",[t("code",[e._v("ChangelogOptions")]),e._v(" ("),t("a",{attrs:{href:"https://github.com/microsoft/beachball/blob/master/src/types/ChangelogOptions.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("details"),t("OutboundLink")],1),e._v(")")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("changelog rendering and grouping options")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("defaultNpmTag")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td",[t("code",[e._v("'latest'")])]),e._v(" "),t("td",[e._v("package")]),e._v(" "),t("td",[e._v("the default dist-tag used for NPM publish")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("disallowedChangeTypes")])]),e._v(" "),t("td",[e._v("string[]")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo, group, package")]),e._v(" "),t("td",[e._v("what change types are disallowed")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("fetch")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("true")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("fetch from remote before doing diff comparisons")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("generateChangelog")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("true")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("whether to generate changelog files")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("gitTags")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("true")])]),e._v(" "),t("td",[e._v("repo, package")]),e._v(" "),t("td",[e._v("whether to create git tags for published packages (eg: foo_v1.0.1)")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("groups")])]),e._v(" "),t("td",[t("code",[e._v("VersionGroupOptions[]")]),e._v(" ("),t("a",{attrs:{href:"../concepts/groups"}},[e._v("details")]),e._v(")")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("specifies groups of packages that need to be version bumped at the same time")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("groupChanges")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("false")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("will write multiple changes to a single changefile")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("hooks")])]),e._v(" "),t("td",[t("code",[e._v("HooksOptions")]),e._v(" ("),t("a",{attrs:{href:"https://github.com/microsoft/beachball/blob/master/src/types/BeachballOptions.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("details"),t("OutboundLink")],1),e._v(")")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("hooks for custom pre/post publish actions")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("ignorePatterns")])]),e._v(" "),t("td",[e._v("string[]")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("ignore changes in these files (minimatch patterns; negations not supported)")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("package")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("specifies which package the command relates to (overrides change detection based on "),t("code",[e._v("git diff")]),e._v(")")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("prereleasePrefix")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("prerelease prefix for packages that are specified to receive a prerelease bump")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("publish")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("true")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("whether to publish to npm registry")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("push")])]),e._v(" "),t("td",[e._v("bool")]),e._v(" "),t("td",[t("code",[e._v("true")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("whether to push to the remote git branch")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("registry")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("target NPM registry to publish")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("retries")])]),e._v(" "),t("td",[e._v("number")]),e._v(" "),t("td",[t("code",[e._v("3")])]),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("number of retries for a package publish before failing")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("shouldPublish")])]),e._v(" "),t("td",[e._v("false | undefined")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("package")]),e._v(" "),t("td",[e._v("manually disable publishing of a package by beachball (does not work to force publishing)")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("tag")])]),e._v(" "),t("td",[e._v("string")]),e._v(" "),t("td",[t("code",[e._v("'latest'")])]),e._v(" "),t("td",[e._v("repo, package")]),e._v(" "),t("td",[e._v("dist-tag for npm when published")])]),e._v(" "),t("tr",[t("td",[t("code",[e._v("transform")])]),e._v(" "),t("td",[t("code",[e._v("TransformOptions")]),e._v(" ("),t("a",{attrs:{href:"https://github.com/microsoft/beachball/blob/master/src/types/BeachballOptions.ts",target:"_blank",rel:"noopener noreferrer"}},[e._v("details"),t("OutboundLink")],1),e._v(")")]),e._v(" "),t("td"),e._v(" "),t("td",[e._v("repo")]),e._v(" "),t("td",[e._v("transformations for change files")])])])])])}),[],!1,null,null,null);t.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/35.2cd3eb5d.js b/assets/js/35.ef607cc0.js similarity index 99% rename from assets/js/35.2cd3eb5d.js rename to assets/js/35.ef607cc0.js index 1661f3bbf..15d770906 100644 --- a/assets/js/35.2cd3eb5d.js +++ b/assets/js/35.ef607cc0.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[35],{319:function(a,t,e){"use strict";e.r(t);var s=e(10),n=Object(s.a)({},(function(){var a=this,t=a._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"installation"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#installation"}},[a._v("#")]),a._v(" Installation")]),a._v(" "),t("h2",{attrs:{id:"cli-setup"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#cli-setup"}},[a._v("#")]),a._v(" CLI setup")]),a._v(" "),t("p",[a._v("The primary way to use "),t("code",[a._v("beachball")]),a._v(" is by installing it as a "),t("code",[a._v("devDependency")]),a._v(" and configuring wrapper scripts. (You can also run "),t("code",[a._v("beachball")]),a._v(" via "),t("code",[a._v("npx")]),a._v(".)")]),a._v(" "),t("blockquote",[t("p",[a._v("Note: In a monorepo, "),t("code",[a._v("beachball")]),a._v(" should be installed at and run from the repo root only.")])]),a._v(" "),t("h3",{attrs:{id:"automatic-setup"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#automatic-setup"}},[a._v("#")]),a._v(" Automatic setup")]),a._v(" "),t("p",[a._v("Run "),t("code",[a._v("npx beachball init")]),a._v(" to automatically run the steps outlined below.")]),a._v(" "),t("h3",{attrs:{id:"manual-setup"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#manual-setup"}},[a._v("#")]),a._v(" Manual setup")]),a._v(" "),t("p",[a._v("To get started, install "),t("code",[a._v("beachball")]),a._v(" as a "),t("code",[a._v("devDependency")]),a._v(":")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[a._v("npm")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-D")]),a._v(" beachball\n")])])]),t("p",[a._v("or for yarn users (add "),t("code",[a._v("-W")]),a._v(" if in a monorepo):")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[a._v("yarn")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("add")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-D")]),a._v(" beachball\n")])])]),t("p",[a._v("After that, add some scripts to call "),t("code",[a._v("beachball")]),a._v(" commands:")]),a._v(" "),t("div",{staticClass:"language-json extra-class"},[t("pre",{pre:!0,attrs:{class:"language-json"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"scripts"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"change"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"beachball change"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"checkchange"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"beachball check"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"release"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"beachball publish"')]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n")])])]),t("p",[a._v("You should also ensure that a "),t("a",{attrs:{href:"https://docs.npmjs.com/cli/v9/configuring-npm/package-json#repository",target:"_blank",rel:"noopener noreferrer"}},[t("code",[a._v("repository")]),t("OutboundLink")],1),a._v(" URL is set in your repo root "),t("code",[a._v("package.json")]),a._v(" to help "),t("code",[a._v("beachball")]),a._v(" figure out which remote to compare against when determining changes. For example:")]),a._v(" "),t("div",{staticClass:"language-json extra-class"},[t("pre",{pre:!0,attrs:{class:"language-json"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"repository"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"type"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"git"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"url"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"https://github.com/your-org-name/your-repo-name.git"')]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n")])])]),t("h2",{attrs:{id:"local-development-workflow"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#local-development-workflow"}},[a._v("#")]),a._v(" Local development workflow")]),a._v(" "),t("p",[a._v("After making and committing changes in a branch, run "),t("code",[a._v("npm run change")]),a._v(" or "),t("code",[a._v("yarn change")]),a._v(" to generate change files. See the "),t("a",{attrs:{href:"../concepts/change-files"}},[a._v("change files page")]),a._v(" for more details.")]),a._v(" "),t("h2",{attrs:{id:"ci-integration"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#ci-integration"}},[a._v("#")]),a._v(" CI integration")]),a._v(" "),t("p",[a._v("There are two parts to CI integration with "),t("code",[a._v("beachball")]),a._v(":")]),a._v(" "),t("ol",[t("li",[t("a",{attrs:{href:"../concepts/change-files#validating-change-files"}},[a._v("Add a PR build step")]),a._v(" to call "),t("code",[a._v("beachball check")]),a._v(" to validate that change files are included.")]),a._v(" "),t("li",[t("a",{attrs:{href:"../concepts/ci-integration"}},[a._v("Add a release build step")]),a._v(" to call "),t("code",[a._v("beachball publish")]),a._v(" to publish to npm and push back to git.")])])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[35],{318:function(a,t,e){"use strict";e.r(t);var s=e(10),n=Object(s.a)({},(function(){var a=this,t=a._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"installation"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#installation"}},[a._v("#")]),a._v(" Installation")]),a._v(" "),t("h2",{attrs:{id:"cli-setup"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#cli-setup"}},[a._v("#")]),a._v(" CLI setup")]),a._v(" "),t("p",[a._v("The primary way to use "),t("code",[a._v("beachball")]),a._v(" is by installing it as a "),t("code",[a._v("devDependency")]),a._v(" and configuring wrapper scripts. (You can also run "),t("code",[a._v("beachball")]),a._v(" via "),t("code",[a._v("npx")]),a._v(".)")]),a._v(" "),t("blockquote",[t("p",[a._v("Note: In a monorepo, "),t("code",[a._v("beachball")]),a._v(" should be installed at and run from the repo root only.")])]),a._v(" "),t("h3",{attrs:{id:"automatic-setup"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#automatic-setup"}},[a._v("#")]),a._v(" Automatic setup")]),a._v(" "),t("p",[a._v("Run "),t("code",[a._v("npx beachball init")]),a._v(" to automatically run the steps outlined below.")]),a._v(" "),t("h3",{attrs:{id:"manual-setup"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#manual-setup"}},[a._v("#")]),a._v(" Manual setup")]),a._v(" "),t("p",[a._v("To get started, install "),t("code",[a._v("beachball")]),a._v(" as a "),t("code",[a._v("devDependency")]),a._v(":")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[a._v("npm")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-D")]),a._v(" beachball\n")])])]),t("p",[a._v("or for yarn users (add "),t("code",[a._v("-W")]),a._v(" if in a monorepo):")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[a._v("yarn")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("add")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-D")]),a._v(" beachball\n")])])]),t("p",[a._v("After that, add some scripts to call "),t("code",[a._v("beachball")]),a._v(" commands:")]),a._v(" "),t("div",{staticClass:"language-json extra-class"},[t("pre",{pre:!0,attrs:{class:"language-json"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"scripts"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"change"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"beachball change"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"checkchange"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"beachball check"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"release"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"beachball publish"')]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n")])])]),t("p",[a._v("You should also ensure that a "),t("a",{attrs:{href:"https://docs.npmjs.com/cli/v9/configuring-npm/package-json#repository",target:"_blank",rel:"noopener noreferrer"}},[t("code",[a._v("repository")]),t("OutboundLink")],1),a._v(" URL is set in your repo root "),t("code",[a._v("package.json")]),a._v(" to help "),t("code",[a._v("beachball")]),a._v(" figure out which remote to compare against when determining changes. For example:")]),a._v(" "),t("div",{staticClass:"language-json extra-class"},[t("pre",{pre:!0,attrs:{class:"language-json"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"repository"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"type"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"git"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"url"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"https://github.com/your-org-name/your-repo-name.git"')]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n")])])]),t("h2",{attrs:{id:"local-development-workflow"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#local-development-workflow"}},[a._v("#")]),a._v(" Local development workflow")]),a._v(" "),t("p",[a._v("After making and committing changes in a branch, run "),t("code",[a._v("npm run change")]),a._v(" or "),t("code",[a._v("yarn change")]),a._v(" to generate change files. See the "),t("a",{attrs:{href:"../concepts/change-files"}},[a._v("change files page")]),a._v(" for more details.")]),a._v(" "),t("h2",{attrs:{id:"ci-integration"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#ci-integration"}},[a._v("#")]),a._v(" CI integration")]),a._v(" "),t("p",[a._v("There are two parts to CI integration with "),t("code",[a._v("beachball")]),a._v(":")]),a._v(" "),t("ol",[t("li",[t("a",{attrs:{href:"../concepts/change-files#validating-change-files"}},[a._v("Add a PR build step")]),a._v(" to call "),t("code",[a._v("beachball check")]),a._v(" to validate that change files are included.")]),a._v(" "),t("li",[t("a",{attrs:{href:"../concepts/ci-integration"}},[a._v("Add a release build step")]),a._v(" to call "),t("code",[a._v("beachball publish")]),a._v(" to publish to npm and push back to git.")])])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/app.8be80b3b.js b/assets/js/app.c3e12f2f.js similarity index 96% rename from assets/js/app.8be80b3b.js rename to assets/js/app.c3e12f2f.js index 0066e0c51..e2931084c 100644 --- a/assets/js/app.8be80b3b.js +++ b/assets/js/app.c3e12f2f.js @@ -1,4 +1,4 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[]]);!function(t){function e(e){for(var r,a,s=e[0],c=e[1],u=e[2],f=0,p=[];f
'};function o(t,e,n){return tn?n:t}function i(t){return 100*(-1+t)}n.configure=function(t){var e,n;for(e in t)void 0!==(n=t[e])&&t.hasOwnProperty(e)&&(r[e]=n);return this},n.status=null,n.set=function(t){var e=n.isStarted();t=o(t,r.minimum,1),n.status=1===t?null:t;var c=n.render(!e),u=c.querySelector(r.barSelector),l=r.speed,f=r.easing;return c.offsetWidth,a((function(e){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),s(u,function(t,e,n){var o;return(o="translate3d"===r.positionUsing?{transform:"translate3d("+i(t)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+i(t)+"%,0)"}:{"margin-left":i(t)+"%"}).transition="all "+e+"ms "+n,o}(t,l,f)),1===t?(s(c,{transition:"none",opacity:1}),c.offsetWidth,setTimeout((function(){s(c,{transition:"all "+l+"ms linear",opacity:0}),setTimeout((function(){n.remove(),e()}),l)}),l)):setTimeout(e,l)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var t=function(){setTimeout((function(){n.status&&(n.trickle(),t())}),r.trickleSpeed)};return r.trickle&&t(),this},n.done=function(t){return t||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(t){var e=n.status;return e?("number"!=typeof t&&(t=(1-e)*o(Math.random()*e,.1,.95)),e=o(e+t,0,.994),n.set(e)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},t=0,e=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===e&&n.start(),t++,e++,r.always((function(){0==--e?(t=0,n.done()):n.set((t-e)/t)})),this):this},n.render=function(t){if(n.isRendered())return document.getElementById("nprogress");u(document.documentElement,"nprogress-busy");var e=document.createElement("div");e.id="nprogress",e.innerHTML=r.template;var o,a=e.querySelector(r.barSelector),c=t?"-100":i(n.status||0),l=document.querySelector(r.parent);return s(a,{transition:"all 0 linear",transform:"translate3d("+c+"%,0,0)"}),r.showSpinner||(o=e.querySelector(r.spinnerSelector))&&p(o),l!=document.body&&u(l,"nprogress-custom-parent"),l.appendChild(e),e},n.remove=function(){l(document.documentElement,"nprogress-busy"),l(document.querySelector(r.parent),"nprogress-custom-parent");var t=document.getElementById("nprogress");t&&p(t)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var t=document.body.style,e="WebkitTransform"in t?"Webkit":"MozTransform"in t?"Moz":"msTransform"in t?"ms":"OTransform"in t?"O":"";return e+"Perspective"in t?"translate3d":e+"Transform"in t?"translate":"margin"};var a=function(){var t=[];function e(){var n=t.shift();n&&n(e)}return function(n){t.push(n),1==t.length&&e()}}(),s=function(){var t=["Webkit","O","Moz","ms"],e={};function n(n){return n=n.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(t,e){return e.toUpperCase()})),e[n]||(e[n]=function(e){var n=document.body.style;if(e in n)return e;for(var r,o=t.length,i=e.charAt(0).toUpperCase()+e.slice(1);o--;)if((r=t[o]+i)in n)return r;return e}(n))}function r(t,e,r){e=n(e),t.style[e]=r}return function(t,e){var n,o,i=arguments;if(2==i.length)for(n in e)void 0!==(o=e[n])&&e.hasOwnProperty(n)&&r(t,n,o);else r(t,i[1],i[2])}}();function c(t,e){return("string"==typeof t?t:f(t)).indexOf(" "+e+" ")>=0}function u(t,e){var n=f(t),r=n+e;c(n,e)||(t.className=r.substring(1))}function l(t,e){var n,r=f(t);c(t,e)&&(n=r.replace(" "+e+" "," "),t.className=n.substring(1,n.length-1))}function f(t){return(" "+(t.className||"")+" ").replace(/\s+/gi," ")}function p(t){t&&t.parentNode&&t.parentNode.removeChild(t)}return n})?r.call(e,n,e,t):r)||(t.exports=o)},function(t,e,n){"use strict";var r=n(1),o=n(45).f,i=n(13),a=n(93),s=n(32),c=n(61),u=n(121);t.exports=function(t,e){var n,l,f,p,h,d=t.target,v=t.global,m=t.stat;if(n=v?r:m?r[d]||s(d,{}):(r[d]||{}).prototype)for(l in e){if(p=e[l],f=t.dontCallGetSet?(h=o(n,l))&&h.value:n[l],!u(v?l:d+(m?".":"#")+l,t.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(t.sham||f&&f.sham)&&i(p,"sham",!0),a(n,l,p,t)}}},function(t,e,n){"use strict";var r=n(25),o=Function.prototype.call;t.exports=r?o.bind(o):function(){return o.apply(o,arguments)}},function(t,e,n){"use strict";var r=n(3);t.exports=!r((function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")}))},function(t,e,n){"use strict";t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e,n){"use strict";var r=n(46),o=n(47);t.exports=function(t){return r(o(t))}},function(t,e,n){"use strict";var r=n(1),o=n(0),i=function(t){return o(t)?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t]):r[t]&&r[t][e]}},function(t,e,n){"use strict";var r=n(0),o=n(103),i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(o(t)+" is not a function")}},function(t,e,n){"use strict";var r=n(1),o=n(56),i=n(7),a=n(58),s=n(54),c=n(53),u=r.Symbol,l=o("wks"),f=c?u.for||u:u&&u.withoutSetter||a;t.exports=function(t){return i(l,t)||(l[t]=s&&i(u,t)?u[t]:f("Symbol."+t)),l[t]}},function(t,e,n){"use strict";var r=n(1),o=n(32),i=r["__core-js_shared__"]||o("__core-js_shared__",{});t.exports=i},function(t,e,n){"use strict";var r=n(1),o=Object.defineProperty;t.exports=function(t,e){try{o(r,t,{value:e,configurable:!0,writable:!0})}catch(n){r[t]=e}return e}},function(t,e,n){"use strict";var r=n(47),o=Object;t.exports=function(t){return o(r(t))}},function(t,e,n){"use strict";var r=n(8),o=String,i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(o(t)+" is not an object")}},function(t,e,n){"use strict";var r=n(118);t.exports=function(t){return r(t.length)}},function(t,e,n){var r=n(144),o=n(11),i=Object.prototype,a=i.hasOwnProperty,s=i.propertyIsEnumerable,c=r(function(){return arguments}())?r:function(t){return o(t)&&a.call(t,"callee")&&!s.call(t,"callee")};t.exports=c},function(t,e,n){var r=n(9)(n(6),"Map");t.exports=r},function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},function(t,e,n){var r=n(164),o=n(171),i=n(173),a=n(174),s=n(175);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e-1&&t%1==0&&t<=9007199254740991}},function(t,e,n){var r=n(4),o=n(43),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;t.exports=function(t,e){if(r(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!o(t))||(a.test(t)||!i.test(t)||null!=e&&t in Object(e))}},function(t,e,n){var r=n(12),o=n(11);t.exports=function(t){return"symbol"==typeof t||o(t)&&"[object Symbol]"==r(t)}},function(t,e){t.exports=function(t){return t}},function(t,e,n){"use strict";var r=n(5),o=n(24),i=n(99),a=n(26),s=n(27),c=n(49),u=n(7),l=n(59),f=Object.getOwnPropertyDescriptor;e.f=r?f:function(t,e){if(t=s(t),e=c(e),l)try{return f(t,e)}catch(t){}if(u(t,e))return a(!o(i.f,t,e),t[e])}},function(t,e,n){"use strict";var r=n(2),o=n(3),i=n(16),a=Object,s=r("".split);t.exports=o((function(){return!a("z").propertyIsEnumerable(0)}))?function(t){return"String"===i(t)?s(t,""):a(t)}:a},function(t,e,n){"use strict";var r=n(48),o=TypeError;t.exports=function(t){if(r(t))throw new o("Can't call method on "+t);return t}},function(t,e,n){"use strict";t.exports=function(t){return null==t}},function(t,e,n){"use strict";var r=n(100),o=n(51);t.exports=function(t){var e=r(t,"string");return o(e)?e:e+""}},function(t,e,n){"use strict";var r="object"==typeof document&&document.all,o=void 0===r&&void 0!==r;t.exports={all:r,IS_HTMLDDA:o}},function(t,e,n){"use strict";var r=n(28),o=n(0),i=n(52),a=n(53),s=Object;t.exports=a?function(t){return"symbol"==typeof t}:function(t){var e=r("Symbol");return o(e)&&i(e.prototype,s(t))}},function(t,e,n){"use strict";var r=n(2);t.exports=r({}.isPrototypeOf)},function(t,e,n){"use strict";var r=n(54);t.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(t,e,n){"use strict";var r=n(55),o=n(3),i=n(1).String;t.exports=!!Object.getOwnPropertySymbols&&!o((function(){var t=Symbol("symbol detection");return!i(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},function(t,e,n){"use strict";var r,o,i=n(1),a=n(101),s=i.process,c=i.Deno,u=s&&s.versions||c&&c.version,l=u&&u.v8;l&&(o=(r=l.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),t.exports=o},function(t,e,n){"use strict";var r=n(57),o=n(31);(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.33.0",mode:r?"pure":"global",copyright:"© 2014-2023 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.33.0/LICENSE",source:"https://github.com/zloirock/core-js"})},function(t,e,n){"use strict";t.exports=!1},function(t,e,n){"use strict";var r=n(2),o=0,i=Math.random(),a=r(1..toString);t.exports=function(t){return"Symbol("+(void 0===t?"":t)+")_"+a(++o+i,36)}},function(t,e,n){"use strict";var r=n(5),o=n(3),i=n(105);t.exports=!r&&!o((function(){return 7!==Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},function(t,e,n){"use strict";t.exports={}},function(t,e,n){"use strict";var r=n(7),o=n(112),i=n(45),a=n(15);t.exports=function(t,e,n){for(var s=o(e),c=a.f,u=i.f,l=0;ll))return!1;var p=c.get(t),h=c.get(e);if(p&&h)return p==e&&h==t;var d=-1,v=!0,m=2&n?new r:void 0;for(c.set(t,e),c.set(e,t);++d-1&&t%1==0&&t=0&&Math.floor(e)===e&&isFinite(t)}function v(t){return a(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function m(t){return null==t?"":Array.isArray(t)||p(t)&&t.toString===f?JSON.stringify(t,null,2):String(t)}function g(t){var e=parseFloat(t);return isNaN(e)?t:e}function y(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(r,1)}}var w=Object.prototype.hasOwnProperty;function x(t,e){return w.call(t,e)}function O(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var C=/-(\w)/g,$=O((function(t){return t.replace(C,(function(t,e){return e?e.toUpperCase():""}))})),k=O((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),S=/\B([A-Z])/g,j=O((function(t){return t.replace(S,"-$1").toLowerCase()}));var E=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function P(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function A(t,e){for(var n in e)t[n]=e[n];return t}function T(t){for(var e={},n=0;n0,Z=J&&J.indexOf("edge/")>0;J&&J.indexOf("android");var Q=J&&/iphone|ipad|ipod|ios/.test(J);J&&/chrome\/\d+/.test(J),J&&/phantomjs/.test(J);var tt,et=J&&J.match(/firefox\/(\d+)/),nt={}.watch,rt=!1;if(K)try{var ot={};Object.defineProperty(ot,"passive",{get:function(){rt=!0}}),window.addEventListener("test-passive",null,ot)}catch(t){}var it=function(){return void 0===tt&&(tt=!K&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),tt},at=K&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function st(t){return"function"==typeof t&&/native code/.test(t.toString())}var ct,ut="undefined"!=typeof Symbol&&st(Symbol)&&"undefined"!=typeof Reflect&&st(Reflect.ownKeys);ct="undefined"!=typeof Set&&st(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var lt=null;function ft(t){void 0===t&&(t=null),t||lt&<._scope.off(),lt=t,t&&t._scope.on()}var pt=function(){function t(t,e,n,r,o,i,a,s){this.tag=t,this.data=e,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(t.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),t}(),ht=function(t){void 0===t&&(t="");var e=new pt;return e.text=t,e.isComment=!0,e};function dt(t){return new pt(void 0,void 0,void 0,String(t))}function vt(t){var e=new pt(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}var mt=0,gt=[],yt=function(){function t(){this._pending=!1,this.id=mt++,this.subs=[]}return t.prototype.addSub=function(t){this.subs.push(t)},t.prototype.removeSub=function(t){this.subs[this.subs.indexOf(t)]=null,this._pending||(this._pending=!0,gt.push(this))},t.prototype.depend=function(e){t.target&&t.target.addDep(this)},t.prototype.notify=function(t){var e=this.subs.filter((function(t){return t}));for(var n=0,r=e.length;n0&&(Jt((u=t(u,"".concat(n||"","_").concat(r)))[0])&&Jt(f)&&(p[l]=dt(f.text+u[0].text),u.shift()),p.push.apply(p,u)):c(u)?Jt(f)?p[l]=dt(f.text+u):""!==u&&p.push(dt(u)):Jt(u)&&Jt(f)?p[l]=dt(f.text+u.text):(s(e._isVList)&&a(u.tag)&&i(u.key)&&a(n)&&(u.key="__vlist".concat(n,"_").concat(r,"__")),p.push(u)));return p}(t):void 0}function Jt(t){return a(t)&&a(t.text)&&!1===t.isComment}function Xt(t,e){var n,r,i,s,c=null;if(o(t)||"string"==typeof t)for(c=new Array(t.length),n=0,r=t.length;n0,s=e?!!e.$stable:!a,c=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(s&&o&&o!==r&&c===o.$key&&!a&&!o.$hasNormal)return o;for(var u in i={},e)e[u]&&"$"!==u[0]&&(i[u]=ve(t,n,u,e[u]))}else i={};for(var l in n)l in i||(i[l]=me(n,l));return e&&Object.isExtensible(e)&&(e._normalized=i),q(i,"$stable",s),q(i,"$key",c),q(i,"$hasNormal",a),i}function ve(t,e,n,r){var i=function(){var e=lt;ft(t);var n=arguments.length?r.apply(null,arguments):r({}),i=(n=n&&"object"==typeof n&&!o(n)?[n]:Kt(n))&&n[0];return ft(e),n&&(!i||1===n.length&&i.isComment&&!he(i))?void 0:n};return r.proxy&&Object.defineProperty(e,n,{get:i,enumerable:!0,configurable:!0}),i}function me(t,e){return function(){return t[e]}}function ge(t){return{get attrs(){if(!t._attrsProxy){var e=t._attrsProxy={};q(e,"_v_attr_proxy",!0),ye(e,t.$attrs,r,t,"$attrs")}return t._attrsProxy},get listeners(){t._listenersProxy||ye(t._listenersProxy={},t.$listeners,r,t,"$listeners");return t._listenersProxy},get slots(){return function(t){t._slotsProxy||_e(t._slotsProxy={},t.$scopedSlots);return t._slotsProxy}(t)},emit:E(t.$emit,t),expose:function(e){e&&Object.keys(e).forEach((function(n){return Ft(t,e,n)}))}}}function ye(t,e,n,r,o){var i=!1;for(var a in e)a in t?e[a]!==n[a]&&(i=!0):(i=!0,be(t,a,r,o));for(var a in t)a in e||(i=!0,delete t[a]);return i}function be(t,e,n,r){Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){return n[r][e]}})}function _e(t,e){for(var n in e)t[n]=e[n];for(var n in t)n in e||delete t[n]}var we=null;function xe(t,e){return(t.__esModule||ut&&"Module"===t[Symbol.toStringTag])&&(t=t.default),l(t)?e.extend(t):t}function Oe(t){if(o(t))for(var e=0;edocument.createEvent("Event").timeStamp&&(cn=function(){return un.now()})}var ln=function(t,e){if(t.post){if(!e.post)return 1}else if(e.post)return-1;return t.id-e.id};function fn(){var t,e;for(sn=cn(),on=!0,tn.sort(ln),an=0;anan&&tn[n].id>t.id;)n--;tn.splice(n+1,0,t)}else tn.push(t);rn||(rn=!0,Ne(fn))}}function hn(t,e){if(t){for(var n=Object.create(null),r=ut?Reflect.ownKeys(t):Object.keys(t),o=0;o-1)if(i&&!x(o,"default"))a=!1;else if(""===a||a===j(t)){var c=Mn(String,o.type);(c<0||s-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!h(t)&&t.test(e)}function Xn(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=a.name;s&&!e(s)&&Yn(n,i,r,o)}}}function Yn(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,_(n,e)}Wn.prototype._init=function(t){var e=this;e._uid=Hn++,e._isVue=!0,e.__v_skip=!0,e._scope=new zt(!0),e._scope._vm=!0,t&&t._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),r=e._parentVnode;n.parent=e.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(e,t):e.$options=En(qn(e.constructor),t||{},e),e._renderProxy=e,e._self=e,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._provided=n?n._provided:Object.create(null),t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(e),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&Ke(t,e)}(e),function(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,o=n&&n.context;t.$slots=fe(e._renderChildren,o),t.$scopedSlots=n?de(t.$parent,n.data.scopedSlots,t.$slots):r,t._c=function(e,n,r,o){return Ce(t,e,n,r,o,!1)},t.$createElement=function(e,n,r,o){return Ce(t,e,n,r,o,!0)};var i=n&&n.data;At(t,"$attrs",i&&i.attrs||r,null,!0),At(t,"$listeners",e._parentListeners||r,null,!0)}(e),Qe(e,"beforeCreate",void 0,!1),function(t){var e=hn(t.$options.inject,t);e&&(St(!1),Object.keys(e).forEach((function(n){At(t,n,e[n])})),St(!0))}(e),Nn(e),function(t){var e=t.$options.provide;if(e){var n=u(e)?e.call(t):e;if(!l(n))return;for(var r=Bt(t),o=ut?Reflect.ownKeys(n):Object.keys(n),i=0;i1?P(n):n;for(var r=P(arguments,1),o='event handler for "'.concat(t,'"'),i=0,a=n.length;iparseInt(this.max)&&Yn(t,e[0],e,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)Yn(this.cache,t,this.keys)},mounted:function(){var t=this;this.cacheVNode(),this.$watch("include",(function(e){Xn(t,(function(t){return Jn(e,t)}))})),this.$watch("exclude",(function(e){Xn(t,(function(t){return!Jn(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=Oe(t),n=e&&e.componentOptions;if(n){var r=Kn(n),o=this.include,i=this.exclude;if(o&&(!r||!Jn(o,r))||i&&r&&Jn(i,r))return e;var a=this.cache,s=this.keys,c=null==e.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):e.key;a[c]?(e.componentInstance=a[c].componentInstance,_(s,c),s.push(c)):(this.vnodeToCache=e,this.keyToCache=c),e.data.keepAlive=!0}return e||t&&t[0]}}};!function(t){var e={get:function(){return B}};Object.defineProperty(t,"config",e),t.util={warn:xn,extend:A,mergeOptions:En,defineReactive:At},t.set=Tt,t.delete=Lt,t.nextTick=Ne,t.observable=function(t){return Pt(t),t},t.options=Object.create(null),U.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,A(t.options.components,Qn),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=P(arguments,1);return n.unshift(this),u(t.install)?t.install.apply(t,n):u(t)&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=En(this.options,t),this}}(t),Gn(t),function(t){U.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&p(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&u(n)&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}(Wn),Object.defineProperty(Wn.prototype,"$isServer",{get:it}),Object.defineProperty(Wn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(Wn,"FunctionalRenderContext",{value:dn}),Wn.version="2.7.14";var tr=y("style,class"),er=y("input,textarea,option,select,progress"),nr=y("contenteditable,draggable,spellcheck"),rr=y("events,caret,typing,plaintext-only"),or=y("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),ir="http://www.w3.org/1999/xlink",ar=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},sr=function(t){return ar(t)?t.slice(6,t.length):""},cr=function(t){return null==t||!1===t};function ur(t){for(var e=t.data,n=t,r=t;a(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(e=lr(r.data,e));for(;a(n=n.parent);)n&&n.data&&(e=lr(e,n.data));return function(t,e){if(a(t)||a(e))return fr(t,pr(e));return""}(e.staticClass,e.class)}function lr(t,e){return{staticClass:fr(t.staticClass,e.staticClass),class:a(t.class)?[t.class,e.class]:e.class}}function fr(t,e){return t?e?t+" "+e:t:e||""}function pr(t){return Array.isArray(t)?function(t){for(var e,n="",r=0,o=t.length;r-1?Ir(t,e,n):or(e)?cr(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):nr(e)?t.setAttribute(e,function(t,e){return cr(e)||"false"===e?"false":"contenteditable"===t&&rr(e)?e:"true"}(e,n)):ar(e)?cr(n)?t.removeAttributeNS(ir,sr(e)):t.setAttributeNS(ir,e,n):Ir(t,e,n)}function Ir(t,e,n){if(cr(n))t.removeAttribute(e);else{if(X&&!Y&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var Dr={create:Rr,update:Rr};function Nr(t,e){var n=e.elm,r=e.data,o=t.data;if(!(i(r.staticClass)&&i(r.class)&&(i(o)||i(o.staticClass)&&i(o.class)))){var s=ur(e),c=n._transitionClasses;a(c)&&(s=fr(s,pr(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var Fr,Ur={create:Nr,update:Nr};function zr(t,e,n){var r=Fr;return function o(){var i=e.apply(null,arguments);null!==i&&Hr(t,o,n,r)}}var Br=Pe&&!(et&&Number(et[1])<=53);function Vr(t,e,n,r){if(Br){var o=sn,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}Fr.addEventListener(t,e,rt?{capture:n,passive:r}:n)}function Hr(t,e,n,r){(r||Fr).removeEventListener(t,e._wrapper||e,n)}function qr(t,e){if(!i(t.data.on)||!i(e.data.on)){var n=e.data.on||{},r=t.data.on||{};Fr=e.elm||t.elm,function(t){if(a(t.__r)){var e=X?"change":"input";t[e]=[].concat(t.__r,t[e]||[]),delete t.__r}a(t.__c)&&(t.change=[].concat(t.__c,t.change||[]),delete t.__c)}(n),qt(n,r,Vr,Hr,zr,e.context),Fr=void 0}}var Wr,Gr={create:qr,update:qr,destroy:function(t){return qr(t,Or)}};function Kr(t,e){if(!i(t.data.domProps)||!i(e.data.domProps)){var n,r,o=e.elm,c=t.data.domProps||{},u=e.data.domProps||{};for(n in(a(u.__ob__)||s(u._v_attr_proxy))&&(u=e.data.domProps=A({},u)),c)n in u||(o[n]="");for(n in u){if(r=u[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),r===c[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=r;var l=i(r)?"":String(r);Jr(o,l)&&(o.value=l)}else if("innerHTML"===n&&vr(o.tagName)&&i(o.innerHTML)){(Wr=Wr||document.createElement("div")).innerHTML="".concat(r,"");for(var f=Wr.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;f.firstChild;)o.appendChild(f.firstChild)}else if(r!==c[n])try{o[n]=r}catch(t){}}}}function Jr(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,r=t._vModifiers;if(a(r)){if(r.number)return g(n)!==g(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var Xr={create:Kr,update:Kr},Yr=O((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}})),e}));function Zr(t){var e=Qr(t.style);return t.staticStyle?A(t.staticStyle,e):e}function Qr(t){return Array.isArray(t)?T(t):"string"==typeof t?Yr(t):t}var to,eo=/^--/,no=/\s*!important$/,ro=function(t,e,n){if(eo.test(e))t.style.setProperty(e,n);else if(no.test(n))t.style.setProperty(j(e),n.replace(no,""),"important");else{var r=io(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split(co).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" ".concat(t.getAttribute("class")||""," ");n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function lo(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(co).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" ".concat(t.getAttribute("class")||""," "),r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function fo(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&A(e,po(t.name||"v")),A(e,t),e}return"string"==typeof t?po(t):void 0}}var po=O((function(t){return{enterClass:"".concat(t,"-enter"),enterToClass:"".concat(t,"-enter-to"),enterActiveClass:"".concat(t,"-enter-active"),leaveClass:"".concat(t,"-leave"),leaveToClass:"".concat(t,"-leave-to"),leaveActiveClass:"".concat(t,"-leave-active")}})),ho=K&&!Y,vo="transition",mo="transitionend",go="animation",yo="animationend";ho&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(vo="WebkitTransition",mo="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(go="WebkitAnimation",yo="webkitAnimationEnd"));var bo=K?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function _o(t){bo((function(){bo(t)}))}function wo(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),uo(t,e))}function xo(t,e){t._transitionClasses&&_(t._transitionClasses,e),lo(t,e)}function Oo(t,e,n){var r=$o(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s="transition"===o?mo:yo,c=0,u=function(){t.removeEventListener(s,l),n()},l=function(e){e.target===t&&++c>=a&&u()};setTimeout((function(){c0&&(n="transition",l=a,f=i.length):"animation"===e?u>0&&(n="animation",l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?"transition":"animation":null)?"transition"===n?i.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:"transition"===n&&Co.test(r[vo+"Property"])}}function ko(t,e){for(;t.length1}function To(t,e){!0!==e.data.show&&jo(e)}var Lo=function(t){var e,n,r={},u=t.modules,l=t.nodeOps;for(e=0;ed?_(t,i(n[g+1])?null:n[g+1].elm,n,h,g,r):h>g&&x(e,f,d)}(f,v,g,n,u):a(g)?(a(t.text)&&l.setTextContent(f,""),_(f,null,g,0,g.length-1,n)):a(v)?x(v,0,v.length-1):a(t.text)&&l.setTextContent(f,""):t.text!==e.text&&l.setTextContent(f,e.text),a(d)&&a(h=d.hook)&&a(h=h.postpatch)&&h(t,e)}}}function k(t,e,n){if(s(n)&&a(t.parent))t.parent.data.pendingInsert=e;else for(var r=0;r-1,a.selected!==i&&(a.selected=i);else if(I(No(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function Do(t,e){return e.every((function(e){return!I(e,t)}))}function No(t){return"_value"in t?t._value:t.value}function Fo(t){t.target.composing=!0}function Uo(t){t.target.composing&&(t.target.composing=!1,zo(t.target,"input"))}function zo(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function Bo(t){return!t.componentInstance||t.data&&t.data.transition?t:Bo(t.componentInstance._vnode)}var Vo={model:Ro,show:{bind:function(t,e,n){var r=e.value,o=(n=Bo(n)).data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,jo(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value;!r!=!e.oldValue&&((n=Bo(n)).data&&n.data.transition?(n.data.show=!0,r?jo(n,(function(){t.style.display=t.__vOriginalDisplay})):Eo(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}}},Ho={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function qo(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?qo(Oe(e.children)):t}function Wo(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var r in o)e[$(r)]=o[r];return e}function Go(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var Ko=function(t){return t.tag||he(t)},Jo=function(t){return"show"===t.name},Xo={name:"transition",props:Ho,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Ko)).length){0;var r=this.mode;0;var o=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return o;var i=qo(o);if(!i)return o;if(this._leaving)return Go(t,o);var a="__transition-".concat(this._uid,"-");i.key=null==i.key?i.isComment?a+"comment":a+i.tag:c(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=Wo(this),u=this._vnode,l=qo(u);if(i.data.directives&&i.data.directives.some(Jo)&&(i.data.show=!0),l&&l.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(i,l)&&!he(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=A({},s);if("out-in"===r)return this._leaving=!0,Wt(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),Go(t,o);if("in-out"===r){if(he(i))return u;var p,h=function(){p()};Wt(s,"afterEnter",h),Wt(s,"enterCancelled",h),Wt(f,"delayLeave",(function(t){p=t}))}}return o}}},Yo=A({tag:String,moveClass:String},Ho);function Zo(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function Qo(t){t.data.newPos=t.elm.getBoundingClientRect()}function ti(t){var e=t.data.pos,n=t.data.newPos,r=e.left-n.left,o=e.top-n.top;if(r||o){t.data.moved=!0;var i=t.elm.style;i.transform=i.WebkitTransform="translate(".concat(r,"px,").concat(o,"px)"),i.transitionDuration="0s"}}delete Yo.mode;var ei={Transition:Xo,TransitionGroup:{props:Yo,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Xe(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=Wo(this),s=0;s-1?gr[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:gr[t]=/HTMLUnknownElement/.test(e.toString())},A(Wn.options.directives,Vo),A(Wn.options.components,ei),Wn.prototype.__patch__=K?Lo:L,Wn.prototype.$mount=function(t,e){return function(t,e,n){var r;t.$el=e,t.$options.render||(t.$options.render=ht),Qe(t,"beforeMount"),r=function(){t._update(t._render(),n)},new He(t,r,L,{before:function(){t._isMounted&&!t._isDestroyed&&Qe(t,"beforeUpdate")}},!0),n=!1;var o=t._preWatchers;if(o)for(var i=0;i=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}(o.path||""),u=e&&e.path||"/",l=c.path?xi(c.path,u,n||o.append):u,f=function(t,e,n){void 0===e&&(e={});var r,o=n||ui;try{r=o(t||"")}catch(t){r={}}for(var i in e){var a=e[i];r[i]=Array.isArray(a)?a.map(ci):ci(a)}return r}(c.query,o.query,r&&r.options.parseQuery),p=o.hash||c.hash;return p&&"#"!==p.charAt(0)&&(p="#"+p),{_normalized:!0,path:l,query:f,hash:p}}var Vi,Hi=function(){},qi={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},custom:Boolean,exact:Boolean,exactPath:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:{type:String,default:"page"},event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,o=n.resolve(this.to,r,this.append),i=o.location,a=o.route,s=o.href,c={},u=n.options.linkActiveClass,l=n.options.linkExactActiveClass,f=null==u?"router-link-active":u,p=null==l?"router-link-exact-active":l,h=null==this.activeClass?f:this.activeClass,d=null==this.exactActiveClass?p:this.exactActiveClass,v=a.redirectedFrom?pi(null,Bi(a.redirectedFrom),null,n):a;c[d]=gi(r,v,this.exactPath),c[h]=this.exact||this.exactPath?c[d]:function(t,e){return 0===t.path.replace(fi,"/").indexOf(e.path.replace(fi,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,v);var m=c[d]?this.ariaCurrentValue:null,g=function(t){Wi(t)&&(e.replace?n.replace(i,Hi):n.push(i,Hi))},y={click:Wi};Array.isArray(this.event)?this.event.forEach((function(t){y[t]=g})):y[this.event]=g;var b={class:c},_=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:s,route:a,navigate:g,isActive:c[h],isExactActive:c[d]});if(_){if(1===_.length)return _[0];if(_.length>1||!_.length)return 0===_.length?t():t("span",{},_)}if("a"===this.tag)b.on=y,b.attrs={href:s,"aria-current":m};else{var w=function t(e){var n;if(e)for(var r=0;r-1&&(s.params[p]=n.params[p]);return s.path=zi(l.path,s.params),c(l,s,a)}if(s.path){s.params={};for(var h=0;h-1}function Oa(t,e){return xa(t)&&t._isRouter&&(null==e||t.type===e)}function Ca(t,e,n){var r=function(o){o>=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}function $a(t){return function(e,n,r){var o=!1,i=0,a=null;ka(t,(function(t,e,n,s){if("function"==typeof t&&void 0===t.cid){o=!0,i++;var c,u=Ea((function(e){var o;((o=e).__esModule||ja&&"Module"===o[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:Vi.extend(e),n.components[s]=e,--i<=0&&r()})),l=Ea((function(t){var e="Failed to resolve async component "+s+": "+t;a||(a=xa(t)?t:new Error(e),r(a))}));try{c=t(u,l)}catch(t){l(t)}if(c)if("function"==typeof c.then)c.then(u,l);else{var f=c.component;f&&"function"==typeof f.then&&f.then(u,l)}}})),o||r()}}function ka(t,e){return Sa(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function Sa(t){return Array.prototype.concat.apply([],t)}var ja="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function Ea(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var Pa=function(t,e){this.router=t,this.base=function(t){if(!t)if(Gi){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=di,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function Aa(t,e,n,r){var o=ka(t,(function(t,r,o,i){var a=function(t,e){"function"!=typeof t&&(t=Vi.extend(t));return t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,o,i)})):n(a,r,o,i)}));return Sa(r?o.reverse():o)}function Ta(t,e){if(e)return function(){return t.apply(e,arguments)}}Pa.prototype.listen=function(t){this.cb=t},Pa.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},Pa.prototype.onError=function(t){this.errorCbs.push(t)},Pa.prototype.transitionTo=function(t,e,n){var r,o=this;try{r=this.router.match(t,this.current)}catch(t){throw this.errorCbs.forEach((function(e){e(t)})),t}var i=this.current;this.confirmTransition(r,(function(){o.updateRoute(r),e&&e(r),o.ensureURL(),o.router.afterHooks.forEach((function(t){t&&t(r,i)})),o.ready||(o.ready=!0,o.readyCbs.forEach((function(t){t(r)})))}),(function(t){n&&n(t),t&&!o.ready&&(Oa(t,ga.redirected)&&i===di||(o.ready=!0,o.readyErrorCbs.forEach((function(e){e(t)}))))}))},Pa.prototype.confirmTransition=function(t,e,n){var r=this,o=this.current;this.pending=t;var i,a,s=function(t){!Oa(t)&&xa(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)},c=t.matched.length-1,u=o.matched.length-1;if(gi(t,o)&&c===u&&t.matched[c]===o.matched[u])return this.ensureURL(),t.hash&&ia(this.router,o,t,!1),s(((a=_a(i=o,t,ga.duplicated,'Avoided redundant navigation to current location: "'+i.fullPath+'".')).name="NavigationDuplicated",a));var l=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n0)){var e=this.router,n=e.options.scrollBehavior,r=da&&n;r&&this.listeners.push(oa());var o=function(){var n=t.current,o=Ra(t.base);t.current===di&&o===t._startLocation||t.transitionTo(o,(function(t){r&&ia(e,t,n,!0)}))};window.addEventListener("popstate",o),this.listeners.push((function(){window.removeEventListener("popstate",o)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){va(Oi(r.base+t.fullPath)),ia(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){ma(Oi(r.base+t.fullPath)),ia(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(Ra(this.base)!==this.current.fullPath){var e=Oi(this.base+this.current.fullPath);t?va(e):ma(e)}},e.prototype.getCurrentLocation=function(){return Ra(this.base)},e}(Pa);function Ra(t){var e=window.location.pathname,n=e.toLowerCase(),r=t.toLowerCase();return!t||n!==r&&0!==n.indexOf(Oi(r+"/"))||(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var Ma=function(t){function e(e,n,r){t.call(this,e,n),r&&function(t){var e=Ra(t);if(!/^\/#/.test(e))return window.location.replace(Oi(t+"/#"+e)),!0}(this.base)||Ia()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router.options.scrollBehavior,n=da&&e;n&&this.listeners.push(oa());var r=function(){var e=t.current;Ia()&&t.transitionTo(Da(),(function(r){n&&ia(t.router,r,e,!0),da||Ua(r.fullPath)}))},o=da?"popstate":"hashchange";window.addEventListener(o,r),this.listeners.push((function(){window.removeEventListener(o,r)}))}},e.prototype.push=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){Fa(t.fullPath),ia(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){Ua(t.fullPath),ia(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;Da()!==e&&(t?Fa(e):Ua(e))},e.prototype.getCurrentLocation=function(){return Da()},e}(Pa);function Ia(){var t=Da();return"/"===t.charAt(0)||(Ua("/"+t),!1)}function Da(){var t=window.location.href,e=t.indexOf("#");return e<0?"":t=t.slice(e+1)}function Na(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function Fa(t){da?va(Na(t)):window.location.hash=t}function Ua(t){da?ma(Na(t)):window.location.replace(Na(t))}var za=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){var t=e.current;e.index=n,e.updateRoute(r),e.router.afterHooks.forEach((function(e){e&&e(r,t)}))}),(function(t){Oa(t,ga.duplicated)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Pa),Ba=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Xi(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!da&&!1!==t.fallback,this.fallback&&(e="hash"),Gi||(e="abstract"),this.mode=e,e){case"history":this.history=new La(this,t.base);break;case"hash":this.history=new Ma(this,t.base,this.fallback);break;case"abstract":this.history=new za(this,t.base);break;default:0}},Va={currentRoute:{configurable:!0}};Ba.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},Va.currentRoute.get=function(){return this.history&&this.history.current},Ba.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null),e.app||e.history.teardown()})),!this.app){this.app=t;var n=this.history;if(n instanceof La||n instanceof Ma){var r=function(t){n.setupListeners(),function(t){var r=n.current,o=e.options.scrollBehavior;da&&o&&"fullPath"in t&&ia(e,t,r,!1)}(t)};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},Ba.prototype.beforeEach=function(t){return qa(this.beforeHooks,t)},Ba.prototype.beforeResolve=function(t){return qa(this.resolveHooks,t)},Ba.prototype.afterEach=function(t){return qa(this.afterHooks,t)},Ba.prototype.onReady=function(t,e){this.history.onReady(t,e)},Ba.prototype.onError=function(t){this.history.onError(t)},Ba.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},Ba.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},Ba.prototype.go=function(t){this.history.go(t)},Ba.prototype.back=function(){this.go(-1)},Ba.prototype.forward=function(){this.go(1)},Ba.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},Ba.prototype.resolve=function(t,e,n){var r=Bi(t,e=e||this.history.current,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath;return{location:r,route:o,href:function(t,e,n){var r="hash"===n?"#"+e:e;return t?Oi(t+"/"+r):r}(this.history.base,i,this.mode),normalizedTo:r,resolved:o}},Ba.prototype.getRoutes=function(){return this.matcher.getRoutes()},Ba.prototype.addRoute=function(t,e){this.matcher.addRoute(t,e),this.history.current!==di&&this.history.transitionTo(this.history.getCurrentLocation())},Ba.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==di&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Ba.prototype,Va);var Ha=Ba;function qa(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}Ba.install=function t(e){if(!t.installed||Vi!==e){t.installed=!0,Vi=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",_i),e.component("RouterLink",qi);var o=e.config.optionMergeStrategies;o.beforeRouteEnter=o.beforeRouteLeave=o.beforeRouteUpdate=o.created}},Ba.version="3.6.5",Ba.isNavigationFailure=Oa,Ba.NavigationFailureType=ga,Ba.START_LOCATION=di,Gi&&window.Vue&&window.Vue.use(Ba);n(98);n(91),n(128);var Wa={"components/AlgoliaSearchBox":()=>Promise.all([n.e(0),n.e(13)]).then(n.bind(null,300)),"components/DropdownLink":()=>Promise.all([n.e(0),n.e(14)]).then(n.bind(null,256)),"components/DropdownTransition":()=>Promise.all([n.e(0),n.e(19)]).then(n.bind(null,244)),"components/Home":()=>Promise.all([n.e(0),n.e(16)]).then(n.bind(null,282)),"components/NavLink":()=>n.e(21).then(n.bind(null,243)),"components/NavLinks":()=>Promise.all([n.e(0),n.e(12)]).then(n.bind(null,267)),"components/Navbar":()=>Promise.all([n.e(0),n.e(1)]).then(n.bind(null,296)),"components/Page":()=>Promise.all([n.e(0),n.e(11)]).then(n.bind(null,283)),"components/PageEdit":()=>Promise.all([n.e(0),n.e(17)]).then(n.bind(null,269)),"components/PageNav":()=>Promise.all([n.e(0),n.e(15)]).then(n.bind(null,270)),"components/Sidebar":()=>Promise.all([n.e(0),n.e(10)]).then(n.bind(null,284)),"components/SidebarButton":()=>Promise.all([n.e(0),n.e(20)]).then(n.bind(null,285)),"components/SidebarGroup":()=>Promise.all([n.e(0),n.e(3)]).then(n.bind(null,268)),"components/SidebarLink":()=>Promise.all([n.e(0),n.e(18)]).then(n.bind(null,257)),"components/SidebarLinks":()=>Promise.all([n.e(0),n.e(3)]).then(n.bind(null,255)),"global-components/Badge":()=>Promise.all([n.e(0),n.e(4)]).then(n.bind(null,307)),"global-components/CodeBlock":()=>Promise.all([n.e(0),n.e(5)]).then(n.bind(null,301)),"global-components/CodeGroup":()=>Promise.all([n.e(0),n.e(6)]).then(n.bind(null,302)),"layouts/404":()=>n.e(7).then(n.bind(null,303)),"layouts/Layout":()=>Promise.all([n.e(0),n.e(1),n.e(2)]).then(n.bind(null,304)),NotFound:()=>n.e(7).then(n.bind(null,303)),Layout:()=>Promise.all([n.e(0),n.e(1),n.e(2)]).then(n.bind(null,304))},Ga={"v-b3815688":()=>n.e(22).then(n.bind(null,308)),"v-618fa90d":()=>n.e(24).then(n.bind(null,309)),"v-2546927e":()=>n.e(23).then(n.bind(null,310)),"v-c82b0b82":()=>n.e(25).then(n.bind(null,311)),"v-48bf0382":()=>n.e(26).then(n.bind(null,312)),"v-69d4dc92":()=>n.e(28).then(n.bind(null,313)),"v-25ef3a5f":()=>n.e(27).then(n.bind(null,314)),"v-a3c5b642":()=>n.e(29).then(n.bind(null,305)),"v-15e3261f":()=>n.e(30).then(n.bind(null,315)),"v-48398402":()=>n.e(31).then(n.bind(null,316)),"v-d10bd742":()=>n.e(32).then(n.bind(null,317)),"v-83bed76a":()=>n.e(33).then(n.bind(null,318)),"v-5bcc1347":()=>n.e(34).then(n.bind(null,306)),"v-1643c9df":()=>n.e(35).then(n.bind(null,319))};function Ka(t){const e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}const Ja=/-(\w)/g,Xa=Ka(t=>t.replace(Ja,(t,e)=>e?e.toUpperCase():"")),Ya=/\B([A-Z])/g,Za=Ka(t=>t.replace(Ya,"-$1").toLowerCase()),Qa=Ka(t=>t.charAt(0).toUpperCase()+t.slice(1));function ts(t,e){if(!e)return;if(t(e))return t(e);return e.includes("-")?t(Qa(Xa(e))):t(Qa(e))||t(Za(e))}const es=Object.assign({},Wa,Ga),ns=t=>es[t],rs=t=>Ga[t],os=t=>Wa[t],is=t=>Wn.component(t);function as(t){return ts(rs,t)}function ss(t){return ts(os,t)}function cs(t){return ts(ns,t)}function us(t){return ts(is,t)}function ls(...t){return Promise.all(t.filter(t=>t).map(async t=>{if(!us(t)&&cs(t)){const e=await cs(t)();Wn.component(t,e.default)}}))}function fs(t,e){"undefined"!=typeof window&&window.__VUEPRESS__&&(window.__VUEPRESS__[t]=e)}var ps=n(88),hs=n.n(ps),ds=n(89),vs=n.n(ds),ms={created(){if(this.siteMeta=this.$site.headTags.filter(([t])=>"meta"===t).map(([t,e])=>e),this.$ssrContext){const e=this.getMergedMetaTags();this.$ssrContext.title=this.$title,this.$ssrContext.lang=this.$lang,this.$ssrContext.pageMeta=(t=e)?t.map(t=>{let e="{e+=` ${n}="${vs()(t[n])}"`}),e+">"}).join("\n "):"",this.$ssrContext.canonicalLink=ys(this.$canonicalUrl)}var t},mounted(){this.currentMetaTags=[...document.querySelectorAll("meta")],this.updateMeta(),this.updateCanonicalLink()},methods:{updateMeta(){document.title=this.$title,document.documentElement.lang=this.$lang;const t=this.getMergedMetaTags();this.currentMetaTags=bs(t,this.currentMetaTags)},getMergedMetaTags(){const t=this.$page.frontmatter.meta||[];return hs()([{name:"description",content:this.$description}],t,this.siteMeta,_s)},updateCanonicalLink(){gs(),this.$canonicalUrl&&document.head.insertAdjacentHTML("beforeend",ys(this.$canonicalUrl))}},watch:{$page(){this.updateMeta(),this.updateCanonicalLink()}},beforeDestroy(){bs(null,this.currentMetaTags),gs()}};function gs(){const t=document.querySelector("link[rel='canonical']");t&&t.remove()}function ys(t=""){return t?``:""}function bs(t,e){if(e&&[...e].filter(t=>t.parentNode===document.head).forEach(t=>document.head.removeChild(t)),t)return t.map(t=>{const e=document.createElement("meta");return Object.keys(t).forEach(n=>{e.setAttribute(n,t[n])}),document.head.appendChild(e),e})}function _s(t){for(const e of["name","property","itemprop"])if(t.hasOwnProperty(e))return t[e]+e;return JSON.stringify(t)}var ws=n(90),xs={mounted(){window.addEventListener("scroll",this.onScroll)},methods:{onScroll:n.n(ws)()((function(){this.setActiveHash()}),300),setActiveHash(){const t=[].slice.call(document.querySelectorAll(".sidebar-link")),e=[].slice.call(document.querySelectorAll(".header-anchor")).filter(e=>t.some(t=>t.hash===e.hash)),n=Math.max(window.pageYOffset,document.documentElement.scrollTop,document.body.scrollTop),r=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),o=window.innerHeight+n;for(let t=0;t=i.parentElement.offsetTop+10&&(!a||n{this.$nextTick(()=>{this.$vuepress.$set("disableScrollBehavior",!1)})})}}}},beforeDestroy(){window.removeEventListener("scroll",this.onScroll)}},Os=n(22),Cs=n.n(Os),$s=[ms,xs,{mounted(){Cs.a.configure({showSpinner:!1}),this.$router.beforeEach((t,e,n)=>{t.path===e.path||Wn.component(t.name)||Cs.a.start(),n()}),this.$router.afterEach(()=>{Cs.a.done(),this.isSidebarOpen=!1})}}],ks={name:"GlobalLayout",computed:{layout(){const t=this.getLayout();return fs("layout",t),Wn.component(t)}},methods:{getLayout(){if(this.$page.path){const t=this.$page.frontmatter.layout;return t&&(this.$vuepress.getLayoutAsyncComponent(t)||this.$vuepress.getVueComponent(t))?t:"Layout"}return"NotFound"}}},Ss=n(10),js=Object(Ss.a)(ks,(function(){return(0,this._self._c)(this.layout,{tag:"component"})}),[],!1,null,null,null).exports;!function(t,e,n){switch(e){case"components":t[e]||(t[e]={}),Object.assign(t[e],n);break;case"mixins":t[e]||(t[e]=[]),t[e].push(...n);break;default:throw new Error("Unknown option name.")}}(js,"mixins",$s);const Es=[{name:"v-b3815688",path:"/",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-b3815688").then(n)}},{path:"/index.html",redirect:"/"},{name:"v-618fa90d",path:"/cli/change.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-618fa90d").then(n)}},{name:"v-2546927e",path:"/cli/bump.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-2546927e").then(n)}},{name:"v-c82b0b82",path:"/cli/check.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-c82b0b82").then(n)}},{name:"v-48bf0382",path:"/cli/options.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-48bf0382").then(n)}},{name:"v-69d4dc92",path:"/cli/sync.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-69d4dc92").then(n)}},{name:"v-25ef3a5f",path:"/cli/publish.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-25ef3a5f").then(n)}},{name:"v-a3c5b642",path:"/concepts/bump-algorithm.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-a3c5b642").then(n)}},{name:"v-15e3261f",path:"/concepts/change-files.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-15e3261f").then(n)}},{name:"v-48398402",path:"/concepts/ci-integration.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-48398402").then(n)}},{name:"v-d10bd742",path:"/concepts/groups.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-d10bd742").then(n)}},{name:"v-83bed76a",path:"/overview/configuration.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-83bed76a").then(n)}},{name:"v-5bcc1347",path:"/overview/getting-started.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-5bcc1347").then(n)}},{name:"v-1643c9df",path:"/overview/installation.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-1643c9df").then(n)}},{path:"*",component:js}],Ps={title:"beachball",description:"The Sunniest Semantic Version Bumper",base:"/beachball/",headTags:[],pages:[{title:"Home",frontmatter:{home:!0,heroText:"The Sunniest Semantic Version Bumper",tagline:"Makes automating npm publishing a breeze",actionText:"Get Started →",actionLink:"/overview/getting-started",features:[{title:"Synchronized in git and npm",details:"keep your git and npm versions in sync in CI and local workflows"},{title:"Generates Changelogs",details:"same command will generate changelogs for your users"},{title:"Automated Version Bumps",details:"one command line to bump package(s) in your repo with semver"},{title:"Single or Monorepo",details:"compatible out of the box for single repo or monorepos"},{title:"Pre-Publish Validation Checks",details:"double and triple check git repo and npm registry before publish"},{title:"Zero Config Versioning",details:"no config is required to get started, do more in one line"}],footer:"MIT Licensed | Copyright © 2019-present Microsoft"},regularPath:"/",relativePath:"README.md",key:"v-b3815688",path:"/"},{title:"change",frontmatter:{tags:["cli"],category:"doc"},regularPath:"/cli/change.html",relativePath:"cli/change.md",key:"v-618fa90d",path:"/cli/change.html",headers:[{level:3,title:"Options",slug:"options"},{level:3,title:"Examples",slug:"examples"},{level:3,title:"Prompt walkthrough",slug:"prompt-walkthrough"}]},{title:"bump",frontmatter:{tags:["cli"],category:"doc"},regularPath:"/cli/bump.html",relativePath:"cli/bump.md",key:"v-2546927e",path:"/cli/bump.html",headers:[{level:3,title:"Options",slug:"options"}]},{title:"check",frontmatter:{tags:["cli"],category:"doc"},regularPath:"/cli/check.html",relativePath:"cli/check.md",key:"v-c82b0b82",path:"/cli/check.html",headers:[{level:3,title:"Options",slug:"options"},{level:3,title:"Where should check be run?",slug:"where-should-check-be-run"}]},{title:"Common Options",frontmatter:{title:"Common Options",tags:["cli"],category:"doc"},regularPath:"/cli/options.html",relativePath:"cli/options.md",key:"v-48bf0382",path:"/cli/options.html",headers:[{level:2,title:"General options",slug:"general-options"},{level:2,title:"change options",slug:"change-options"},{level:2,title:"Bumping and publishing options",slug:"bumping-and-publishing-options"}]},{title:"sync",frontmatter:{tags:["cli"],category:"doc"},regularPath:"/cli/sync.html",relativePath:"cli/sync.md",key:"v-69d4dc92",path:"/cli/sync.html",headers:[{level:3,title:"Options",slug:"options"}]},{title:"publish",frontmatter:{tags:["cli"],category:"doc"},regularPath:"/cli/publish.html",relativePath:"cli/publish.md",key:"v-25ef3a5f",path:"/cli/publish.html",headers:[{level:3,title:"Options",slug:"options"},{level:3,title:"Algorithm",slug:"algorithm"},{level:3,title:"Example CI workflow",slug:"example-ci-workflow"},{level:3,title:"Recovering from failed publish",slug:"recovering-from-failed-publish"}]},{title:"Bump Algorithm",frontmatter:{tags:["bump"],category:"doc"},regularPath:"/concepts/bump-algorithm.html",relativePath:"concepts/bump-algorithm.md",key:"v-a3c5b642",path:"/concepts/bump-algorithm.html",headers:[{level:3,title:"Dependent version bumping",slug:"dependent-version-bumping"},{level:3,title:"Grouped bumping",slug:"grouped-bumping"}]},{title:"Change Files",frontmatter:{tags:["overview"],category:"doc"},regularPath:"/concepts/change-files.html",relativePath:"concepts/change-files.md",key:"v-15e3261f",path:"/concepts/change-files.html",headers:[{level:2,title:"What is a change file?",slug:"what-is-a-change-file"},{level:2,title:"Generating a change file",slug:"generating-a-change-file"},{level:2,title:"Validating change files",slug:"validating-change-files"}]},{title:"CI Integration",frontmatter:{tags:["overview"],category:"doc"},regularPath:"/concepts/ci-integration.html",relativePath:"concepts/ci-integration.md",key:"v-48398402",path:"/concepts/ci-integration.html",headers:[{level:2,title:"Authentication",slug:"authentication"},{level:3,title:"Generating tokens",slug:"generating-tokens"},{level:3,title:"Storing tokens",slug:"storing-tokens"},{level:2,title:"Setting options for publishing",slug:"setting-options-for-publishing"},{level:2,title:"Publishing",slug:"publishing"},{level:3,title:"GitHub repo + GitHub Actions",slug:"github-repo-github-actions"},{level:3,title:"GitHub repo + Azure Pipelines",slug:"github-repo-azure-pipelines"},{level:3,title:"Azure Repos + Azure Pipelines",slug:"azure-repos-azure-pipelines"}]},{title:"Version Groups",frontmatter:{tags:["groups","lock step"],category:"doc"},regularPath:"/concepts/groups.html",relativePath:"concepts/groups.md",key:"v-d10bd742",path:"/concepts/groups.html",headers:[{level:3,title:"Configuring groups",slug:"configuring-groups"}]},{title:"Configuration",frontmatter:{tags:["overview"],category:"doc"},regularPath:"/overview/configuration.html",relativePath:"overview/configuration.md",key:"v-83bed76a",path:"/overview/configuration.html",headers:[{level:2,title:"Configuration files",slug:"configuration-files"},{level:3,title:"beachball.config.js",slug:"beachball-config-js"},{level:2,title:"Options",slug:"options"}]},{title:"Getting Started",frontmatter:{tags:["overview"],category:"doc"},regularPath:"/overview/getting-started.html",relativePath:"overview/getting-started.md",key:"v-5bcc1347",path:"/overview/getting-started.html",headers:[{level:2,title:"Why Beachball?",slug:"why-beachball"},{level:2,title:"Beachball workflow",slug:"beachball-workflow"},{level:2,title:"Next steps",slug:"next-steps"}]},{title:"Installation",frontmatter:{tags:["overview"],category:"doc"},regularPath:"/overview/installation.html",relativePath:"overview/installation.md",key:"v-1643c9df",path:"/overview/installation.html",headers:[{level:2,title:"CLI setup",slug:"cli-setup"},{level:3,title:"Automatic setup",slug:"automatic-setup"},{level:3,title:"Manual setup",slug:"manual-setup"},{level:2,title:"Local development workflow",slug:"local-development-workflow"},{level:2,title:"CI integration",slug:"ci-integration"}]}],themeConfig:{nav:[{text:"Home",link:"/"},{text:"Getting Started",link:"/overview/getting-started"},{text:"Github",link:"https://github.com/microsoft/beachball"}],sidebar:[{title:"Overview",collapsable:!1,children:["/overview/installation","/overview/getting-started","/overview/configuration"]},{title:"Concepts",collapsable:!1,children:["/concepts/bump-algorithm","/concepts/change-files","/concepts/ci-integration","/concepts/groups"]},{title:"Command Line Args",collapsable:!1,children:["/cli/options","/cli/bump","/cli/change","/cli/check","/cli/publish","/cli/sync"]}]}};n(235);Wn.component("Badge",()=>Promise.all([n.e(0),n.e(4)]).then(n.bind(null,307))),Wn.component("CodeBlock",()=>Promise.all([n.e(0),n.e(5)]).then(n.bind(null,301))),Wn.component("CodeGroup",()=>Promise.all([n.e(0),n.e(6)]).then(n.bind(null,302)));n(236);var As={props:{color:{required:!1,default:"rgb(66, 185, 131)"}}},Ts=(n(237),Object(Ss.a)(As,(function(){return(0,this._self._c)("div",{staticClass:"spinner",style:{background:this.color}})}),[],!1,null,"1bbcb91a",null).exports);const Ls={name:"Mermaid",props:{id:{type:String,required:!1,default:()=>"diagram_"+Date.now()},graph:{type:String,required:!1}},data:()=>({svg:void 0}),computed:{graphData(){return this.graph?this.graph:this.$slots.default[0].text}},render(t){return void 0===this.svg?t("Loading"):t("div",{class:["mermaid-diagram"],domProps:{innerHTML:this.svg,style:"width: 100%"}})},mounted(){n.e(36).then(n.t.bind(null,297,7)).then(t=>{t.initialize({startOnLoad:!0,gantt:{barHeight:20,fontSize:12,useWidth:960}}),t.render(this.id,this.graphData,t=>{this.svg=t})})},components:{Loading:Ts}};var Rs=[{},({Vue:t})=>{t.mixin({computed:{$dataBlock(){return this.$options.__data__block__}}})},{},{},({Vue:t})=>{t.component(Ls.name,Ls)}],Ms=[];class Is extends class{constructor(){this.store=new Wn({data:{state:{}}})}$get(t){return this.store.state[t]}$set(t,e){Wn.set(this.store.state,t,e)}$emit(...t){this.store.$emit(...t)}$on(...t){this.store.$on(...t)}}{}Object.assign(Is.prototype,{getPageAsyncComponent:as,getLayoutAsyncComponent:ss,getAsyncComponent:cs,getVueComponent:us});var Ds={install(t){const e=new Is;t.$vuepress=e,t.prototype.$vuepress=e}};function Ns(t,e){const n=e.toLowerCase();return t.options.routes.some(t=>t.path.toLowerCase()===n)}var Fs={props:{pageKey:String,slotKey:{type:String,default:"default"}},render(t){const e=this.pageKey||this.$parent.$page.key;return fs("pageKey",e),Wn.component(e)||Wn.component(e,as(e)),Wn.component(e)?t(e):t("")}},Us={functional:!0,props:{slotKey:String,required:!0},render:(t,{props:e,slots:n})=>t("div",{class:["content__"+e.slotKey]},n()[e.slotKey])},zs={computed:{openInNewWindowTitle(){return this.$themeLocaleConfig.openNewWindowText||"(opens new window)"}}},Bs=(n(238),n(239),Object(Ss.a)(zs,(function(){var t=this._self._c;return t("span",[t("svg",{staticClass:"icon outbound",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"}},[t("path",{attrs:{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}}),this._v(" "),t("polygon",{attrs:{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"}})]),this._v(" "),t("span",{staticClass:"sr-only"},[this._v(this._s(this.openInNewWindowTitle))])])}),[],!1,null,null,null).exports),Vs={functional:!0,render(t,{parent:e,children:n}){if(e._isMounted)return n;e.$once("hook:mounted",()=>{e.$forceUpdate()})}};Wn.config.productionTip=!1,Wn.use(Ha),Wn.use(Ds),Wn.mixin(function(t,e,n=Wn){!function(t){t.locales&&Object.keys(t.locales).forEach(e=>{t.locales[e].path=e});Object.freeze(t)}(e),n.$vuepress.$set("siteData",e);const r=new(t(n.$vuepress.$get("siteData"))),o=Object.getOwnPropertyDescriptors(Object.getPrototypeOf(r)),i={};return Object.keys(o).reduce((t,e)=>(e.startsWith("$")&&(t[e]=o[e].get),t),i),{computed:i}}(t=>class{setPage(t){this.__page=t}get $site(){return t}get $themeConfig(){return this.$site.themeConfig}get $frontmatter(){return this.$page.frontmatter}get $localeConfig(){const{locales:t={}}=this.$site;let e,n;for(const r in t)"/"===r?n=t[r]:0===this.$page.path.indexOf(r)&&(e=t[r]);return e||n||{}}get $siteTitle(){return this.$localeConfig.title||this.$site.title||""}get $canonicalUrl(){const{canonicalUrl:t}=this.$page.frontmatter;return"string"==typeof t&&t}get $title(){const t=this.$page,{metaTitle:e}=this.$page.frontmatter;if("string"==typeof e)return e;const n=this.$siteTitle,r=t.frontmatter.home?null:t.frontmatter.title||t.title;return n?r?r+" | "+n:n:r||"VuePress"}get $description(){const t=function(t){if(t){const e=t.filter(t=>"description"===t.name)[0];if(e)return e.content}}(this.$page.frontmatter.meta);return t||(this.$page.frontmatter.description||this.$localeConfig.description||this.$site.description||"")}get $lang(){return this.$page.frontmatter.lang||this.$localeConfig.lang||"en-US"}get $localePath(){return this.$localeConfig.path||"/"}get $themeLocaleConfig(){return(this.$site.themeConfig.locales||{})[this.$localePath]||{}}get $page(){return this.__page?this.__page:function(t,e){for(let n=0;nn||(t.hash?!Wn.$vuepress.$get("disableScrollBehavior")&&{selector:decodeURIComponent(t.hash)}:{x:0,y:0})});!function(t){t.beforeEach((e,n,r)=>{if(Ns(t,e.path))r();else if(/(\/|\.html)$/.test(e.path))if(/\/$/.test(e.path)){const n=e.path.replace(/\/$/,"")+".html";Ns(t,n)?r(n):r()}else r();else{const n=e.path+"/",o=e.path+".html";Ns(t,o)?r(o):Ns(t,n)?r(n):r()}})}(n);const r={};try{await Promise.all(Rs.filter(t=>"function"==typeof t).map(e=>e({Vue:Wn,options:r,router:n,siteData:Ps,isServer:t})))}catch(t){console.error(t)}return{app:new Wn(Object.assign(r,{router:n,render:t=>t("div",{attrs:{id:"app"}},[t("RouterView",{ref:"layout"}),t("div",{class:"global-ui"},Ms.map(e=>t(e)))])})),router:n}}(!1).then(({app:t,router:e})=>{e.onReady(()=>{t.$mount("#app")})})}]); \ No newline at end of file +var r=Object.freeze({}),o=Array.isArray;function i(t){return null==t}function a(t){return null!=t}function s(t){return!0===t}function c(t){return"string"==typeof t||"number"==typeof t||"symbol"==typeof t||"boolean"==typeof t}function u(t){return"function"==typeof t}function l(t){return null!==t&&"object"==typeof t}var f=Object.prototype.toString;function p(t){return"[object Object]"===f.call(t)}function h(t){return"[object RegExp]"===f.call(t)}function d(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function v(t){return a(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function m(t){return null==t?"":Array.isArray(t)||p(t)&&t.toString===f?JSON.stringify(t,null,2):String(t)}function g(t){var e=parseFloat(t);return isNaN(e)?t:e}function y(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(r,1)}}var w=Object.prototype.hasOwnProperty;function x(t,e){return w.call(t,e)}function O(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var C=/-(\w)/g,$=O((function(t){return t.replace(C,(function(t,e){return e?e.toUpperCase():""}))})),k=O((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),S=/\B([A-Z])/g,j=O((function(t){return t.replace(S,"-$1").toLowerCase()}));var E=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function P(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function A(t,e){for(var n in e)t[n]=e[n];return t}function T(t){for(var e={},n=0;n0,Z=J&&J.indexOf("edge/")>0;J&&J.indexOf("android");var Q=J&&/iphone|ipad|ipod|ios/.test(J);J&&/chrome\/\d+/.test(J),J&&/phantomjs/.test(J);var tt,et=J&&J.match(/firefox\/(\d+)/),nt={}.watch,rt=!1;if(K)try{var ot={};Object.defineProperty(ot,"passive",{get:function(){rt=!0}}),window.addEventListener("test-passive",null,ot)}catch(t){}var it=function(){return void 0===tt&&(tt=!K&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),tt},at=K&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function st(t){return"function"==typeof t&&/native code/.test(t.toString())}var ct,ut="undefined"!=typeof Symbol&&st(Symbol)&&"undefined"!=typeof Reflect&&st(Reflect.ownKeys);ct="undefined"!=typeof Set&&st(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var lt=null;function ft(t){void 0===t&&(t=null),t||lt&<._scope.off(),lt=t,t&&t._scope.on()}var pt=function(){function t(t,e,n,r,o,i,a,s){this.tag=t,this.data=e,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(t.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),t}(),ht=function(t){void 0===t&&(t="");var e=new pt;return e.text=t,e.isComment=!0,e};function dt(t){return new pt(void 0,void 0,void 0,String(t))}function vt(t){var e=new pt(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}var mt=0,gt=[],yt=function(){function t(){this._pending=!1,this.id=mt++,this.subs=[]}return t.prototype.addSub=function(t){this.subs.push(t)},t.prototype.removeSub=function(t){this.subs[this.subs.indexOf(t)]=null,this._pending||(this._pending=!0,gt.push(this))},t.prototype.depend=function(e){t.target&&t.target.addDep(this)},t.prototype.notify=function(t){var e=this.subs.filter((function(t){return t}));for(var n=0,r=e.length;n0&&(Jt((u=t(u,"".concat(n||"","_").concat(r)))[0])&&Jt(f)&&(p[l]=dt(f.text+u[0].text),u.shift()),p.push.apply(p,u)):c(u)?Jt(f)?p[l]=dt(f.text+u):""!==u&&p.push(dt(u)):Jt(u)&&Jt(f)?p[l]=dt(f.text+u.text):(s(e._isVList)&&a(u.tag)&&i(u.key)&&a(n)&&(u.key="__vlist".concat(n,"_").concat(r,"__")),p.push(u)));return p}(t):void 0}function Jt(t){return a(t)&&a(t.text)&&!1===t.isComment}function Xt(t,e){var n,r,i,s,c=null;if(o(t)||"string"==typeof t)for(c=new Array(t.length),n=0,r=t.length;n0,s=e?!!e.$stable:!a,c=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(s&&o&&o!==r&&c===o.$key&&!a&&!o.$hasNormal)return o;for(var u in i={},e)e[u]&&"$"!==u[0]&&(i[u]=ve(t,n,u,e[u]))}else i={};for(var l in n)l in i||(i[l]=me(n,l));return e&&Object.isExtensible(e)&&(e._normalized=i),q(i,"$stable",s),q(i,"$key",c),q(i,"$hasNormal",a),i}function ve(t,e,n,r){var i=function(){var e=lt;ft(t);var n=arguments.length?r.apply(null,arguments):r({}),i=(n=n&&"object"==typeof n&&!o(n)?[n]:Kt(n))&&n[0];return ft(e),n&&(!i||1===n.length&&i.isComment&&!he(i))?void 0:n};return r.proxy&&Object.defineProperty(e,n,{get:i,enumerable:!0,configurable:!0}),i}function me(t,e){return function(){return t[e]}}function ge(t){return{get attrs(){if(!t._attrsProxy){var e=t._attrsProxy={};q(e,"_v_attr_proxy",!0),ye(e,t.$attrs,r,t,"$attrs")}return t._attrsProxy},get listeners(){t._listenersProxy||ye(t._listenersProxy={},t.$listeners,r,t,"$listeners");return t._listenersProxy},get slots(){return function(t){t._slotsProxy||_e(t._slotsProxy={},t.$scopedSlots);return t._slotsProxy}(t)},emit:E(t.$emit,t),expose:function(e){e&&Object.keys(e).forEach((function(n){return Ft(t,e,n)}))}}}function ye(t,e,n,r,o){var i=!1;for(var a in e)a in t?e[a]!==n[a]&&(i=!0):(i=!0,be(t,a,r,o));for(var a in t)a in e||(i=!0,delete t[a]);return i}function be(t,e,n,r){Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){return n[r][e]}})}function _e(t,e){for(var n in e)t[n]=e[n];for(var n in t)n in e||delete t[n]}var we=null;function xe(t,e){return(t.__esModule||ut&&"Module"===t[Symbol.toStringTag])&&(t=t.default),l(t)?e.extend(t):t}function Oe(t){if(o(t))for(var e=0;edocument.createEvent("Event").timeStamp&&(cn=function(){return un.now()})}var ln=function(t,e){if(t.post){if(!e.post)return 1}else if(e.post)return-1;return t.id-e.id};function fn(){var t,e;for(sn=cn(),on=!0,tn.sort(ln),an=0;anan&&tn[n].id>t.id;)n--;tn.splice(n+1,0,t)}else tn.push(t);rn||(rn=!0,Ne(fn))}}function hn(t,e){if(t){for(var n=Object.create(null),r=ut?Reflect.ownKeys(t):Object.keys(t),o=0;o-1)if(i&&!x(o,"default"))a=!1;else if(""===a||a===j(t)){var c=Mn(String,o.type);(c<0||s-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!h(t)&&t.test(e)}function Xn(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=a.name;s&&!e(s)&&Yn(n,i,r,o)}}}function Yn(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,_(n,e)}Wn.prototype._init=function(t){var e=this;e._uid=Hn++,e._isVue=!0,e.__v_skip=!0,e._scope=new zt(!0),e._scope._vm=!0,t&&t._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),r=e._parentVnode;n.parent=e.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(e,t):e.$options=En(qn(e.constructor),t||{},e),e._renderProxy=e,e._self=e,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._provided=n?n._provided:Object.create(null),t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(e),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&Ke(t,e)}(e),function(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,o=n&&n.context;t.$slots=fe(e._renderChildren,o),t.$scopedSlots=n?de(t.$parent,n.data.scopedSlots,t.$slots):r,t._c=function(e,n,r,o){return Ce(t,e,n,r,o,!1)},t.$createElement=function(e,n,r,o){return Ce(t,e,n,r,o,!0)};var i=n&&n.data;At(t,"$attrs",i&&i.attrs||r,null,!0),At(t,"$listeners",e._parentListeners||r,null,!0)}(e),Qe(e,"beforeCreate",void 0,!1),function(t){var e=hn(t.$options.inject,t);e&&(St(!1),Object.keys(e).forEach((function(n){At(t,n,e[n])})),St(!0))}(e),Nn(e),function(t){var e=t.$options.provide;if(e){var n=u(e)?e.call(t):e;if(!l(n))return;for(var r=Bt(t),o=ut?Reflect.ownKeys(n):Object.keys(n),i=0;i1?P(n):n;for(var r=P(arguments,1),o='event handler for "'.concat(t,'"'),i=0,a=n.length;iparseInt(this.max)&&Yn(t,e[0],e,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)Yn(this.cache,t,this.keys)},mounted:function(){var t=this;this.cacheVNode(),this.$watch("include",(function(e){Xn(t,(function(t){return Jn(e,t)}))})),this.$watch("exclude",(function(e){Xn(t,(function(t){return!Jn(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=Oe(t),n=e&&e.componentOptions;if(n){var r=Kn(n),o=this.include,i=this.exclude;if(o&&(!r||!Jn(o,r))||i&&r&&Jn(i,r))return e;var a=this.cache,s=this.keys,c=null==e.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):e.key;a[c]?(e.componentInstance=a[c].componentInstance,_(s,c),s.push(c)):(this.vnodeToCache=e,this.keyToCache=c),e.data.keepAlive=!0}return e||t&&t[0]}}};!function(t){var e={get:function(){return B}};Object.defineProperty(t,"config",e),t.util={warn:xn,extend:A,mergeOptions:En,defineReactive:At},t.set=Tt,t.delete=Lt,t.nextTick=Ne,t.observable=function(t){return Pt(t),t},t.options=Object.create(null),U.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,A(t.options.components,Qn),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=P(arguments,1);return n.unshift(this),u(t.install)?t.install.apply(t,n):u(t)&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=En(this.options,t),this}}(t),Gn(t),function(t){U.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&p(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&u(n)&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}(Wn),Object.defineProperty(Wn.prototype,"$isServer",{get:it}),Object.defineProperty(Wn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(Wn,"FunctionalRenderContext",{value:dn}),Wn.version="2.7.14";var tr=y("style,class"),er=y("input,textarea,option,select,progress"),nr=y("contenteditable,draggable,spellcheck"),rr=y("events,caret,typing,plaintext-only"),or=y("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),ir="http://www.w3.org/1999/xlink",ar=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},sr=function(t){return ar(t)?t.slice(6,t.length):""},cr=function(t){return null==t||!1===t};function ur(t){for(var e=t.data,n=t,r=t;a(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(e=lr(r.data,e));for(;a(n=n.parent);)n&&n.data&&(e=lr(e,n.data));return function(t,e){if(a(t)||a(e))return fr(t,pr(e));return""}(e.staticClass,e.class)}function lr(t,e){return{staticClass:fr(t.staticClass,e.staticClass),class:a(t.class)?[t.class,e.class]:e.class}}function fr(t,e){return t?e?t+" "+e:t:e||""}function pr(t){return Array.isArray(t)?function(t){for(var e,n="",r=0,o=t.length;r-1?Ir(t,e,n):or(e)?cr(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):nr(e)?t.setAttribute(e,function(t,e){return cr(e)||"false"===e?"false":"contenteditable"===t&&rr(e)?e:"true"}(e,n)):ar(e)?cr(n)?t.removeAttributeNS(ir,sr(e)):t.setAttributeNS(ir,e,n):Ir(t,e,n)}function Ir(t,e,n){if(cr(n))t.removeAttribute(e);else{if(X&&!Y&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var Dr={create:Rr,update:Rr};function Nr(t,e){var n=e.elm,r=e.data,o=t.data;if(!(i(r.staticClass)&&i(r.class)&&(i(o)||i(o.staticClass)&&i(o.class)))){var s=ur(e),c=n._transitionClasses;a(c)&&(s=fr(s,pr(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var Fr,Ur={create:Nr,update:Nr};function zr(t,e,n){var r=Fr;return function o(){var i=e.apply(null,arguments);null!==i&&Hr(t,o,n,r)}}var Br=Pe&&!(et&&Number(et[1])<=53);function Vr(t,e,n,r){if(Br){var o=sn,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}Fr.addEventListener(t,e,rt?{capture:n,passive:r}:n)}function Hr(t,e,n,r){(r||Fr).removeEventListener(t,e._wrapper||e,n)}function qr(t,e){if(!i(t.data.on)||!i(e.data.on)){var n=e.data.on||{},r=t.data.on||{};Fr=e.elm||t.elm,function(t){if(a(t.__r)){var e=X?"change":"input";t[e]=[].concat(t.__r,t[e]||[]),delete t.__r}a(t.__c)&&(t.change=[].concat(t.__c,t.change||[]),delete t.__c)}(n),qt(n,r,Vr,Hr,zr,e.context),Fr=void 0}}var Wr,Gr={create:qr,update:qr,destroy:function(t){return qr(t,Or)}};function Kr(t,e){if(!i(t.data.domProps)||!i(e.data.domProps)){var n,r,o=e.elm,c=t.data.domProps||{},u=e.data.domProps||{};for(n in(a(u.__ob__)||s(u._v_attr_proxy))&&(u=e.data.domProps=A({},u)),c)n in u||(o[n]="");for(n in u){if(r=u[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),r===c[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=r;var l=i(r)?"":String(r);Jr(o,l)&&(o.value=l)}else if("innerHTML"===n&&vr(o.tagName)&&i(o.innerHTML)){(Wr=Wr||document.createElement("div")).innerHTML="".concat(r,"");for(var f=Wr.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;f.firstChild;)o.appendChild(f.firstChild)}else if(r!==c[n])try{o[n]=r}catch(t){}}}}function Jr(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,r=t._vModifiers;if(a(r)){if(r.number)return g(n)!==g(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var Xr={create:Kr,update:Kr},Yr=O((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}})),e}));function Zr(t){var e=Qr(t.style);return t.staticStyle?A(t.staticStyle,e):e}function Qr(t){return Array.isArray(t)?T(t):"string"==typeof t?Yr(t):t}var to,eo=/^--/,no=/\s*!important$/,ro=function(t,e,n){if(eo.test(e))t.style.setProperty(e,n);else if(no.test(n))t.style.setProperty(j(e),n.replace(no,""),"important");else{var r=io(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split(co).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" ".concat(t.getAttribute("class")||""," ");n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function lo(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(co).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" ".concat(t.getAttribute("class")||""," "),r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function fo(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&A(e,po(t.name||"v")),A(e,t),e}return"string"==typeof t?po(t):void 0}}var po=O((function(t){return{enterClass:"".concat(t,"-enter"),enterToClass:"".concat(t,"-enter-to"),enterActiveClass:"".concat(t,"-enter-active"),leaveClass:"".concat(t,"-leave"),leaveToClass:"".concat(t,"-leave-to"),leaveActiveClass:"".concat(t,"-leave-active")}})),ho=K&&!Y,vo="transition",mo="transitionend",go="animation",yo="animationend";ho&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(vo="WebkitTransition",mo="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(go="WebkitAnimation",yo="webkitAnimationEnd"));var bo=K?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function _o(t){bo((function(){bo(t)}))}function wo(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),uo(t,e))}function xo(t,e){t._transitionClasses&&_(t._transitionClasses,e),lo(t,e)}function Oo(t,e,n){var r=$o(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s="transition"===o?mo:yo,c=0,u=function(){t.removeEventListener(s,l),n()},l=function(e){e.target===t&&++c>=a&&u()};setTimeout((function(){c0&&(n="transition",l=a,f=i.length):"animation"===e?u>0&&(n="animation",l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?"transition":"animation":null)?"transition"===n?i.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:"transition"===n&&Co.test(r[vo+"Property"])}}function ko(t,e){for(;t.length1}function To(t,e){!0!==e.data.show&&jo(e)}var Lo=function(t){var e,n,r={},u=t.modules,l=t.nodeOps;for(e=0;ed?_(t,i(n[g+1])?null:n[g+1].elm,n,h,g,r):h>g&&x(e,f,d)}(f,v,g,n,u):a(g)?(a(t.text)&&l.setTextContent(f,""),_(f,null,g,0,g.length-1,n)):a(v)?x(v,0,v.length-1):a(t.text)&&l.setTextContent(f,""):t.text!==e.text&&l.setTextContent(f,e.text),a(d)&&a(h=d.hook)&&a(h=h.postpatch)&&h(t,e)}}}function k(t,e,n){if(s(n)&&a(t.parent))t.parent.data.pendingInsert=e;else for(var r=0;r-1,a.selected!==i&&(a.selected=i);else if(I(No(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function Do(t,e){return e.every((function(e){return!I(e,t)}))}function No(t){return"_value"in t?t._value:t.value}function Fo(t){t.target.composing=!0}function Uo(t){t.target.composing&&(t.target.composing=!1,zo(t.target,"input"))}function zo(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function Bo(t){return!t.componentInstance||t.data&&t.data.transition?t:Bo(t.componentInstance._vnode)}var Vo={model:Ro,show:{bind:function(t,e,n){var r=e.value,o=(n=Bo(n)).data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,jo(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value;!r!=!e.oldValue&&((n=Bo(n)).data&&n.data.transition?(n.data.show=!0,r?jo(n,(function(){t.style.display=t.__vOriginalDisplay})):Eo(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}}},Ho={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function qo(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?qo(Oe(e.children)):t}function Wo(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var r in o)e[$(r)]=o[r];return e}function Go(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var Ko=function(t){return t.tag||he(t)},Jo=function(t){return"show"===t.name},Xo={name:"transition",props:Ho,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Ko)).length){0;var r=this.mode;0;var o=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return o;var i=qo(o);if(!i)return o;if(this._leaving)return Go(t,o);var a="__transition-".concat(this._uid,"-");i.key=null==i.key?i.isComment?a+"comment":a+i.tag:c(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=Wo(this),u=this._vnode,l=qo(u);if(i.data.directives&&i.data.directives.some(Jo)&&(i.data.show=!0),l&&l.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(i,l)&&!he(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=A({},s);if("out-in"===r)return this._leaving=!0,Wt(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),Go(t,o);if("in-out"===r){if(he(i))return u;var p,h=function(){p()};Wt(s,"afterEnter",h),Wt(s,"enterCancelled",h),Wt(f,"delayLeave",(function(t){p=t}))}}return o}}},Yo=A({tag:String,moveClass:String},Ho);function Zo(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function Qo(t){t.data.newPos=t.elm.getBoundingClientRect()}function ti(t){var e=t.data.pos,n=t.data.newPos,r=e.left-n.left,o=e.top-n.top;if(r||o){t.data.moved=!0;var i=t.elm.style;i.transform=i.WebkitTransform="translate(".concat(r,"px,").concat(o,"px)"),i.transitionDuration="0s"}}delete Yo.mode;var ei={Transition:Xo,TransitionGroup:{props:Yo,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Xe(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=Wo(this),s=0;s-1?gr[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:gr[t]=/HTMLUnknownElement/.test(e.toString())},A(Wn.options.directives,Vo),A(Wn.options.components,ei),Wn.prototype.__patch__=K?Lo:L,Wn.prototype.$mount=function(t,e){return function(t,e,n){var r;t.$el=e,t.$options.render||(t.$options.render=ht),Qe(t,"beforeMount"),r=function(){t._update(t._render(),n)},new He(t,r,L,{before:function(){t._isMounted&&!t._isDestroyed&&Qe(t,"beforeUpdate")}},!0),n=!1;var o=t._preWatchers;if(o)for(var i=0;i=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}(o.path||""),u=e&&e.path||"/",l=c.path?xi(c.path,u,n||o.append):u,f=function(t,e,n){void 0===e&&(e={});var r,o=n||ui;try{r=o(t||"")}catch(t){r={}}for(var i in e){var a=e[i];r[i]=Array.isArray(a)?a.map(ci):ci(a)}return r}(c.query,o.query,r&&r.options.parseQuery),p=o.hash||c.hash;return p&&"#"!==p.charAt(0)&&(p="#"+p),{_normalized:!0,path:l,query:f,hash:p}}var Vi,Hi=function(){},qi={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},custom:Boolean,exact:Boolean,exactPath:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:{type:String,default:"page"},event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,o=n.resolve(this.to,r,this.append),i=o.location,a=o.route,s=o.href,c={},u=n.options.linkActiveClass,l=n.options.linkExactActiveClass,f=null==u?"router-link-active":u,p=null==l?"router-link-exact-active":l,h=null==this.activeClass?f:this.activeClass,d=null==this.exactActiveClass?p:this.exactActiveClass,v=a.redirectedFrom?pi(null,Bi(a.redirectedFrom),null,n):a;c[d]=gi(r,v,this.exactPath),c[h]=this.exact||this.exactPath?c[d]:function(t,e){return 0===t.path.replace(fi,"/").indexOf(e.path.replace(fi,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,v);var m=c[d]?this.ariaCurrentValue:null,g=function(t){Wi(t)&&(e.replace?n.replace(i,Hi):n.push(i,Hi))},y={click:Wi};Array.isArray(this.event)?this.event.forEach((function(t){y[t]=g})):y[this.event]=g;var b={class:c},_=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:s,route:a,navigate:g,isActive:c[h],isExactActive:c[d]});if(_){if(1===_.length)return _[0];if(_.length>1||!_.length)return 0===_.length?t():t("span",{},_)}if("a"===this.tag)b.on=y,b.attrs={href:s,"aria-current":m};else{var w=function t(e){var n;if(e)for(var r=0;r-1&&(s.params[p]=n.params[p]);return s.path=zi(l.path,s.params),c(l,s,a)}if(s.path){s.params={};for(var h=0;h-1}function Oa(t,e){return xa(t)&&t._isRouter&&(null==e||t.type===e)}function Ca(t,e,n){var r=function(o){o>=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}function $a(t){return function(e,n,r){var o=!1,i=0,a=null;ka(t,(function(t,e,n,s){if("function"==typeof t&&void 0===t.cid){o=!0,i++;var c,u=Ea((function(e){var o;((o=e).__esModule||ja&&"Module"===o[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:Vi.extend(e),n.components[s]=e,--i<=0&&r()})),l=Ea((function(t){var e="Failed to resolve async component "+s+": "+t;a||(a=xa(t)?t:new Error(e),r(a))}));try{c=t(u,l)}catch(t){l(t)}if(c)if("function"==typeof c.then)c.then(u,l);else{var f=c.component;f&&"function"==typeof f.then&&f.then(u,l)}}})),o||r()}}function ka(t,e){return Sa(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function Sa(t){return Array.prototype.concat.apply([],t)}var ja="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function Ea(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var Pa=function(t,e){this.router=t,this.base=function(t){if(!t)if(Gi){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=di,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function Aa(t,e,n,r){var o=ka(t,(function(t,r,o,i){var a=function(t,e){"function"!=typeof t&&(t=Vi.extend(t));return t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,o,i)})):n(a,r,o,i)}));return Sa(r?o.reverse():o)}function Ta(t,e){if(e)return function(){return t.apply(e,arguments)}}Pa.prototype.listen=function(t){this.cb=t},Pa.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},Pa.prototype.onError=function(t){this.errorCbs.push(t)},Pa.prototype.transitionTo=function(t,e,n){var r,o=this;try{r=this.router.match(t,this.current)}catch(t){throw this.errorCbs.forEach((function(e){e(t)})),t}var i=this.current;this.confirmTransition(r,(function(){o.updateRoute(r),e&&e(r),o.ensureURL(),o.router.afterHooks.forEach((function(t){t&&t(r,i)})),o.ready||(o.ready=!0,o.readyCbs.forEach((function(t){t(r)})))}),(function(t){n&&n(t),t&&!o.ready&&(Oa(t,ga.redirected)&&i===di||(o.ready=!0,o.readyErrorCbs.forEach((function(e){e(t)}))))}))},Pa.prototype.confirmTransition=function(t,e,n){var r=this,o=this.current;this.pending=t;var i,a,s=function(t){!Oa(t)&&xa(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)},c=t.matched.length-1,u=o.matched.length-1;if(gi(t,o)&&c===u&&t.matched[c]===o.matched[u])return this.ensureURL(),t.hash&&ia(this.router,o,t,!1),s(((a=_a(i=o,t,ga.duplicated,'Avoided redundant navigation to current location: "'+i.fullPath+'".')).name="NavigationDuplicated",a));var l=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n0)){var e=this.router,n=e.options.scrollBehavior,r=da&&n;r&&this.listeners.push(oa());var o=function(){var n=t.current,o=Ra(t.base);t.current===di&&o===t._startLocation||t.transitionTo(o,(function(t){r&&ia(e,t,n,!0)}))};window.addEventListener("popstate",o),this.listeners.push((function(){window.removeEventListener("popstate",o)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){va(Oi(r.base+t.fullPath)),ia(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){ma(Oi(r.base+t.fullPath)),ia(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(Ra(this.base)!==this.current.fullPath){var e=Oi(this.base+this.current.fullPath);t?va(e):ma(e)}},e.prototype.getCurrentLocation=function(){return Ra(this.base)},e}(Pa);function Ra(t){var e=window.location.pathname,n=e.toLowerCase(),r=t.toLowerCase();return!t||n!==r&&0!==n.indexOf(Oi(r+"/"))||(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var Ma=function(t){function e(e,n,r){t.call(this,e,n),r&&function(t){var e=Ra(t);if(!/^\/#/.test(e))return window.location.replace(Oi(t+"/#"+e)),!0}(this.base)||Ia()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router.options.scrollBehavior,n=da&&e;n&&this.listeners.push(oa());var r=function(){var e=t.current;Ia()&&t.transitionTo(Da(),(function(r){n&&ia(t.router,r,e,!0),da||Ua(r.fullPath)}))},o=da?"popstate":"hashchange";window.addEventListener(o,r),this.listeners.push((function(){window.removeEventListener(o,r)}))}},e.prototype.push=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){Fa(t.fullPath),ia(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){Ua(t.fullPath),ia(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;Da()!==e&&(t?Fa(e):Ua(e))},e.prototype.getCurrentLocation=function(){return Da()},e}(Pa);function Ia(){var t=Da();return"/"===t.charAt(0)||(Ua("/"+t),!1)}function Da(){var t=window.location.href,e=t.indexOf("#");return e<0?"":t=t.slice(e+1)}function Na(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function Fa(t){da?va(Na(t)):window.location.hash=t}function Ua(t){da?ma(Na(t)):window.location.replace(Na(t))}var za=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){var t=e.current;e.index=n,e.updateRoute(r),e.router.afterHooks.forEach((function(e){e&&e(r,t)}))}),(function(t){Oa(t,ga.duplicated)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Pa),Ba=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Xi(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!da&&!1!==t.fallback,this.fallback&&(e="hash"),Gi||(e="abstract"),this.mode=e,e){case"history":this.history=new La(this,t.base);break;case"hash":this.history=new Ma(this,t.base,this.fallback);break;case"abstract":this.history=new za(this,t.base);break;default:0}},Va={currentRoute:{configurable:!0}};Ba.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},Va.currentRoute.get=function(){return this.history&&this.history.current},Ba.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null),e.app||e.history.teardown()})),!this.app){this.app=t;var n=this.history;if(n instanceof La||n instanceof Ma){var r=function(t){n.setupListeners(),function(t){var r=n.current,o=e.options.scrollBehavior;da&&o&&"fullPath"in t&&ia(e,t,r,!1)}(t)};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},Ba.prototype.beforeEach=function(t){return qa(this.beforeHooks,t)},Ba.prototype.beforeResolve=function(t){return qa(this.resolveHooks,t)},Ba.prototype.afterEach=function(t){return qa(this.afterHooks,t)},Ba.prototype.onReady=function(t,e){this.history.onReady(t,e)},Ba.prototype.onError=function(t){this.history.onError(t)},Ba.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},Ba.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},Ba.prototype.go=function(t){this.history.go(t)},Ba.prototype.back=function(){this.go(-1)},Ba.prototype.forward=function(){this.go(1)},Ba.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},Ba.prototype.resolve=function(t,e,n){var r=Bi(t,e=e||this.history.current,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath;return{location:r,route:o,href:function(t,e,n){var r="hash"===n?"#"+e:e;return t?Oi(t+"/"+r):r}(this.history.base,i,this.mode),normalizedTo:r,resolved:o}},Ba.prototype.getRoutes=function(){return this.matcher.getRoutes()},Ba.prototype.addRoute=function(t,e){this.matcher.addRoute(t,e),this.history.current!==di&&this.history.transitionTo(this.history.getCurrentLocation())},Ba.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==di&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Ba.prototype,Va);var Ha=Ba;function qa(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}Ba.install=function t(e){if(!t.installed||Vi!==e){t.installed=!0,Vi=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",_i),e.component("RouterLink",qi);var o=e.config.optionMergeStrategies;o.beforeRouteEnter=o.beforeRouteLeave=o.beforeRouteUpdate=o.created}},Ba.version="3.6.5",Ba.isNavigationFailure=Oa,Ba.NavigationFailureType=ga,Ba.START_LOCATION=di,Gi&&window.Vue&&window.Vue.use(Ba);n(98);n(91),n(128);var Wa={"components/AlgoliaSearchBox":()=>Promise.all([n.e(0),n.e(13)]).then(n.bind(null,300)),"components/DropdownLink":()=>Promise.all([n.e(0),n.e(14)]).then(n.bind(null,256)),"components/DropdownTransition":()=>Promise.all([n.e(0),n.e(19)]).then(n.bind(null,244)),"components/Home":()=>Promise.all([n.e(0),n.e(16)]).then(n.bind(null,282)),"components/NavLink":()=>n.e(21).then(n.bind(null,243)),"components/NavLinks":()=>Promise.all([n.e(0),n.e(12)]).then(n.bind(null,267)),"components/Navbar":()=>Promise.all([n.e(0),n.e(1)]).then(n.bind(null,296)),"components/Page":()=>Promise.all([n.e(0),n.e(11)]).then(n.bind(null,283)),"components/PageEdit":()=>Promise.all([n.e(0),n.e(17)]).then(n.bind(null,269)),"components/PageNav":()=>Promise.all([n.e(0),n.e(15)]).then(n.bind(null,270)),"components/Sidebar":()=>Promise.all([n.e(0),n.e(10)]).then(n.bind(null,284)),"components/SidebarButton":()=>Promise.all([n.e(0),n.e(20)]).then(n.bind(null,285)),"components/SidebarGroup":()=>Promise.all([n.e(0),n.e(3)]).then(n.bind(null,268)),"components/SidebarLink":()=>Promise.all([n.e(0),n.e(18)]).then(n.bind(null,257)),"components/SidebarLinks":()=>Promise.all([n.e(0),n.e(3)]).then(n.bind(null,255)),"global-components/Badge":()=>Promise.all([n.e(0),n.e(4)]).then(n.bind(null,307)),"global-components/CodeBlock":()=>Promise.all([n.e(0),n.e(5)]).then(n.bind(null,301)),"global-components/CodeGroup":()=>Promise.all([n.e(0),n.e(6)]).then(n.bind(null,302)),"layouts/404":()=>n.e(7).then(n.bind(null,303)),"layouts/Layout":()=>Promise.all([n.e(0),n.e(1),n.e(2)]).then(n.bind(null,304)),NotFound:()=>n.e(7).then(n.bind(null,303)),Layout:()=>Promise.all([n.e(0),n.e(1),n.e(2)]).then(n.bind(null,304))},Ga={"v-b3815688":()=>n.e(22).then(n.bind(null,308)),"v-c82b0b82":()=>n.e(25).then(n.bind(null,309)),"v-2546927e":()=>n.e(23).then(n.bind(null,310)),"v-69d4dc92":()=>n.e(28).then(n.bind(null,311)),"v-48bf0382":()=>n.e(26).then(n.bind(null,312)),"v-25ef3a5f":()=>n.e(27).then(n.bind(null,313)),"v-a3c5b642":()=>n.e(29).then(n.bind(null,305)),"v-15e3261f":()=>n.e(30).then(n.bind(null,314)),"v-618fa90d":()=>n.e(24).then(n.bind(null,315)),"v-48398402":()=>n.e(31).then(n.bind(null,316)),"v-d10bd742":()=>n.e(32).then(n.bind(null,317)),"v-1643c9df":()=>n.e(35).then(n.bind(null,318)),"v-5bcc1347":()=>n.e(34).then(n.bind(null,306)),"v-83bed76a":()=>n.e(33).then(n.bind(null,319))};function Ka(t){const e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}const Ja=/-(\w)/g,Xa=Ka(t=>t.replace(Ja,(t,e)=>e?e.toUpperCase():"")),Ya=/\B([A-Z])/g,Za=Ka(t=>t.replace(Ya,"-$1").toLowerCase()),Qa=Ka(t=>t.charAt(0).toUpperCase()+t.slice(1));function ts(t,e){if(!e)return;if(t(e))return t(e);return e.includes("-")?t(Qa(Xa(e))):t(Qa(e))||t(Za(e))}const es=Object.assign({},Wa,Ga),ns=t=>es[t],rs=t=>Ga[t],os=t=>Wa[t],is=t=>Wn.component(t);function as(t){return ts(rs,t)}function ss(t){return ts(os,t)}function cs(t){return ts(ns,t)}function us(t){return ts(is,t)}function ls(...t){return Promise.all(t.filter(t=>t).map(async t=>{if(!us(t)&&cs(t)){const e=await cs(t)();Wn.component(t,e.default)}}))}function fs(t,e){"undefined"!=typeof window&&window.__VUEPRESS__&&(window.__VUEPRESS__[t]=e)}var ps=n(88),hs=n.n(ps),ds=n(89),vs=n.n(ds),ms={created(){if(this.siteMeta=this.$site.headTags.filter(([t])=>"meta"===t).map(([t,e])=>e),this.$ssrContext){const e=this.getMergedMetaTags();this.$ssrContext.title=this.$title,this.$ssrContext.lang=this.$lang,this.$ssrContext.pageMeta=(t=e)?t.map(t=>{let e="{e+=` ${n}="${vs()(t[n])}"`}),e+">"}).join("\n "):"",this.$ssrContext.canonicalLink=ys(this.$canonicalUrl)}var t},mounted(){this.currentMetaTags=[...document.querySelectorAll("meta")],this.updateMeta(),this.updateCanonicalLink()},methods:{updateMeta(){document.title=this.$title,document.documentElement.lang=this.$lang;const t=this.getMergedMetaTags();this.currentMetaTags=bs(t,this.currentMetaTags)},getMergedMetaTags(){const t=this.$page.frontmatter.meta||[];return hs()([{name:"description",content:this.$description}],t,this.siteMeta,_s)},updateCanonicalLink(){gs(),this.$canonicalUrl&&document.head.insertAdjacentHTML("beforeend",ys(this.$canonicalUrl))}},watch:{$page(){this.updateMeta(),this.updateCanonicalLink()}},beforeDestroy(){bs(null,this.currentMetaTags),gs()}};function gs(){const t=document.querySelector("link[rel='canonical']");t&&t.remove()}function ys(t=""){return t?``:""}function bs(t,e){if(e&&[...e].filter(t=>t.parentNode===document.head).forEach(t=>document.head.removeChild(t)),t)return t.map(t=>{const e=document.createElement("meta");return Object.keys(t).forEach(n=>{e.setAttribute(n,t[n])}),document.head.appendChild(e),e})}function _s(t){for(const e of["name","property","itemprop"])if(t.hasOwnProperty(e))return t[e]+e;return JSON.stringify(t)}var ws=n(90),xs={mounted(){window.addEventListener("scroll",this.onScroll)},methods:{onScroll:n.n(ws)()((function(){this.setActiveHash()}),300),setActiveHash(){const t=[].slice.call(document.querySelectorAll(".sidebar-link")),e=[].slice.call(document.querySelectorAll(".header-anchor")).filter(e=>t.some(t=>t.hash===e.hash)),n=Math.max(window.pageYOffset,document.documentElement.scrollTop,document.body.scrollTop),r=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),o=window.innerHeight+n;for(let t=0;t=i.parentElement.offsetTop+10&&(!a||n{this.$nextTick(()=>{this.$vuepress.$set("disableScrollBehavior",!1)})})}}}},beforeDestroy(){window.removeEventListener("scroll",this.onScroll)}},Os=n(22),Cs=n.n(Os),$s=[ms,xs,{mounted(){Cs.a.configure({showSpinner:!1}),this.$router.beforeEach((t,e,n)=>{t.path===e.path||Wn.component(t.name)||Cs.a.start(),n()}),this.$router.afterEach(()=>{Cs.a.done(),this.isSidebarOpen=!1})}}],ks={name:"GlobalLayout",computed:{layout(){const t=this.getLayout();return fs("layout",t),Wn.component(t)}},methods:{getLayout(){if(this.$page.path){const t=this.$page.frontmatter.layout;return t&&(this.$vuepress.getLayoutAsyncComponent(t)||this.$vuepress.getVueComponent(t))?t:"Layout"}return"NotFound"}}},Ss=n(10),js=Object(Ss.a)(ks,(function(){return(0,this._self._c)(this.layout,{tag:"component"})}),[],!1,null,null,null).exports;!function(t,e,n){switch(e){case"components":t[e]||(t[e]={}),Object.assign(t[e],n);break;case"mixins":t[e]||(t[e]=[]),t[e].push(...n);break;default:throw new Error("Unknown option name.")}}(js,"mixins",$s);const Es=[{name:"v-b3815688",path:"/",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-b3815688").then(n)}},{path:"/index.html",redirect:"/"},{name:"v-c82b0b82",path:"/cli/check.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-c82b0b82").then(n)}},{name:"v-2546927e",path:"/cli/bump.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-2546927e").then(n)}},{name:"v-69d4dc92",path:"/cli/sync.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-69d4dc92").then(n)}},{name:"v-48bf0382",path:"/cli/options.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-48bf0382").then(n)}},{name:"v-25ef3a5f",path:"/cli/publish.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-25ef3a5f").then(n)}},{name:"v-a3c5b642",path:"/concepts/bump-algorithm.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-a3c5b642").then(n)}},{name:"v-15e3261f",path:"/concepts/change-files.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-15e3261f").then(n)}},{name:"v-618fa90d",path:"/cli/change.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-618fa90d").then(n)}},{name:"v-48398402",path:"/concepts/ci-integration.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-48398402").then(n)}},{name:"v-d10bd742",path:"/concepts/groups.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-d10bd742").then(n)}},{name:"v-1643c9df",path:"/overview/installation.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-1643c9df").then(n)}},{name:"v-5bcc1347",path:"/overview/getting-started.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-5bcc1347").then(n)}},{name:"v-83bed76a",path:"/overview/configuration.html",component:js,beforeEnter:(t,e,n)=>{ls("Layout","v-83bed76a").then(n)}},{path:"*",component:js}],Ps={title:"beachball",description:"The Sunniest Semantic Version Bumper",base:"/beachball/",headTags:[],pages:[{title:"Home",frontmatter:{home:!0,heroText:"The Sunniest Semantic Version Bumper",tagline:"Makes automating npm publishing a breeze",actionText:"Get Started →",actionLink:"/overview/getting-started",features:[{title:"Synchronized in git and npm",details:"keep your git and npm versions in sync in CI and local workflows"},{title:"Generates Changelogs",details:"same command will generate changelogs for your users"},{title:"Automated Version Bumps",details:"one command line to bump package(s) in your repo with semver"},{title:"Single or Monorepo",details:"compatible out of the box for single repo or monorepos"},{title:"Pre-Publish Validation Checks",details:"double and triple check git repo and npm registry before publish"},{title:"Zero Config Versioning",details:"no config is required to get started, do more in one line"}],footer:"MIT Licensed | Copyright © 2019-present Microsoft"},regularPath:"/",relativePath:"README.md",key:"v-b3815688",path:"/"},{title:"check",frontmatter:{tags:["cli"],category:"doc"},regularPath:"/cli/check.html",relativePath:"cli/check.md",key:"v-c82b0b82",path:"/cli/check.html",headers:[{level:3,title:"Options",slug:"options"},{level:3,title:"Where should check be run?",slug:"where-should-check-be-run"}]},{title:"bump",frontmatter:{tags:["cli"],category:"doc"},regularPath:"/cli/bump.html",relativePath:"cli/bump.md",key:"v-2546927e",path:"/cli/bump.html",headers:[{level:3,title:"Options",slug:"options"}]},{title:"sync",frontmatter:{tags:["cli"],category:"doc"},regularPath:"/cli/sync.html",relativePath:"cli/sync.md",key:"v-69d4dc92",path:"/cli/sync.html",headers:[{level:3,title:"Options",slug:"options"}]},{title:"Common Options",frontmatter:{title:"Common Options",tags:["cli"],category:"doc"},regularPath:"/cli/options.html",relativePath:"cli/options.md",key:"v-48bf0382",path:"/cli/options.html",headers:[{level:2,title:"General options",slug:"general-options"},{level:2,title:"change options",slug:"change-options"},{level:2,title:"Bumping and publishing options",slug:"bumping-and-publishing-options"}]},{title:"publish",frontmatter:{tags:["cli"],category:"doc"},regularPath:"/cli/publish.html",relativePath:"cli/publish.md",key:"v-25ef3a5f",path:"/cli/publish.html",headers:[{level:3,title:"Options",slug:"options"},{level:3,title:"Algorithm",slug:"algorithm"},{level:3,title:"Example CI workflow",slug:"example-ci-workflow"},{level:3,title:"Recovering from failed publish",slug:"recovering-from-failed-publish"}]},{title:"Bump Algorithm",frontmatter:{tags:["bump"],category:"doc"},regularPath:"/concepts/bump-algorithm.html",relativePath:"concepts/bump-algorithm.md",key:"v-a3c5b642",path:"/concepts/bump-algorithm.html",headers:[{level:3,title:"Dependent version bumping",slug:"dependent-version-bumping"},{level:3,title:"Grouped bumping",slug:"grouped-bumping"}]},{title:"Change Files",frontmatter:{tags:["overview"],category:"doc"},regularPath:"/concepts/change-files.html",relativePath:"concepts/change-files.md",key:"v-15e3261f",path:"/concepts/change-files.html",headers:[{level:2,title:"What is a change file?",slug:"what-is-a-change-file"},{level:2,title:"Generating a change file",slug:"generating-a-change-file"},{level:2,title:"Validating change files",slug:"validating-change-files"}]},{title:"change",frontmatter:{tags:["cli"],category:"doc"},regularPath:"/cli/change.html",relativePath:"cli/change.md",key:"v-618fa90d",path:"/cli/change.html",headers:[{level:3,title:"Options",slug:"options"},{level:3,title:"Examples",slug:"examples"},{level:3,title:"Prompt walkthrough",slug:"prompt-walkthrough"}]},{title:"CI Integration",frontmatter:{tags:["overview"],category:"doc"},regularPath:"/concepts/ci-integration.html",relativePath:"concepts/ci-integration.md",key:"v-48398402",path:"/concepts/ci-integration.html",headers:[{level:2,title:"Authentication",slug:"authentication"},{level:3,title:"Generating tokens",slug:"generating-tokens"},{level:3,title:"Storing tokens",slug:"storing-tokens"},{level:2,title:"Setting options for publishing",slug:"setting-options-for-publishing"},{level:2,title:"Publishing",slug:"publishing"},{level:3,title:"GitHub repo + GitHub Actions",slug:"github-repo-github-actions"},{level:3,title:"GitHub repo + Azure Pipelines",slug:"github-repo-azure-pipelines"},{level:3,title:"Azure Repos + Azure Pipelines",slug:"azure-repos-azure-pipelines"}]},{title:"Version Groups",frontmatter:{tags:["groups","lock step"],category:"doc"},regularPath:"/concepts/groups.html",relativePath:"concepts/groups.md",key:"v-d10bd742",path:"/concepts/groups.html",headers:[{level:3,title:"Configuring groups",slug:"configuring-groups"}]},{title:"Installation",frontmatter:{tags:["overview"],category:"doc"},regularPath:"/overview/installation.html",relativePath:"overview/installation.md",key:"v-1643c9df",path:"/overview/installation.html",headers:[{level:2,title:"CLI setup",slug:"cli-setup"},{level:3,title:"Automatic setup",slug:"automatic-setup"},{level:3,title:"Manual setup",slug:"manual-setup"},{level:2,title:"Local development workflow",slug:"local-development-workflow"},{level:2,title:"CI integration",slug:"ci-integration"}]},{title:"Getting Started",frontmatter:{tags:["overview"],category:"doc"},regularPath:"/overview/getting-started.html",relativePath:"overview/getting-started.md",key:"v-5bcc1347",path:"/overview/getting-started.html",headers:[{level:2,title:"Why Beachball?",slug:"why-beachball"},{level:2,title:"Beachball workflow",slug:"beachball-workflow"},{level:2,title:"Next steps",slug:"next-steps"}]},{title:"Configuration",frontmatter:{tags:["overview"],category:"doc"},regularPath:"/overview/configuration.html",relativePath:"overview/configuration.md",key:"v-83bed76a",path:"/overview/configuration.html",headers:[{level:2,title:"Configuration files",slug:"configuration-files"},{level:3,title:"beachball.config.js",slug:"beachball-config-js"},{level:2,title:"Options",slug:"options"}]}],themeConfig:{nav:[{text:"Home",link:"/"},{text:"Getting Started",link:"/overview/getting-started"},{text:"Github",link:"https://github.com/microsoft/beachball"}],sidebar:[{title:"Overview",collapsable:!1,children:["/overview/installation","/overview/getting-started","/overview/configuration"]},{title:"Concepts",collapsable:!1,children:["/concepts/bump-algorithm","/concepts/change-files","/concepts/ci-integration","/concepts/groups"]},{title:"Command Line Args",collapsable:!1,children:["/cli/options","/cli/bump","/cli/change","/cli/check","/cli/publish","/cli/sync"]}]}};n(235);Wn.component("Badge",()=>Promise.all([n.e(0),n.e(4)]).then(n.bind(null,307))),Wn.component("CodeBlock",()=>Promise.all([n.e(0),n.e(5)]).then(n.bind(null,301))),Wn.component("CodeGroup",()=>Promise.all([n.e(0),n.e(6)]).then(n.bind(null,302)));n(236);var As={props:{color:{required:!1,default:"rgb(66, 185, 131)"}}},Ts=(n(237),Object(Ss.a)(As,(function(){return(0,this._self._c)("div",{staticClass:"spinner",style:{background:this.color}})}),[],!1,null,"1bbcb91a",null).exports);const Ls={name:"Mermaid",props:{id:{type:String,required:!1,default:()=>"diagram_"+Date.now()},graph:{type:String,required:!1}},data:()=>({svg:void 0}),computed:{graphData(){return this.graph?this.graph:this.$slots.default[0].text}},render(t){return void 0===this.svg?t("Loading"):t("div",{class:["mermaid-diagram"],domProps:{innerHTML:this.svg,style:"width: 100%"}})},mounted(){n.e(36).then(n.t.bind(null,297,7)).then(t=>{t.initialize({startOnLoad:!0,gantt:{barHeight:20,fontSize:12,useWidth:960}}),t.render(this.id,this.graphData,t=>{this.svg=t})})},components:{Loading:Ts}};var Rs=[{},({Vue:t})=>{t.mixin({computed:{$dataBlock(){return this.$options.__data__block__}}})},{},{},({Vue:t})=>{t.component(Ls.name,Ls)}],Ms=[];class Is extends class{constructor(){this.store=new Wn({data:{state:{}}})}$get(t){return this.store.state[t]}$set(t,e){Wn.set(this.store.state,t,e)}$emit(...t){this.store.$emit(...t)}$on(...t){this.store.$on(...t)}}{}Object.assign(Is.prototype,{getPageAsyncComponent:as,getLayoutAsyncComponent:ss,getAsyncComponent:cs,getVueComponent:us});var Ds={install(t){const e=new Is;t.$vuepress=e,t.prototype.$vuepress=e}};function Ns(t,e){const n=e.toLowerCase();return t.options.routes.some(t=>t.path.toLowerCase()===n)}var Fs={props:{pageKey:String,slotKey:{type:String,default:"default"}},render(t){const e=this.pageKey||this.$parent.$page.key;return fs("pageKey",e),Wn.component(e)||Wn.component(e,as(e)),Wn.component(e)?t(e):t("")}},Us={functional:!0,props:{slotKey:String,required:!0},render:(t,{props:e,slots:n})=>t("div",{class:["content__"+e.slotKey]},n()[e.slotKey])},zs={computed:{openInNewWindowTitle(){return this.$themeLocaleConfig.openNewWindowText||"(opens new window)"}}},Bs=(n(238),n(239),Object(Ss.a)(zs,(function(){var t=this._self._c;return t("span",[t("svg",{staticClass:"icon outbound",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"}},[t("path",{attrs:{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}}),this._v(" "),t("polygon",{attrs:{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"}})]),this._v(" "),t("span",{staticClass:"sr-only"},[this._v(this._s(this.openInNewWindowTitle))])])}),[],!1,null,null,null).exports),Vs={functional:!0,render(t,{parent:e,children:n}){if(e._isMounted)return n;e.$once("hook:mounted",()=>{e.$forceUpdate()})}};Wn.config.productionTip=!1,Wn.use(Ha),Wn.use(Ds),Wn.mixin(function(t,e,n=Wn){!function(t){t.locales&&Object.keys(t.locales).forEach(e=>{t.locales[e].path=e});Object.freeze(t)}(e),n.$vuepress.$set("siteData",e);const r=new(t(n.$vuepress.$get("siteData"))),o=Object.getOwnPropertyDescriptors(Object.getPrototypeOf(r)),i={};return Object.keys(o).reduce((t,e)=>(e.startsWith("$")&&(t[e]=o[e].get),t),i),{computed:i}}(t=>class{setPage(t){this.__page=t}get $site(){return t}get $themeConfig(){return this.$site.themeConfig}get $frontmatter(){return this.$page.frontmatter}get $localeConfig(){const{locales:t={}}=this.$site;let e,n;for(const r in t)"/"===r?n=t[r]:0===this.$page.path.indexOf(r)&&(e=t[r]);return e||n||{}}get $siteTitle(){return this.$localeConfig.title||this.$site.title||""}get $canonicalUrl(){const{canonicalUrl:t}=this.$page.frontmatter;return"string"==typeof t&&t}get $title(){const t=this.$page,{metaTitle:e}=this.$page.frontmatter;if("string"==typeof e)return e;const n=this.$siteTitle,r=t.frontmatter.home?null:t.frontmatter.title||t.title;return n?r?r+" | "+n:n:r||"VuePress"}get $description(){const t=function(t){if(t){const e=t.filter(t=>"description"===t.name)[0];if(e)return e.content}}(this.$page.frontmatter.meta);return t||(this.$page.frontmatter.description||this.$localeConfig.description||this.$site.description||"")}get $lang(){return this.$page.frontmatter.lang||this.$localeConfig.lang||"en-US"}get $localePath(){return this.$localeConfig.path||"/"}get $themeLocaleConfig(){return(this.$site.themeConfig.locales||{})[this.$localePath]||{}}get $page(){return this.__page?this.__page:function(t,e){for(let n=0;nn||(t.hash?!Wn.$vuepress.$get("disableScrollBehavior")&&{selector:decodeURIComponent(t.hash)}:{x:0,y:0})});!function(t){t.beforeEach((e,n,r)=>{if(Ns(t,e.path))r();else if(/(\/|\.html)$/.test(e.path))if(/\/$/.test(e.path)){const n=e.path.replace(/\/$/,"")+".html";Ns(t,n)?r(n):r()}else r();else{const n=e.path+"/",o=e.path+".html";Ns(t,o)?r(o):Ns(t,n)?r(n):r()}})}(n);const r={};try{await Promise.all(Rs.filter(t=>"function"==typeof t).map(e=>e({Vue:Wn,options:r,router:n,siteData:Ps,isServer:t})))}catch(t){console.error(t)}return{app:new Wn(Object.assign(r,{router:n,render:t=>t("div",{attrs:{id:"app"}},[t("RouterView",{ref:"layout"}),t("div",{class:"global-ui"},Ms.map(e=>t(e)))])})),router:n}}(!1).then(({app:t,router:e})=>{e.onReady(()=>{t.$mount("#app")})})}]); \ No newline at end of file diff --git a/cli/bump.html b/cli/bump.html index 2c667b007..cad1f1933 100644 --- a/cli/bump.html +++ b/cli/bump.html @@ -8,7 +8,7 @@ - + @@ -34,6 +34,6 @@ →

- + diff --git a/cli/change.html b/cli/change.html index b511f65e7..3892f5952 100644 --- a/cli/change.html +++ b/cli/change.html @@ -8,7 +8,7 @@ - + @@ -57,6 +57,6 @@ →

- + diff --git a/cli/check.html b/cli/check.html index d202f8638..35f0386d6 100644 --- a/cli/check.html +++ b/cli/check.html @@ -8,7 +8,7 @@ - + @@ -34,6 +34,6 @@ →

- + diff --git a/cli/options.html b/cli/options.html index cdd5f90c2..a5673b5a9 100644 --- a/cli/options.html +++ b/cli/options.html @@ -8,7 +8,7 @@ - + @@ -33,6 +33,6 @@ →

- + diff --git a/cli/publish.html b/cli/publish.html index 1c36c2d6f..17f0b8944 100644 --- a/cli/publish.html +++ b/cli/publish.html @@ -8,7 +8,7 @@ - + @@ -35,6 +35,6 @@ →

- + diff --git a/cli/sync.html b/cli/sync.html index 3087dc4fa..0d6caae5b 100644 --- a/cli/sync.html +++ b/cli/sync.html @@ -8,7 +8,7 @@ - + @@ -29,6 +29,6 @@

- + diff --git a/concepts/bump-algorithm.html b/concepts/bump-algorithm.html index 1edef5d49..8bc230446 100644 --- a/concepts/bump-algorithm.html +++ b/concepts/bump-algorithm.html @@ -8,7 +8,7 @@ - + @@ -42,6 +42,6 @@ →

- + diff --git a/concepts/change-files.html b/concepts/change-files.html index 66605da8d..1e83a0744 100644 --- a/concepts/change-files.html +++ b/concepts/change-files.html @@ -8,7 +8,7 @@ - + @@ -58,6 +58,6 @@ →

- + diff --git a/concepts/ci-integration.html b/concepts/ci-integration.html index 6678b1c47..d7c1649c4 100644 --- a/concepts/ci-integration.html +++ b/concepts/ci-integration.html @@ -8,7 +8,7 @@ - + @@ -119,6 +119,6 @@ →

- + diff --git a/concepts/groups.html b/concepts/groups.html index 02c3cb04c..0f554134f 100644 --- a/concepts/groups.html +++ b/concepts/groups.html @@ -8,7 +8,7 @@ - + @@ -46,6 +46,6 @@ →

- + diff --git a/index.html b/index.html index 5876f2329..f071fbf83 100644 --- a/index.html +++ b/index.html @@ -8,7 +8,7 @@ - + @@ -33,6 +33,6 @@

Synchronized in git and npm

keep your git and npm versions in sync in CI and local workflows

Generates Changelogs

same command will generate changelogs for your users

Automated Version Bumps

one command line to bump package(s) in your repo with semver

Single or Monorepo

compatible out of the box for single repo or monorepos

Pre-Publish Validation Checks

double and triple check git repo and npm registry before publish

Zero Config Versioning

no config is required to get started, do more in one line

- + diff --git a/overview/configuration.html b/overview/configuration.html index 82b700964..b5748df7f 100644 --- a/overview/configuration.html +++ b/overview/configuration.html @@ -8,7 +8,7 @@ - + @@ -48,6 +48,6 @@ →

- + diff --git a/overview/getting-started.html b/overview/getting-started.html index 4c8afc523..e2acf71f5 100644 --- a/overview/getting-started.html +++ b/overview/getting-started.html @@ -8,7 +8,7 @@ - + @@ -33,6 +33,6 @@ →

- + diff --git a/overview/installation.html b/overview/installation.html index 148a4d732..be2a228c4 100644 --- a/overview/installation.html +++ b/overview/installation.html @@ -8,7 +8,7 @@ - + @@ -44,6 +44,6 @@ →

- +