@ebay/skin 17.1.0 → 17.2.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/.changeset/README.md +8 -0
  2. package/.changeset/chilled-dots-whisper.md +5 -0
  3. package/.changeset/config.json +11 -0
  4. package/.changeset/five-bats-appear.md +5 -0
  5. package/.changeset/gentle-moles-collect.md +5 -0
  6. package/.changeset/healthy-kings-hang.md +5 -0
  7. package/.changeset/pre.json +17 -0
  8. package/.changeset/pretty-rabbits-smash.md +5 -0
  9. package/.changeset/slow-maps-guess.md +5 -0
  10. package/.changeset/stale-lamps-retire.md +5 -0
  11. package/.changeset/unlucky-files-tickle.md +5 -0
  12. package/.github/workflows/jekyll-gh-pages.yml +53 -9
  13. package/CHANGELOG.md +28 -0
  14. package/CONTRIBUTING.md +28 -0
  15. package/_cdn/skin/v17.2.0-next.0/skin-default.min.css +69 -0
  16. package/_cdn/skin/v17.2.0-next.0/skin-full.min.css +151 -0
  17. package/_cdn/skin/v17.2.0-next.0/skin-headless.min.css +6 -0
  18. package/dist/button/button.css +0 -1
  19. package/dist/combobox/combobox.css +5 -7
  20. package/dist/date-textbox/date-textbox.css +1 -1
  21. package/dist/filter-menu/filter-menu.css +2 -2
  22. package/dist/filter-menu-button/filter-menu-button.css +7 -4
  23. package/dist/icon/icon.css +24 -0
  24. package/dist/infotip/infotip.css +3 -3
  25. package/dist/listbox/listbox.css +3 -2
  26. package/dist/listbox-button/listbox-button.css +5 -7
  27. package/dist/menu/menu.css +3 -2
  28. package/dist/menu-button/menu-button.css +5 -9
  29. package/dist/signal/signal.css +4 -3
  30. package/dist/svg/icon/icon-bank-24.svg +4 -2
  31. package/dist/svg/icon/icon-bank-64.svg +4 -2
  32. package/dist/svg/icon/icon-calendar-16.svg +4 -5
  33. package/dist/svg/icon/icon-calendar-24.svg +4 -5
  34. package/dist/svg/icon/icon-calendar-64.svg +4 -5
  35. package/dist/svg/icon/icon-credit-card-16.svg +4 -2
  36. package/dist/svg/icon/icon-credit-card-24.svg +4 -2
  37. package/dist/svg/icon/icon-credit-card-64.svg +4 -2
  38. package/dist/svg/icon/icon-gift-16.svg +2 -2
  39. package/dist/svg/icon/icon-gift-24.svg +4 -2
  40. package/dist/svg/icon/icon-gift-64.svg +4 -2
  41. package/dist/svg/icon/icon-locked-16.svg +4 -2
  42. package/dist/svg/icon/icon-locked-20.svg +7 -0
  43. package/dist/svg/icon/icon-locked-24.svg +4 -2
  44. package/dist/svg/icon/icon-mail-20.svg +7 -0
  45. package/dist/svg/icon/icon-passkey-16.svg +7 -0
  46. package/dist/svg/icon/icon-passkey-24.svg +7 -0
  47. package/dist/svg/icon/icon-passkey-64.svg +7 -0
  48. package/dist/svg/icon/icon-swap-24.svg +7 -0
  49. package/dist/svg/icon/icon-unlocked-16.svg +4 -3
  50. package/dist/svg/icon/icon-unlocked-24.svg +4 -5
  51. package/dist/svg/icon/icon-venmo-12-colored.svg +1 -0
  52. package/dist/svg/icon/icon-venmo-18-colored.svg +1 -0
  53. package/dist/svg/icon/icon-venmo-24-colored.svg +1 -0
  54. package/dist/svg/icon/icon-venmo-32-colored.svg +1 -0
  55. package/dist/svg/icons.svg +103 -42
  56. package/dist/tokens/evo-dark.css +1 -0
  57. package/dist/tokens/evo-light.css +1 -0
  58. package/dist/tooltip/tooltip.css +2 -2
  59. package/dist/tourtip/tourtip.css +2 -6
  60. package/package.json +15 -11
  61. package/scripts/develop-module_proper/code-generators/doc-generator.js +19 -13
  62. package/src/less/breadcrumbs/stories/button-cascade.stories.js +9 -9
  63. package/src/less/breadcrumbs/stories/button-overflow.stories.js +11 -11
  64. package/src/less/breadcrumbs/stories/buttons.stories.js +5 -5
  65. package/src/less/breadcrumbs/stories/link-cascade.stories.js +9 -9
  66. package/src/less/breadcrumbs/stories/link-overflow.stories.js +11 -11
  67. package/src/less/breadcrumbs/stories/links.stories.js +5 -5
  68. package/src/less/button/button.less +0 -1
  69. package/src/less/button/stories/button/base.stories.js +2 -2
  70. package/src/less/button/stories/button/borderless.stories.js +4 -4
  71. package/src/less/button/stories/button/primary.stories.js +1 -1
  72. package/src/less/button/stories/button/secondary.stories.js +1 -1
  73. package/src/less/button/stories/button/tertiary.stories.js +1 -1
  74. package/src/less/button/stories/destructive-button/primary.stories.js +1 -1
  75. package/src/less/button/stories/destructive-button/secondary.stories.js +1 -1
  76. package/src/less/button/stories/destructive-button/tertiary.stories.js +1 -1
  77. package/src/less/carousel/stories/carousel.stories.js +25 -25
  78. package/src/less/checkbox/stories/checked.stories.js +16 -16
  79. package/src/less/checkbox/stories/mixed.stories.js +2 -2
  80. package/src/less/checkbox/stories/unchecked.stories.js +8 -8
  81. package/src/less/chip/stories/interactive-chip.stories.js +17 -17
  82. package/src/less/chips-combobox/stories/chips-combobox.stories.js +34 -34
  83. package/src/less/chips-combobox/stories/rtl-chips-combobox.stories.js +34 -34
  84. package/src/less/combobox/stories/combobox.stories.js +10 -10
  85. package/src/less/cta-button/stories/cascade.stories.js +3 -3
  86. package/src/less/cta-button/stories/cta-button.stories.js +1 -1
  87. package/src/less/cta-button/stories/dimensions.stories.js +2 -2
  88. package/src/less/date-textbox/date-textbox.less +1 -1
  89. package/src/less/details/stories/cascade.stories.js +3 -3
  90. package/src/less/details/stories/details.stories.js +4 -4
  91. package/src/less/drawer-dialog/stories/drawer-dialog.stories.js +6 -6
  92. package/src/less/field/stories/stacked.stories.js +12 -12
  93. package/src/less/field/stories/unstacked.stories.js +4 -4
  94. package/src/less/filter-menu/stories/filter-menu.stories.js +30 -30
  95. package/src/less/filter-menu-button/filter-menu-button.less +3 -3
  96. package/src/less/filter-menu-button/stories/filter-menu-button.stories.js +83 -83
  97. package/src/less/floating-label/stories/floating-label.stories.js +5 -5
  98. package/src/less/global/stories/global.stories.js +12 -12
  99. package/src/less/icon/generated/icon.less +24 -0
  100. package/src/less/icon-button/stories/alignment.stories.js +6 -6
  101. package/src/less/infotip/infotip.less +3 -3
  102. package/src/less/infotip/stories/infotip.stories.js +10 -10
  103. package/src/less/inline-notice/stories/inline.stories.js +10 -10
  104. package/src/less/listbox/stories/cascade.stories.js +9 -9
  105. package/src/less/listbox/stories/listbox.stories.js +15 -15
  106. package/src/less/listbox-button/stories/base.stories.js +43 -43
  107. package/src/less/listbox-button/stories/cascade.stories.js +15 -15
  108. package/src/less/listbox-button/stories/dimensions.stories.js +5 -5
  109. package/src/less/listbox-button/stories/error/error.base.stories.js +38 -38
  110. package/src/less/listbox-button/stories/error/error.cascade.stories.js +15 -15
  111. package/src/less/listbox-button/stories/error/error.dimensions.stories.js +5 -5
  112. package/src/less/listbox-button/stories/error/error.form.stories.js +10 -10
  113. package/src/less/listbox-button/stories/form.stories.js +15 -15
  114. package/src/less/listbox-button/stories/subtitle.stories.js +38 -38
  115. package/src/less/menu/stories/fake-menu.stories.js +4 -4
  116. package/src/less/menu/stories/multiSelect.stories.js +9 -9
  117. package/src/less/menu-button/stories/base.stories.js +29 -29
  118. package/src/less/menu-button/stories/cascade.stories.js +6 -6
  119. package/src/less/menu-button/stories/dimensions.stories.js +1 -1
  120. package/src/less/menu-button/stories/fake-menu-button.stories.js +6 -6
  121. package/src/less/mixins/private/dropdown-mixins.less +3 -6
  122. package/src/less/mixins/private/filter-menu-mixins.less +1 -1
  123. package/src/less/mixins/private/selection-list-mixins.less +0 -2
  124. package/src/less/page-notice/stories/page-notice.stories.js +12 -12
  125. package/src/less/page-notice/stories/test.stories.js +7 -7
  126. package/src/less/pagination/stories/button-cascade.stories.js +6 -6
  127. package/src/less/pagination/stories/buttons.stories.js +4 -4
  128. package/src/less/pagination/stories/link-cascade.stories.js +6 -6
  129. package/src/less/pagination/stories/links.stories.js +4 -4
  130. package/src/less/pagination/stories/overflow.stories.js +16 -16
  131. package/src/less/progress-spinner/stories/progress-spinner.stories.js +4 -4
  132. package/src/less/progress-stepper/stories/progress-stepper.stories.js +49 -49
  133. package/src/less/radio/stories/checked.stories.js +16 -16
  134. package/src/less/radio/stories/unchecked.stories.js +8 -8
  135. package/src/less/section-notice/stories/icon-16.stories.js +12 -12
  136. package/src/less/section-notice/stories/icon-24.stories.js +20 -20
  137. package/src/less/section-notice/stories/iconless.stories.js +4 -4
  138. package/src/less/section-notice/stories/test.stories.js +4 -4
  139. package/src/less/section-title/stories/rtl.stories.js +3 -3
  140. package/src/less/section-title/stories/section-title.stories.js +3 -3
  141. package/src/less/segmented-buttons/stories/segmented-buttons.stories.js +2 -2
  142. package/src/less/select/stories/cascade.stories.js +3 -3
  143. package/src/less/select/stories/default.stories.js +8 -8
  144. package/src/less/select/stories/floating-label.stories.js +4 -4
  145. package/src/less/signal/signal.less +4 -3
  146. package/src/less/split-button/stories/base.stories.js +12 -12
  147. package/src/less/split-button/stories/rtl.stories.js +6 -6
  148. package/src/less/split-button/stories/size.stories.js +2 -2
  149. package/src/less/star-rating/stories/star-rating.stories.js +15 -15
  150. package/src/less/star-rating-select/stories/star-rating-select.stories.js +10 -10
  151. package/src/less/textbox/stories/icon.stories.js +10 -10
  152. package/src/less/textbox/stories/rtl/icon.stories.js +7 -7
  153. package/src/less/toast-dialog/stories/toast-dialog.stories.js +3 -3
  154. package/src/less/toggle-button/stories/gallery-layout.stories.js +3 -3
  155. package/src/less/toggle-button/stories/list-layout.stories.js +3 -3
  156. package/src/less/tooltip/stories/pointer.stories.js +12 -12
  157. package/src/less/tooltip/stories/tooltip.stories.js +2 -2
  158. package/src/less/tooltip/tooltip.less +2 -2
  159. package/src/less/tourtip/stories/tourtip.stories.js +4 -4
  160. package/src/less/tourtip/tourtip.less +2 -7
  161. package/src/svg/icon/icon-bank-24.svg +4 -2
  162. package/src/svg/icon/icon-bank-64.svg +4 -2
  163. package/src/svg/icon/icon-calendar-16.svg +4 -5
  164. package/src/svg/icon/icon-calendar-24.svg +4 -5
  165. package/src/svg/icon/icon-calendar-64.svg +4 -5
  166. package/src/svg/icon/icon-credit-card-16.svg +4 -2
  167. package/src/svg/icon/icon-credit-card-24.svg +4 -2
  168. package/src/svg/icon/icon-credit-card-64.svg +4 -2
  169. package/src/svg/icon/icon-gift-16.svg +2 -2
  170. package/src/svg/icon/icon-gift-24.svg +4 -2
  171. package/src/svg/icon/icon-gift-64.svg +4 -2
  172. package/src/svg/icon/icon-locked-16.svg +4 -2
  173. package/src/svg/icon/icon-locked-20.svg +7 -0
  174. package/src/svg/icon/icon-locked-24.svg +4 -2
  175. package/src/svg/icon/icon-mail-20.svg +7 -0
  176. package/src/svg/icon/icon-passkey-16.svg +7 -0
  177. package/src/svg/icon/icon-passkey-24.svg +7 -0
  178. package/src/svg/icon/icon-passkey-64.svg +7 -0
  179. package/src/svg/icon/icon-swap-24.svg +7 -0
  180. package/src/svg/icon/icon-unlocked-16.svg +4 -3
  181. package/src/svg/icon/icon-unlocked-24.svg +4 -5
  182. package/src/svg/icon/icon-venmo-12-colored.svg +1 -0
  183. package/src/svg/icon/icon-venmo-18-colored.svg +1 -0
  184. package/src/svg/icon/icon-venmo-24-colored.svg +1 -0
  185. package/src/svg/icon/icon-venmo-32-colored.svg +1 -0
  186. package/src/svg/icons.svg +103 -42
  187. package/src/tokens/evo-dark.css +1 -0
  188. package/src/tokens/evo-light.css +1 -0
  189. package/svg.svg +103 -42
  190. package/.storybook/preview-head.html +0 -68930
  191. package/_cdn/skin/v17.1.0/skin-default.min.css +0 -69
  192. package/_cdn/skin/v17.1.0/skin-full.min.css +0 -151
  193. package/_cdn/skin/v17.1.0/skin-headless.min.css +0 -6
@@ -0,0 +1,8 @@
1
+ # Changesets
2
+
3
+ Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works
4
+ with multi-package repos, or single-package repos to help you version and publish your code. You can
5
+ find the full documentation for it [in our repository](https://github.com/changesets/changesets)
6
+
7
+ We have a quick list of common questions to get you started engaging with this project in
8
+ [our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md)
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@ebay/skin": minor
3
+ ---
4
+
5
+ icon updates
@@ -0,0 +1,11 @@
1
+ {
2
+ "$schema": "https://unpkg.com/@changesets/config@3.0.0/schema.json",
3
+ "changelog": ["@changesets/changelog-github", { "repo": "ebay/skin" }],
4
+ "commit": false,
5
+ "access": "public",
6
+ "fixed": [],
7
+ "linked": [],
8
+ "baseBranch": "master",
9
+ "updateInternalDependencies": "patch",
10
+ "ignore": []
11
+ }
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@ebay/skin": minor
3
+ ---
4
+
5
+ ebay-signal has incorrect type size and internal padding
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@ebay/skin": minor
3
+ ---
4
+
5
+ Venmo icon: Missing borders
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@ebay/skin": minor
3
+ ---
4
+
5
+ flyout: update styling
@@ -0,0 +1,17 @@
1
+ {
2
+ "mode": "pre",
3
+ "tag": "next",
4
+ "initialVersions": {
5
+ "@ebay/skin": "17.1.1"
6
+ },
7
+ "changesets": [
8
+ "chilled-dots-whisper",
9
+ "five-bats-appear",
10
+ "gentle-moles-collect",
11
+ "healthy-kings-hang",
12
+ "pretty-rabbits-smash",
13
+ "slow-maps-guess",
14
+ "stale-lamps-retire",
15
+ "unlucky-files-tickle"
16
+ ]
17
+ }
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@ebay/skin": minor
3
+ ---
4
+
5
+ component status alignment
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@ebay/skin": minor
3
+ ---
4
+
5
+ Docs: remove focusable attribute from examples and stories
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@ebay/skin": minor
3
+ ---
4
+
5
+ ebay-button: reduce width of stroke for priority=tertiary
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@ebay/skin": minor
3
+ ---
4
+
5
+ feat: automatically publish skin
@@ -4,22 +4,28 @@ name: Deploy Jekyll with GitHub Pages dependencies preinstalled
4
4
  on:
5
5
  # Runs on pushes targeting the default branch
6
6
  push:
7
- branches: ["master"]
7
+ branches: ["master", "[1-9][0-9].*"]
8
8
 
9
9
  # Allows you to run this workflow manually from the Actions tab
10
10
  workflow_dispatch:
11
11
 
12
- # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
13
12
  permissions:
14
- contents: read
15
- pages: write
13
+ actions: write
14
+ checks: write
15
+ contents: write
16
+ deployments: write
17
+ discussions: write
18
+ issues: write
19
+ packages: write
16
20
  id-token: write
21
+ pull-requests: write
22
+ repository-projects: write
23
+ security-events: write
24
+ statuses: write
17
25
 
18
- # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
19
- # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
20
26
  concurrency:
21
- group: "pages"
22
- cancel-in-progress: false
27
+ group: "${{ github.workflow }}-${{ github.event_name == 'pull_request_target' && github.head_ref || github.ref }}"
28
+ cancel-in-progress: true
23
29
 
24
30
  jobs:
25
31
  # Build job
@@ -32,7 +38,7 @@ jobs:
32
38
  uses: actions/configure-pages@v3
33
39
  - uses: actions/setup-node@master
34
40
  with:
35
- node-version: '16.x'
41
+ node-version: '18.x'
36
42
  - run: npm i
37
43
  - run: npm run build:ci
38
44
  - name: Build with Jekyll
@@ -45,6 +51,11 @@ jobs:
45
51
 
46
52
  # Deployment job
47
53
  deploy:
54
+ # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
55
+ permissions:
56
+ contents: read
57
+ pages: write
58
+ id-token: write
48
59
  environment:
49
60
  name: github-pages
50
61
  url: ${{ steps.deployment.outputs.page_url }}
@@ -54,3 +65,36 @@ jobs:
54
65
  - name: Deploy to GitHub Pages
55
66
  id: deployment
56
67
  uses: actions/deploy-pages@v2
68
+ release:
69
+ runs-on: ubuntu-latest
70
+ needs: build
71
+ if: "${{ github.repository_owner == 'ebay' && github.event_name == 'push' }}"
72
+ steps:
73
+ - name: Checkout code
74
+ uses: actions/checkout@v4
75
+ - name: Setup node
76
+ uses: actions/setup-node@v3
77
+ with:
78
+ node-version: 18.x
79
+ cache: npm
80
+ - name: Install dependencies
81
+ run: npm ci
82
+ - name: Setup rubby
83
+ uses: ruby/setup-ruby@ec02537da5712d66d4d50a0f33b7eb52773b5ed1
84
+ with:
85
+ ruby-version: '3.1'
86
+ - name: Install dependencies
87
+ run: npm ci
88
+ - name: Install ruby dependencies
89
+ run: bundle install
90
+ - name: Release
91
+ id: changesets
92
+ uses: changesets/action@v1
93
+ with:
94
+ version: npm run version
95
+ publish: npm run release
96
+ commit: "ci: release"
97
+ title: "ci: release"
98
+ env:
99
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
100
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
package/CHANGELOG.md CHANGED
@@ -1,5 +1,33 @@
1
1
  # Skin Changelog
2
2
 
3
+ ## 17.2.0-next.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`c4af2b9`](https://github.com/eBay/skin/commit/c4af2b9552dd35986bbf9c24036b0b6c67581aa5) Thanks [@agliga](https://github.com/agliga)! - icon updates
8
+
9
+ - [`c4af2b9`](https://github.com/eBay/skin/commit/c4af2b9552dd35986bbf9c24036b0b6c67581aa5) Thanks [@agliga](https://github.com/agliga)! - ebay-signal has incorrect type size and internal padding
10
+
11
+ - [`c4af2b9`](https://github.com/eBay/skin/commit/c4af2b9552dd35986bbf9c24036b0b6c67581aa5) Thanks [@agliga](https://github.com/agliga)! - Venmo icon: Missing borders
12
+
13
+ - [`c4af2b9`](https://github.com/eBay/skin/commit/c4af2b9552dd35986bbf9c24036b0b6c67581aa5) Thanks [@agliga](https://github.com/agliga)! - flyout: update styling
14
+
15
+ - [`c4af2b9`](https://github.com/eBay/skin/commit/c4af2b9552dd35986bbf9c24036b0b6c67581aa5) Thanks [@agliga](https://github.com/agliga)! - component status alignment
16
+
17
+ - [`c4af2b9`](https://github.com/eBay/skin/commit/c4af2b9552dd35986bbf9c24036b0b6c67581aa5) Thanks [@agliga](https://github.com/agliga)! - Docs: remove focusable attribute from examples and stories
18
+
19
+ - [`c4af2b9`](https://github.com/eBay/skin/commit/c4af2b9552dd35986bbf9c24036b0b6c67581aa5) Thanks [@agliga](https://github.com/agliga)! - ebay-button: reduce width of stroke for priority=tertiary
20
+
21
+ - [`c4af2b9`](https://github.com/eBay/skin/commit/c4af2b9552dd35986bbf9c24036b0b6c67581aa5) Thanks [@agliga](https://github.com/agliga)! - feat: automatically publish skin
22
+
23
+ ## 17.1.1
24
+
25
+ ### Patch Changes
26
+
27
+ - [#2264](https://github.com/eBay/skin/pull/2264) [`32e58f3`](https://github.com/eBay/skin/commit/32e58f3a4c5ae1b4508cf2f283f85969b122c26f) Thanks [@agliga](https://github.com/agliga)! - Added autopublish to github
28
+
29
+ - [#2264](https://github.com/eBay/skin/pull/2264) [`32e58f3`](https://github.com/eBay/skin/commit/32e58f3a4c5ae1b4508cf2f283f85969b122c26f) Thanks [@agliga](https://github.com/agliga)! - updated changeset
30
+
3
31
  A record of all notable changes are documented under [releases](https://github.com/eBay/skin/releases).
4
32
 
5
33
  Skin releases follow [Semantic Versioning](http://semver.org):
package/CONTRIBUTING.md CHANGED
@@ -92,6 +92,34 @@ _Example_
92
92
  ./scripts/develop-module -m toast-dialog
93
93
  ```
94
94
 
95
+ Add applicable metadata about the component to the `module_metadata` map in [docs/index.html](https://github.com/eBay/skin/blob/master/docs/index.html):
96
+
97
+ ```yaml
98
+ your-module-name: # the Skin module name
99
+ ds-component: # module's relationship with the eBay Design System
100
+ group: # eBay Design System component group
101
+ name: # eBay Design System component name
102
+ version: # version of the eBay Design System component implemented in Skin
103
+ status: # status, e.g. "beta", "deprecated", "in-progress"
104
+ submodules: # array of Skin modules used in this module
105
+ ```
106
+
107
+ If the Skin component is used for multiple Design System components, include those as an array in the `ds-component` field. For example:
108
+
109
+ ```yaml
110
+ lightbox-dialog:
111
+ ds-component:
112
+ - name: modal
113
+ version: 2.1
114
+ - name: bottom-sheet
115
+ version: 2.1
116
+ submodules:
117
+ - button
118
+ - icon-button
119
+ ```
120
+
121
+ When updating a Skin module to match an updated Design System design, make sure to update its version in its `ds-component` field.
122
+
95
123
  ## Versioning
96
124
 
97
125
  Skin follows [Semantic Versioning](http://semver.org):