@progressive-development/pd-calendar 0.2.21 → 0.5.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.
@@ -1,13 +1,10 @@
1
- import { LitElement, html, css } from 'lit';
2
- import { parse } from 'fecha';
3
-
4
- import { PDColorStyles, PDFontStyles } from '@progressive-development/pd-shared-styles'
5
-
1
+ import { LitElement, css, html } from "lit";
2
+ import { parse } from "fecha";
3
+ import { PDColorStyles, PDFontStyles } from "@progressive-development/pd-shared-styles";
6
4
  class PdCalendarCell extends LitElement {
7
5
  /**
8
6
  * @event select-date - fires when user clicks on a selectable cell.
9
7
  */
10
-
11
8
  static get properties() {
12
9
  return {
13
10
  /**
@@ -15,43 +12,37 @@ class PdCalendarCell extends LitElement {
15
12
  * vy the user => results in fire cell-selected.
16
13
  */
17
14
  selectEnabled: { type: Boolean },
18
-
19
15
  /**
20
16
  * If enabled, highlight the current day
21
17
  */
22
18
  today: { type: Boolean },
23
-
24
19
  /**
25
20
  * If enabled, highlight the selected day
26
21
  */
27
22
  selected: { type: Boolean },
28
-
29
23
  /**
30
24
  * If enabled the cell gets an special class (e.g. green day).
31
25
  */
32
26
  special: { type: Boolean },
33
-
34
27
  /**
35
28
  * If set shows info text in the middle (hack) of the cell (e.g. price info).
36
29
  */
37
30
  infoTxt: { type: String },
38
-
39
31
  /**
40
32
  * CSS class for day number inside the cell, top-left and center available
41
33
  */
42
34
  numberClass: { type: String },
43
-
44
35
  /* key, weekDayNumber, dayNumber could merged to date
45
36
  on the other hand then there is the need to calculate them for each cell... */
46
37
  key: { type: String },
47
38
  weekDayNumber: { type: Number },
48
- dayNumber: { type: Number },
39
+ dayNumber: { type: Number }
49
40
  };
50
41
  }
51
-
52
42
  static get styles() {
53
43
  return [
54
- PDColorStyles, PDFontStyles,
44
+ PDColorStyles,
45
+ PDFontStyles,
55
46
  css`
56
47
  :host {
57
48
  display: block;
@@ -183,14 +174,13 @@ class PdCalendarCell extends LitElement {
183
174
  font-size: 1em;
184
175
  }
185
176
  }
186
- `];
177
+ `
178
+ ];
187
179
  }
188
-
189
180
  constructor() {
190
- super();
191
- this.numberClass = "top-left";
181
+ super();
182
+ this.numberClass = "top-left";
192
183
  }
193
-
194
184
  _renderSelectableCell() {
195
185
  return html` <div
196
186
  @keypress="${this._selectableCellClicked}"
@@ -198,83 +188,59 @@ class PdCalendarCell extends LitElement {
198
188
  @mouseenter="${this._mouseEnter}"
199
189
  @mouseleave="${this._mouseLeave}"
200
190
  data-date="${this.key}"
201
- class="cell cell-day ${this.numberClass} ${this.special ? 'special' : 'free'}
202
- ${(this.weekDayNumber === 6 ||
203
- this.weekDayNumber === 0) && !this.special
204
- ? 'we'
205
- : ''}"
191
+ class="cell cell-day ${this.numberClass} ${this.special ? "special" : "free"}
192
+ ${(this.weekDayNumber === 6 || this.weekDayNumber === 0) && !this.special ? "we" : ""}"
206
193
  >
207
- ${this.infoTxt
208
- ? html` <div class="cell-info">${this.infoTxt}</div>`
209
- : ''}
194
+ ${this.infoTxt ? html` <div class="cell-info">${this.infoTxt}</div>` : ""}
210
195
 
211
- ${this.today
212
- ? html`<div class="number-ring today"></div>`
213
- : ''}
196
+ ${this.today ? html`<div class="number-ring today"></div>` : ""}
214
197
 
215
- ${this.selected
216
- ? html`<div class="number-ring selected"></div>`
217
- : ''}
198
+ ${this.selected ? html`<div class="number-ring selected"></div>` : ""}
218
199
 
219
200
  <div class="cell-number ${this.numberClass}">${this.dayNumber}</div>
220
201
  </div>`;
221
202
  }
222
-
223
203
  _renderEmptyCell() {
224
204
  return html`<div
225
- class="cell cell-day ${this.numberClass} ${(this.weekDayNumber === 6 ||
226
- this.weekDayNumber === 0) && !this.special
227
- ? 'we'
228
- : ''}"
205
+ class="cell cell-day ${this.numberClass} ${(this.weekDayNumber === 6 || this.weekDayNumber === 0) && !this.special ? "we" : ""}"
229
206
  >
230
- ${this.infoTxt
231
- ? html`<div class="cell-info">${this.infoTxt}</div>`
232
- : ''}
207
+ ${this.infoTxt ? html`<div class="cell-info">${this.infoTxt}</div>` : ""}
233
208
 
234
209
  <div class="cell-number ${this.numberClass}">${this.dayNumber}</div>
235
210
  </div>`;
236
211
  }
237
-
238
212
  render() {
239
- return this.selectEnabled
240
- ? this._renderSelectableCell()
241
- : this._renderEmptyCell();
213
+ return this.selectEnabled ? this._renderSelectableCell() : this._renderEmptyCell();
242
214
  }
243
-
244
215
  _selectableCellClicked(e) {
245
216
  const dateKey = e.target.dataset.date;
246
217
  if (dateKey) {
247
- // convert back to date
248
- const userSelectedDate = parse(dateKey, 'YYYY-MM-DD');
218
+ const userSelectedDate = parse(dateKey, "YYYY-MM-DD");
249
219
  this.dispatchEvent(
250
- new CustomEvent('select-date', {
220
+ new CustomEvent("select-date", {
251
221
  detail: {
252
222
  dateKey,
253
- date: userSelectedDate,
254
- },
223
+ date: userSelectedDate
224
+ }
255
225
  })
256
226
  );
257
227
  }
258
228
  }
259
-
260
229
  _mouseEnter() {
261
- const userSelectedDate = parse(this.key, 'YYYY-MM-DD');
230
+ const userSelectedDate = parse(this.key, "YYYY-MM-DD");
262
231
  this.dispatchEvent(
263
- new CustomEvent('mouse-enter-date', {
232
+ new CustomEvent("mouse-enter-date", {
264
233
  detail: {
265
234
  dateKey: this.key,
266
- date: userSelectedDate,
267
- },
235
+ date: userSelectedDate
236
+ }
268
237
  })
269
- );
238
+ );
270
239
  }
271
-
272
240
  _mouseLeave() {
273
241
  this.dispatchEvent(
274
- new CustomEvent('mouse-leave-date')
242
+ new CustomEvent("mouse-leave-date")
275
243
  );
276
244
  }
277
-
278
245
  }
279
-
280
- window.customElements.define('pd-calendar-cell', PdCalendarCell);
246
+ window.customElements.define("pd-calendar-cell", PdCalendarCell);
@@ -1,20 +1,16 @@
1
- /* eslint-disable lit-a11y/click-events-have-key-events */
2
- import { LitElement, html, css } from 'lit';
3
-
4
- export class PdYearPopup extends LitElement {
1
+ import { LitElement, css, html } from "lit";
2
+ class PdYearPopup extends LitElement {
5
3
  /**
6
4
  * @event select-date - fires when user clicks on a selectable cell.
7
5
  */
8
-
9
6
  static get properties() {
10
- return {
7
+ return {
11
8
  yearSelection: { type: Array },
12
- currentYear: { type: String },
9
+ currentYear: { type: String }
13
10
  };
14
11
  }
15
-
16
12
  static get styles() {
17
- return [
13
+ return [
18
14
  css`
19
15
  :host {
20
16
  position: absolute;
@@ -51,42 +47,41 @@ export class PdYearPopup extends LitElement {
51
47
  cursor: pointer;
52
48
  }
53
49
 
54
- `];
50
+ `
51
+ ];
55
52
  }
56
-
57
53
  constructor() {
58
- super();
59
- this.yearSelection = [];
60
-
54
+ super();
55
+ this.yearSelection = [];
61
56
  }
62
-
63
57
  render() {
64
58
  return html`
65
59
  <ul>
66
- ${this.yearSelection.map(year => html`
67
- <li class="${this.currentYear === year ? 'current' : ''}" data-year="${year}" @click="${this._yearSelection}">${year}</li>
60
+ ${this.yearSelection.map((year) => html`
61
+ <li class="${this.currentYear === year ? "current" : ""}" data-year="${year}" @click="${this._yearSelection}">${year}</li>
68
62
  `)}
69
63
  </ul>
70
64
  `;
71
65
  }
72
-
73
- _yearSelection(event) {
66
+ _yearSelection(event) {
74
67
  if (event.target.dataset.year) {
75
68
  this.dispatchEvent(new CustomEvent(
76
- "change-year-selection", {
77
- detail: {
78
- year: event.target.dataset.year
69
+ "change-year-selection",
70
+ {
71
+ detail: {
72
+ year: event.target.dataset.year
73
+ }
79
74
  }
80
- }));
75
+ ));
81
76
  } else {
82
77
  this._closeSelection();
83
- }
84
- }
85
-
86
- _closeSelection() {
78
+ }
79
+ }
80
+ _closeSelection() {
87
81
  this.dispatchEvent(new CustomEvent("abort-year-selection"));
88
- }
89
-
82
+ }
90
83
  }
91
-
92
- window.customElements.define('pd-year-popup', PdYearPopup);
84
+ window.customElements.define("pd-year-popup", PdYearPopup);
85
+ export {
86
+ PdYearPopup
87
+ };
package/package.json CHANGED
@@ -1,64 +1,63 @@
1
1
  {
2
2
  "name": "@progressive-development/pd-calendar",
3
- "description": "progressive development calendar web component",
4
- "license": "SEE LICENSE IN LICENSE",
3
+ "description": "progressive development calendar web component",
5
4
  "author": "PD Progressive Development",
6
- "version": "0.2.21",
7
- "main": "index.js",
8
- "module": "index.js",
5
+ "license": "SEE LICENSE IN LICENSE",
6
+ "version": "0.5.0",
7
+ "main": "./dist/index.js",
8
+ "module": "./dist/index.js",
9
+ "exports": {
10
+ ".": "./dist/index.js",
11
+ "./pd-calendar": "./dist/pd-calendar.js",
12
+ "./locales/be": "./dist/locales/be.js",
13
+ "./locales/de": "./dist/locales/de.js",
14
+ "./locales/en": "./dist/locales/en.js"
15
+ },
16
+ "files": [
17
+ "dist/",
18
+ "package.json",
19
+ "README.md",
20
+ "LICENSE"
21
+ ],
9
22
  "scripts": {
10
23
  "analyze": "cem analyze --litelement",
11
- "start": "web-dev-server",
12
- "lint": "eslint --ext .js,.html . --ignore-path .gitignore && prettier \"**/*.js\" --check --ignore-path .gitignore",
13
- "format": "eslint --ext .js,.html . --fix --ignore-path .gitignore && prettier \"**/*.js\" --write --ignore-path .gitignore",
14
- "test": "web-test-runner --coverage",
15
- "test:watch": "web-test-runner --watch",
16
- "storybook": "storybook dev -p 6006",
17
- "build-storybook": "storybook build",
24
+ "start": "vite",
25
+ "build": "vite build",
26
+ "preview": "vite preview",
27
+ "lint": "eslint --ext .js,.html . --ignore-path .gitignore && prettier \"**/*.{js,html}\" --check --ignore-path .gitignore",
28
+ "format": "eslint --ext .js,.html . --fix --ignore-path .gitignore && prettier \"**/*.{js,html}\" --write --ignore-path .gitignore",
29
+ "test": "vitest run --coverage",
30
+ "test:watch": "vitest --watch",
18
31
  "localizeExtract": "lit-localize extract",
19
- "localizeBuild": "lit-localize build"
32
+ "localizeBuild": "lit-localize build",
33
+ "storybook": "storybook dev -p 6006",
34
+ "build-storybook": "storybook build"
20
35
  },
21
- "keywords": [
22
- "pd",
23
- "progressive",
24
- "development",
25
- "component",
26
- "wc",
27
- "lit",
28
- "calendar",
29
- "date",
30
- "day",
31
- "month",
32
- "week"
33
- ],
34
36
  "dependencies": {
35
- "@lit/localize": "^0.12.1",
36
- "@progressive-development/pd-icon": "^0.1.23",
37
- "@progressive-development/pd-shared-styles": "0.1.1",
37
+ "@lit/localize": "^0.12.2",
38
+ "@progressive-development/pd-icon": "^0.5.0",
39
+ "@progressive-development/pd-shared-styles": "^0.1.1",
38
40
  "fecha": "^4.2.3",
39
41
  "lit": "^2.8.0"
40
42
  },
41
43
  "devDependencies": {
42
44
  "@custom-elements-manifest/analyzer": "^0.4.17",
43
45
  "@lit/localize-tools": "^0.7.2",
44
- "@open-wc/eslint-config": "^4.3.0",
45
- "@open-wc/testing": "^3.0.0-next.5",
46
- "@storybook/addon-essentials": "^7.6.4",
47
- "@storybook/addon-links": "^7.6.4",
48
- "@storybook/blocks": "^7.6.4",
49
- "@storybook/web-components": "^7.6.4",
50
- "@storybook/web-components-vite": "^7.6.4",
51
- "@web/dev-server": "^0.1.38",
52
- "@web/test-runner": "^0.13.31",
46
+ "@storybook/addon-essentials": "^7.6.20",
47
+ "@storybook/addon-links": "^7.6.20",
48
+ "@storybook/blocks": "^7.5.3",
49
+ "@storybook/web-components": "^7.5.3",
50
+ "@storybook/web-components-vite": "^7.6.20",
53
51
  "eslint": "^7.32.0",
54
52
  "eslint-config-prettier": "^8.10.0",
55
53
  "eslint-plugin-storybook": "^0.6.15",
56
54
  "husky": "^4.3.8",
57
55
  "lint-staged": "^10.5.4",
58
56
  "prettier": "^2.8.8",
59
- "react": "^18.2.0",
60
- "react-dom": "^18.2.0",
61
- "storybook": "^7.6.4"
57
+ "rollup-plugin-visualizer": "^5.13.1",
58
+ "storybook": "^7.6.20",
59
+ "vite": "^5.4.11",
60
+ "vitest": "^2.1.8"
62
61
  },
63
62
  "customElements": "custom-elements.json",
64
63
  "eslintConfig": {
@@ -82,5 +81,18 @@
82
81
  "eslint --fix",
83
82
  "prettier --write"
84
83
  ]
85
- }
84
+ },
85
+ "keywords": [
86
+ "pd",
87
+ "progressive",
88
+ "development",
89
+ "component",
90
+ "wc",
91
+ "lit",
92
+ "calendar",
93
+ "date",
94
+ "day",
95
+ "month",
96
+ "week"
97
+ ]
86
98
  }
package/.editorconfig DELETED
@@ -1,29 +0,0 @@
1
- # EditorConfig helps developers define and maintain consistent
2
- # coding styles between different editors and IDEs
3
- # editorconfig.org
4
-
5
- root = true
6
-
7
-
8
- [*]
9
-
10
- # Change these settings to your own preference
11
- indent_style = space
12
- indent_size = 2
13
-
14
- # We recommend you to keep these unchanged
15
- end_of_line = lf
16
- charset = utf-8
17
- trim_trailing_whitespace = true
18
- insert_final_newline = true
19
-
20
- [*.md]
21
- trim_trailing_whitespace = false
22
-
23
- [*.json]
24
- indent_size = 2
25
-
26
- [*.{html,js,md}]
27
- block_comment_start = /**
28
- block_comment = *
29
- block_comment_end = */
@@ -1,13 +0,0 @@
1
- /** @type { import('@storybook/web-components-vite').StorybookConfig } */
2
- const config = {
3
- stories: ['../src/**/*.mdx', '../src/**/*.stories.@(js|jsx|mjs|ts|tsx)'],
4
- addons: ['@storybook/addon-links', '@storybook/addon-essentials'],
5
- framework: {
6
- name: '@storybook/web-components-vite',
7
- options: {},
8
- },
9
- docs: {
10
- autodocs: 'tag',
11
- },
12
- };
13
- export default config;
@@ -1,14 +0,0 @@
1
- /** @type { import('@storybook/web-components').Preview } */
2
- const preview = {
3
- parameters: {
4
- actions: { argTypesRegex: '^on[A-Z].*' },
5
- controls: {
6
- matchers: {
7
- color: /(background|color)$/i,
8
- date: /Date$/i,
9
- },
10
- },
11
- },
12
- };
13
-
14
- export default preview;
package/demo/index.html DELETED
@@ -1,29 +0,0 @@
1
- <!doctype html>
2
- <html lang="en-GB">
3
- <head>
4
- <meta charset="utf-8">
5
- <style>
6
- body {
7
- background: #fafafa;
8
- }
9
- </style>
10
- </head>
11
- <body>
12
- <div id="demo"></div>
13
-
14
- <script type="module">
15
- import { html, render } from 'lit';
16
- import '../pd-calendar.js';
17
-
18
- const title = 'Hello owc World!';
19
- render(
20
- html`
21
- <pd-calendar .title=${title}>
22
- some light-dom
23
- </pd-calendar>
24
- `,
25
- document.querySelector('#demo')
26
- );
27
- </script>
28
- </body>
29
- </html>
package/index.js DELETED
@@ -1 +0,0 @@
1
- export { PdCalendar } from './src/PdCalendar.js';
package/lit-localize.json DELETED
@@ -1,18 +0,0 @@
1
- {
2
- "$schema": "https://raw.githubusercontent.com/lit/lit/main/packages/localize-tools/config.schema.json",
3
- "sourceLocale": "dev",
4
- "targetLocales": ["de", "en", "be"],
5
- "inputFiles": [
6
- "src/**/*.js"
7
- ],
8
- "output": {
9
- "mode": "runtime",
10
- "localeCodesModule": "src/generated/locale-codes.js",
11
- "outputDir": "src/generated/locale"
12
-
13
- },
14
- "interchange": {
15
- "format": "xliff",
16
- "xliffDir": "./xliff/"
17
- }
18
- }
package/pd-calendar.js DELETED
@@ -1,3 +0,0 @@
1
- import { PdCalendar } from './src/PdCalendar.js';
2
-
3
- window.customElements.define('pd-calendar', PdCalendar);
@@ -1,39 +0,0 @@
1
-
2
- // Do not modify this file by hand!
3
- // Re-generate this file by running lit-localize
4
-
5
-
6
-
7
-
8
- /* eslint-disable no-irregular-whitespace */
9
- /* eslint-disable @typescript-eslint/no-explicit-any */
10
-
11
- export const templates = {
12
- 'pd.datepicker.month.jan': `Januar`,
13
- 'pd.datepicker.month.feb': `Februar`,
14
- 'pd.datepicker.month.mar': `März`,
15
- 'pd.datepicker.month.apr': `April`,
16
- 'pd.datepicker.month.may': `Mai`,
17
- 'pd.datepicker.month.jun': `Juni`,
18
- 'pd.datepicker.month.jul': `Juli`,
19
- 'pd.datepicker.month.aug': `August`,
20
- 'pd.datepicker.month.sep': `September`,
21
- 'pd.datepicker.month.oct': `Oktober`,
22
- 'pd.datepicker.month.nov': `November`,
23
- 'pd.datepicker.month.dec': `Dezember`,
24
- 'pd.datepicker.day.sun': `Sonntag`,
25
- 'pd.datepicker.day.mon': `Montag`,
26
- 'pd.datepicker.day.tue': `Dienstag`,
27
- 'pd.datepicker.day.wed': `Mittwoch`,
28
- 'pd.datepicker.day.thi': `Donnerstag`,
29
- 'pd.datepicker.day.fri': `Freitag`,
30
- 'pd.datepicker.day.sat': `Samstag`,
31
- 'pd.datepicker.shortday.mon': `Mo`,
32
- 'pd.datepicker.shortday.tue': `Di`,
33
- 'pd.datepicker.shortday.wed': `Mi`,
34
- 'pd.datepicker.shortday.thi': `Do`,
35
- 'pd.datepicker.shortday.fri': `Fr`,
36
- 'pd.datepicker.shortday.sat': `Sa`,
37
- 'pd.datepicker.shortday.sun': `So`,
38
- };
39
-
@@ -1,39 +0,0 @@
1
-
2
- // Do not modify this file by hand!
3
- // Re-generate this file by running lit-localize
4
-
5
-
6
-
7
-
8
- /* eslint-disable no-irregular-whitespace */
9
- /* eslint-disable @typescript-eslint/no-explicit-any */
10
-
11
- export const templates = {
12
- 'pd.datepicker.month.jan': `Januar`,
13
- 'pd.datepicker.month.feb': `Februar`,
14
- 'pd.datepicker.month.mar': `März`,
15
- 'pd.datepicker.month.apr': `April`,
16
- 'pd.datepicker.month.may': `Mai`,
17
- 'pd.datepicker.month.jun': `Juni`,
18
- 'pd.datepicker.month.jul': `Juli`,
19
- 'pd.datepicker.month.aug': `August`,
20
- 'pd.datepicker.month.sep': `September`,
21
- 'pd.datepicker.month.oct': `Oktober`,
22
- 'pd.datepicker.month.nov': `November`,
23
- 'pd.datepicker.month.dec': `Dezember`,
24
- 'pd.datepicker.day.sun': `Sonntag`,
25
- 'pd.datepicker.day.mon': `Montag`,
26
- 'pd.datepicker.day.tue': `Dienstag`,
27
- 'pd.datepicker.day.wed': `Mittwoch`,
28
- 'pd.datepicker.day.thi': `Donnerstag`,
29
- 'pd.datepicker.day.fri': `Freitag`,
30
- 'pd.datepicker.day.sat': `Samstag`,
31
- 'pd.datepicker.shortday.mon': `Mo`,
32
- 'pd.datepicker.shortday.tue': `Di`,
33
- 'pd.datepicker.shortday.wed': `Mi`,
34
- 'pd.datepicker.shortday.thi': `Do`,
35
- 'pd.datepicker.shortday.fri': `Fr`,
36
- 'pd.datepicker.shortday.sat': `Sa`,
37
- 'pd.datepicker.shortday.sun': `So`,
38
- };
39
-
@@ -1,39 +0,0 @@
1
-
2
- // Do not modify this file by hand!
3
- // Re-generate this file by running lit-localize
4
-
5
-
6
-
7
-
8
- /* eslint-disable no-irregular-whitespace */
9
- /* eslint-disable @typescript-eslint/no-explicit-any */
10
-
11
- export const templates = {
12
- 'pd.datepicker.month.jan': `Januar`,
13
- 'pd.datepicker.month.feb': `Februar`,
14
- 'pd.datepicker.month.mar': `März`,
15
- 'pd.datepicker.month.apr': `April`,
16
- 'pd.datepicker.month.may': `Mai`,
17
- 'pd.datepicker.month.jun': `Juni`,
18
- 'pd.datepicker.month.jul': `Juli`,
19
- 'pd.datepicker.month.aug': `August`,
20
- 'pd.datepicker.month.sep': `September`,
21
- 'pd.datepicker.month.oct': `Oktober`,
22
- 'pd.datepicker.month.nov': `November`,
23
- 'pd.datepicker.month.dec': `Dezember`,
24
- 'pd.datepicker.day.sun': `Sonntag`,
25
- 'pd.datepicker.day.mon': `Montag`,
26
- 'pd.datepicker.day.tue': `Dienstag`,
27
- 'pd.datepicker.day.wed': `Mittwoch`,
28
- 'pd.datepicker.day.thi': `Donnerstag`,
29
- 'pd.datepicker.day.fri': `Freitag`,
30
- 'pd.datepicker.day.sat': `Samstag`,
31
- 'pd.datepicker.shortday.mon': `Mo`,
32
- 'pd.datepicker.shortday.tue': `Di`,
33
- 'pd.datepicker.shortday.wed': `Mi`,
34
- 'pd.datepicker.shortday.thi': `Do`,
35
- 'pd.datepicker.shortday.fri': `Fr`,
36
- 'pd.datepicker.shortday.sat': `Sa`,
37
- 'pd.datepicker.shortday.sun': `So`,
38
- };
39
-
@@ -1,27 +0,0 @@
1
- // Do not modify this file by hand!
2
- // Re-generate this file by running lit-localize.
3
-
4
- /**
5
- * The locale code that templates in this source code are written in.
6
- */
7
- export const sourceLocale = `dev`;
8
-
9
- /**
10
- * The other locale codes that this application is localized into. Sorted
11
- * lexicographically.
12
- */
13
- export const targetLocales = [
14
- `be`,
15
- `de`,
16
- `en`,
17
- ];
18
-
19
- /**
20
- * All valid project locale codes. Sorted lexicographically.
21
- */
22
- export const allLocales = [
23
- `be`,
24
- `de`,
25
- `dev`,
26
- `en`,
27
- ];