nitro-web 0.2.19 → 0.2.20

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.
@@ -102,8 +102,8 @@ function SelectBase<IsMulti extends boolean = false>({
102
102
  // Combobox: free text with a suggestions dropdown, the typed text is the value (full-width text-input feel)
103
103
  const isCombobox = mode === 'combobox'
104
104
 
105
- // Multi-selects collapse tags to 2 lines by default
106
- maxLines = maxLines ?? (props.isMulti ? 2 : undefined)
105
+ // Multi-selects collapse tags to 2 lines by default, pass 0 (or null) to turn it off
106
+ maxLines = maxLines === undefined ? (props.isMulti ? 2 : undefined) : maxLines
107
107
 
108
108
  // Get value from value or state
109
109
  if (typeof props.value !== 'undefined') value = props.value
@@ -161,7 +161,9 @@ function SelectBase<IsMulti extends boolean = false>({
161
161
  }, [classNamesProp, isCombobox])
162
162
 
163
163
  return (
164
- <div css={style} class={'mt-2.5 mb-6 min-w-0 ' + twMerge(`mt-input-before mb-input-after nitro-select ${className || ''}`)}
164
+ <div
165
+ css={style}
166
+ class={'mt-2.5 mb-6 min-w-0 contain-inline-size ' + twMerge(`mt-input-before mb-input-after nitro-select ${className || ''}`)}
165
167
  // Combobox: clicking the (already focused) control reopens the menu after a selection
166
168
  onMouseDown={isCombobox ? () => setPickedFromMenu(false) : undefined}>
167
169
  <ReactSelect
@@ -222,7 +224,9 @@ function SelectBase<IsMulti extends boolean = false>({
222
224
  classNames={useMemo(() => ({
223
225
  // Input container
224
226
  control: (p) => getSelectClassName({ name: 'control', hasError: !!error, ...p, classNames: classNames }),
225
- valueContainer: () => getSelectClassName({ name: 'valueContainer', classNames: classNames }),
227
+ // Clearable: zero right padding (X is padded itself). Dont twMerge: valueContainer keeps optional px-input-x.
228
+ valueContainer: () => getSelectClassName({ name: 'valueContainer', classNames: classNames })
229
+ + ((props.isClearable ?? props.isMulti) ? ' pr-0.5' : ''), // we rely on the clearable x icon padding
226
230
  // Input container objects
227
231
  input: () => getSelectClassName({ name: 'input', hasError: !!error, classNames: classNames }),
228
232
  multiValue: () => getSelectClassName({ name: 'multiValue', classNames: classNames }),
@@ -243,7 +247,7 @@ function SelectBase<IsMulti extends boolean = false>({
243
247
  option: (p) => getSelectClassName({ name: 'option', ...p, classNames: classNames }),
244
248
  // Nitro specific
245
249
  flag: () => getSelectClassName({ name: 'flag', classNames: classNames }),
246
- }), [!!error, classNames])}
250
+ }), [!!error, classNames, props.isClearable, props.isMulti])}
247
251
  components={{
248
252
  Control,
249
253
  SingleValue,
@@ -349,15 +353,12 @@ function ValueContainer({ children, ...props}: ValueContainerProps) {
349
353
  return <LimitedValueContainer chips={chips} rest={kids.slice(1)} maxLines={maxLines} {...props} />
350
354
  }
351
355
 
352
- // Multi-select: shows tags over up to maxLines rows with a "+N" counter for the rest. The rows above the
353
- // last stay fixed; the last row is a single no-wrap line, so as the input grows it pushes that row's tags
354
- // off to the left (for maxLines=1 the last row is the only row).
356
+ // maxLines multi-select: fixed upper rows, scrolling last-row chips, "+N" for the rest
355
357
  function LimitedValueContainer({ chips, rest, maxLines, ...props }:
356
358
  Omit<ValueContainerProps, 'children'> & { chips: ReactNode[], rest: ReactNode[], maxLines: number }) {
357
- const sentinel = useRef<HTMLSpanElement>(null) // reaches the value container to measure tag rows
358
- const lastRow = useRef<HTMLDivElement>(null) // the scrolling last row
359
+ const sentinel = useRef<HTMLSpanElement>(null)
360
+ const lastRow = useRef<HTMLDivElement>(null)
359
361
  const widthRef = useRef(0)
360
- // upper = tags on the fixed rows above the last; last = tags on the scrolling last row
361
362
  const [split, setSplit] = useState<{ upper: number, last: number } | null>(null)
362
363
 
363
364
  // Re-measure on width or chip-count changes
@@ -374,7 +375,8 @@ function LimitedValueContainer({ chips, rest, maxLines, ...props }:
374
375
  useLayoutEffect(() => setSplit(null), [chips.length])
375
376
 
376
377
  // Measure the natural wrap of all tags, keep maxLines rows: rows above the last stay fixed, the last row
377
- // scrolls, and anything past maxLines rows becomes the "+N" count
378
+ // scrolls, and anything past maxLines rows becomes the "+N" count. Peel last-row chips so "+N" fits
379
+ // (contentRect already excludes padding; clear/X shrinks this via the indicators column).
378
380
  useLayoutEffect(() => {
379
381
  if (split !== null) return
380
382
  const parent = sentinel.current?.parentElement
@@ -384,11 +386,20 @@ function LimitedValueContainer({ chips, rest, maxLines, ...props }:
384
386
  const tops = [...new Set(nodes.map((n) => Math.round(n.offsetTop)))].sort((a, b) => a - b)
385
387
  const lastTop = tops[Math.min(maxLines, tops.length) - 1] // top of the last visible row
386
388
  const upper = nodes.filter((n) => Math.round(n.offsetTop) < lastTop).length
387
- const last = nodes.filter((n) => Math.round(n.offsetTop) === lastTop).length
389
+ let last = nodes.filter((n) => Math.round(n.offsetTop) === lastTop).length
390
+ const gap = 4 // gap-1
391
+ const badgeW = 30 // "+N"
392
+ const available = parent.clientWidth - parseFloat(getComputedStyle(parent).paddingLeft)
393
+ - parseFloat(getComputedStyle(parent).paddingRight)
394
+ while (last > 0 && nodes.length - upper - last > 0) {
395
+ const chipsW = nodes.slice(upper, upper + last).reduce((s, n, i) => s + n.offsetWidth + (i ? gap : 0), 0)
396
+ if (chipsW + gap + badgeW <= available) break
397
+ last -= 1
398
+ }
388
399
  setSplit({ upper, last })
389
400
  }, [split, chips.length, maxLines])
390
401
 
391
- // Keep the last row scrolled to the input while typing (pushes its tags left); left-aligned at rest
402
+ // Scroll chips toward the input while typing
392
403
  useLayoutEffect(() => {
393
404
  const el = lastRow.current
394
405
  if (el) el.scrollLeft = el.querySelector('input')?.value ? el.scrollWidth : 0
@@ -409,7 +420,7 @@ function LimitedValueContainer({ chips, rest, maxLines, ...props }:
409
420
  <div ref={lastRow} class="w-full min-w-0 flex flex-nowrap items-center gap-1 overflow-hidden [&>*]:shrink-0">
410
421
  {chips.slice(split.upper, split.upper + split.last)}
411
422
  {hidden > 0 && (
412
- <span class="self-stretch flex items-center rounded bg-gray-100 text-gray-500 text-xs px-2 whitespace-nowrap">
423
+ <span class="self-stretch flex items-center rounded bg-gray-100 text-gray-500 text-xs px-1.5 whitespace-nowrap">
413
424
  +{hidden}
414
425
  </span>
415
426
  )}
@@ -10,20 +10,20 @@ import React from 'react'
10
10
 
11
11
  const perPage = 10
12
12
  const allGroups = [
13
- // 'Links',
14
- // 'Dropdowns',
15
- // 'Filters',
16
- // 'Button Colors & Sizes',
17
- // 'Button Icons',
18
- // 'Loading Elements',
19
- // 'Varients',
13
+ 'Links',
14
+ 'Dropdowns',
15
+ 'Filters',
16
+ 'Button Colors & Sizes',
17
+ 'Button Icons',
18
+ 'Loading Elements',
19
+ 'Varients',
20
20
  'Selects',
21
- // 'Inputs',
22
- // 'Date Inputs',
23
- // 'File Inputs & Calendar & Time',
24
- // 'Tables',
25
- // 'Modals & Notifications',
26
- // 'Custom Components',
21
+ 'Inputs',
22
+ 'Date Inputs',
23
+ 'File Inputs & Calendar & Time',
24
+ 'Tables',
25
+ 'Modals & Notifications',
26
+ 'Custom Components',
27
27
  ] as const
28
28
 
29
29
  const statusColors = function(status: string) {
@@ -67,6 +67,7 @@ export function Styleguide({ className, elements, children, currencies, groups }
67
67
  amount: 100,
68
68
  brandColor: '#F3CA5F',
69
69
  colorsMulti: ['blue', 'green', 'yellow', 'red', 'orange', 'purple'],
70
+ colorsMultiFlex: ['blue', 'green', 'yellow', 'red', 'orange', 'purple'],
70
71
  country: 'cd',
71
72
  currency: 'nzd',
72
73
  percent: 1250,
@@ -422,8 +423,8 @@ export function Styleguide({ className, elements, children, currencies, groups }
422
423
  {visibleGroups.includes('Selects') && (
423
424
  <div>
424
425
  <h2 class="h3">Selects</h2>
425
- <div class="grid grid-cols-3 lg:grid-cols-3 gap-x-6">
426
- <div>
426
+ <div class="flex gap-x-6">
427
+ <div class="flex-1">
427
428
  <label for="action">Default</label>
428
429
  <Select
429
430
  // menuIsOpen={true}
@@ -435,12 +436,13 @@ export function Styleguide({ className, elements, children, currencies, groups }
435
436
  ], [])}
436
437
  />
437
438
  </div>
438
- <div>
439
+ <div class="flex-1">
440
+ {/* Testing: This is in a flexbox to correctly evaluate dynamic parent container size issues */}
439
441
  <label for="colorsMulti">Mutli Select</label>
440
442
  <Select
441
443
  name="colorsMulti"
442
444
  isMulti={true}
443
- // maxLines={1}
445
+ maxLines={1}
444
446
  state={state}
445
447
  options={useMemo(() => [
446
448
  { value: 'blue', label: 'Blue' },
@@ -457,7 +459,7 @@ export function Styleguide({ className, elements, children, currencies, groups }
457
459
  onChange={(e) => onChange(e, setState)}
458
460
  />
459
461
  </div>
460
- <div>
462
+ <div class="flex-1">
461
463
  <label for="country">Countries</label>
462
464
  <Select
463
465
  // https://github.com/lipis/flag-icons
@@ -470,6 +472,8 @@ export function Styleguide({ className, elements, children, currencies, groups }
470
472
  // classNames={{ flag: () => 'mr-4' }}
471
473
  />
472
474
  </div>
475
+ </div>
476
+ <div class="grid grid-cols-3 lg:grid-cols-3 gap-x-6">
473
477
  <div>
474
478
  <label for="customer">List Item with Action</label>
475
479
  <Select
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nitro-web",
3
- "version": "0.2.19",
3
+ "version": "0.2.20",
4
4
  "repository": "github:boycce/nitro-web",
5
5
  "homepage": "https://boycce.github.io/nitro-web/",
6
6
  "description": "Nitro is a battle-tested, modular base project to turbocharge your projects, styled using Tailwind 🚀",
@@ -1,14 +1,17 @@
1
1
  // --- Enums ------------------------------------
2
2
 
3
3
  /**
4
- * @typedef {'af'|'al'|'dz'|'ad'|'ao'|'ag'|'ar'|'am'|'au'|'at'|'az'|'bs'|'bh'|'bd'|'bb'|'by'|'be'|'bz'|'bj'|'bt'|'bo'|'ba'|'bw'|'br'|
5
- * 'bn'|'bg'|'bf'|'bi'|'cv'|'kh'|'cm'|'ca'|'cf'|'td'|'cl'|'cn'|'co'|'km'|'cg'|'cr'|'hr'|'cu'|'cy'|'cz'|'cd'|'dk'|'dj'|'dm'|'do'|'ec'|
6
- * 'eg'|'sv'|'gq'|'er'|'ee'|'sz'|'et'|'fj'|'fi'|'fr'|'ga'|'gm'|'ge'|'de'|'gh'|'gr'|'gd'|'gt'|'gn'|'gw'|'gy'|'ht'|'hn'|'hu'|'is'|
7
- * 'in'|'id'|'ir'|'iq'|'ie'|'il'|'it'|'jm'|'jp'|'jo'|'kz'|'ke'|'ki'|'kw'|'kg'|'la'|'lv'|'lb'|'ls'|'lr'|'ly'|'li'|'lt'|'lu'|'mg'|
8
- * 'mw'|'my'|'mv'|'ml'|'mt'|'mh'|'mr'|'mu'|'mx'|'fm'|'md'|'mc'|'mn'|'me'|'ma'|'mz'|'mm'|'na'|'nr'|'np'|'nl'|'nz'|'ni'|'ne'|'ng'|
9
- * 'kp'|'mk'|'no'|'om'|'pk'|'pw'|'pa'|'pg'|'py'|'pe'|'ph'|'pl'|'pt'|'qa'|'ro'|'ru'|'rw'|'kn'|'lc'|'vc'|'ws'|'sm'|'st'|'sa'|'sn'|
10
- * 'rs'|'sc'|'sl'|'sg'|'sk'|'si'|'sb'|'so'|'za'|'kr'|'ss'|'es'|'lk'|'sd'|'sr'|'se'|'ch'|'sy'|'tj'|'tz'|'th'|'tl'|'tg'|'to'|'tt'|
11
- * 'tn'|'tr'|'tm'|'tv'|'ug'|'ua'|'ae'|'gb'|'us'|'uy'|'uz'|'vu'|'va'|'ve'|'vn'|'ye'|'zm'|'zw'} Country
4
+ * @typedef {'af'|'ax'|'al'|'dz'|'as'|'ad'|'ao'|'ai'|'aq'|'ag'|'ar'|'am'|'aw'|'au'|'at'|'az'|'bs'|'bh'|'bd'|'bb'|'by'|'be'|'bz'|
5
+ * 'bj'|'bm'|'bt'|'bo'|'bq'|'ba'|'bw'|'br'|'vg'|'bn'|'bg'|'bf'|'bi'|'cv'|'kh'|'cm'|'ca'|'ky'|'cf'|'td'|'cl'|'cn'|'cx'|
6
+ * 'cc'|'co'|'km'|'cg'|'ck'|'cr'|'ci'|'hr'|'cu'|'cw'|'cy'|'cz'|'cd'|'dk'|'dj'|'dm'|'do'|'ec'|'eg'|'sv'|'gq'|'er'|'ee'|
7
+ * 'sz'|'et'|'fk'|'fo'|'fj'|'fi'|'fr'|'gf'|'pf'|'tf'|'ga'|'gm'|'ge'|'de'|'gh'|'gi'|'gr'|'gl'|'gd'|'gp'|'gu'|'gt'|'gg'|
8
+ * 'gn'|'gw'|'gy'|'ht'|'hm'|'hn'|'hk'|'hu'|'is'|'in'|'id'|'ir'|'iq'|'ie'|'im'|'il'|'it'|'jm'|'jp'|'je'|'jo'|'kz'|'ke'|
9
+ * 'ki'|'kw'|'kg'|'la'|'lv'|'lb'|'ls'|'lr'|'ly'|'li'|'lt'|'lu'|'mo'|'mg'|'mw'|'my'|'mv'|'ml'|'mt'|'mh'|'mq'|'mr'|'mu'|
10
+ * 'yt'|'mx'|'fm'|'md'|'mc'|'mn'|'me'|'ms'|'ma'|'mz'|'mm'|'na'|'nr'|'np'|'nl'|'nc'|'nz'|'ni'|'ne'|'ng'|'nu'|'nf'|'kp'|
11
+ * 'mk'|'mp'|'no'|'om'|'pk'|'pw'|'pa'|'pg'|'py'|'pe'|'ph'|'pn'|'pl'|'pt'|'pr'|'qa'|'re'|'ro'|'ru'|'rw'|'bl'|'sh'|'kn'|
12
+ * 'lc'|'mf'|'pm'|'vc'|'ws'|'sm'|'st'|'sa'|'sn'|'rs'|'sc'|'sl'|'sg'|'sx'|'sk'|'si'|'sb'|'so'|'za'|'gs'|'kr'|'ss'|'es'|
13
+ * 'lk'|'sd'|'sr'|'sj'|'se'|'ch'|'sy'|'tw'|'tj'|'tz'|'th'|'tl'|'tg'|'tk'|'to'|'tt'|'tn'|'tr'|'tm'|'tc'|'tv'|'ug'|'ua'|
14
+ * 'ae'|'gb'|'us'|'um'|'uy'|'vi'|'uz'|'vu'|'va'|'ve'|'vn'|'wf'|'eh'|'ye'|'zm'|'zw'} Country
12
15
  * @typedef {'nzd'|'aud'|'usd'|'gbp'|'btc'|'aed'|'ars'|'bdt'|'bhd'|'brl'|'cad'|'chf'|'clp'|'cny'|'cop'|'czk'|'dkk'|'egp'|'eur'|
13
16
  * 'hkd'|'huf'|'idr'|'ils'|'inr'|'jod'|'jpy'|'kes'|'krw'|'kwd'|'lkr'|'mad'|'mxn'|'myr'|'ngn'|'nok'|'omr'|'pen'|'php'|'pkr'|
14
17
  * 'pln'|'qar'|'ron'|'rub'|'sar'|'sek'|'sgd'|'thb'|'try'|'twd'|'uah'|'vnd'|'zar'} Currency
@@ -73,13 +76,18 @@ export const currencies = {
73
76
  /** @type {{ [key in Country]: { name: string, flag: string } }} */
74
77
  export const countries = {
75
78
  af: { name: 'Afghanistan', flag: '🇦🇫' },
79
+ ax: { name: 'Aland Islands', flag: '🇦🇽' },
76
80
  al: { name: 'Albania', flag: '🇦🇱' },
77
81
  dz: { name: 'Algeria', flag: '🇩🇿' },
82
+ as: { name: 'American Samoa', flag: '🇦🇸' },
78
83
  ad: { name: 'Andorra', flag: '🇦🇩' },
79
84
  ao: { name: 'Angola', flag: '🇦🇴' },
85
+ ai: { name: 'Anguilla', flag: '🇦🇮' },
86
+ aq: { name: 'Antarctica', flag: '🇦🇶' },
80
87
  ag: { name: 'Antigua and Barbuda', flag: '🇦🇬' },
81
88
  ar: { name: 'Argentina', flag: '🇦🇷' },
82
89
  am: { name: 'Armenia', flag: '🇦🇲' },
90
+ aw: { name: 'Aruba', flag: '🇦🇼' },
83
91
  au: { name: 'Australia', flag: '🇦🇺' },
84
92
  at: { name: 'Austria', flag: '🇦🇹' },
85
93
  az: { name: 'Azerbaijan', flag: '🇦🇿' },
@@ -91,11 +99,14 @@ export const countries = {
91
99
  be: { name: 'Belgium', flag: '🇧🇪' },
92
100
  bz: { name: 'Belize', flag: '🇧🇿' },
93
101
  bj: { name: 'Benin', flag: '🇧🇯' },
102
+ bm: { name: 'Bermuda', flag: '🇧🇲' },
94
103
  bt: { name: 'Bhutan', flag: '🇧🇹' },
95
104
  bo: { name: 'Bolivia', flag: '🇧🇴' },
105
+ bq: { name: 'Bonaire, Sint Eustatius and Saba', flag: '🇧🇶' },
96
106
  ba: { name: 'Bosnia and Herzegovina', flag: '🇧🇦' },
97
107
  bw: { name: 'Botswana', flag: '🇧🇼' },
98
108
  br: { name: 'Brazil', flag: '🇧🇷' },
109
+ vg: { name: 'British Virgin Islands', flag: '🇻🇬' },
99
110
  bn: { name: 'Brunei', flag: '🇧🇳' },
100
111
  bg: { name: 'Bulgaria', flag: '🇧🇬' },
101
112
  bf: { name: 'Burkina Faso', flag: '🇧🇫' },
@@ -104,16 +115,22 @@ export const countries = {
104
115
  kh: { name: 'Cambodia', flag: '🇰🇭' },
105
116
  cm: { name: 'Cameroon', flag: '🇨🇲' },
106
117
  ca: { name: 'Canada', flag: '🇨🇦' },
118
+ ky: { name: 'Cayman Islands', flag: '🇰🇾' },
107
119
  cf: { name: 'Central African Republic', flag: '🇨🇫' },
108
120
  td: { name: 'Chad', flag: '🇹🇩' },
109
121
  cl: { name: 'Chile', flag: '🇨🇱' },
110
122
  cn: { name: 'China', flag: '🇨🇳' },
123
+ cx: { name: 'Christmas Island', flag: '🇨🇽' },
124
+ cc: { name: 'Cocos (Keeling) Islands', flag: '🇨🇨' },
111
125
  co: { name: 'Colombia', flag: '🇨🇴' },
112
126
  km: { name: 'Comoros', flag: '🇰🇲' },
113
127
  cg: { name: 'Congo (Congo-Brazzaville)', flag: '🇨🇬' },
128
+ ck: { name: 'Cook Islands', flag: '🇨🇰' },
114
129
  cr: { name: 'Costa Rica', flag: '🇨🇷' },
130
+ ci: { name: "Cote d'Ivoire", flag: '🇨🇮' },
115
131
  hr: { name: 'Croatia', flag: '🇭🇷' },
116
132
  cu: { name: 'Cuba', flag: '🇨🇺' },
133
+ cw: { name: 'Curacao', flag: '🇨🇼' },
117
134
  cy: { name: 'Cyprus', flag: '🇨🇾' },
118
135
  cz: { name: 'Czechia', flag: '🇨🇿' },
119
136
  cd: { name: 'Democratic Republic of the Congo', flag: '🇨🇩' },
@@ -129,22 +146,34 @@ export const countries = {
129
146
  ee: { name: 'Estonia', flag: '🇪🇪' },
130
147
  sz: { name: 'Eswatini', flag: '🇸🇿' },
131
148
  et: { name: 'Ethiopia', flag: '🇪🇹' },
149
+ fk: { name: 'Falkland Islands', flag: '🇫🇰' },
150
+ fo: { name: 'Faroe Islands', flag: '🇫🇴' },
132
151
  fj: { name: 'Fiji', flag: '🇫🇯' },
133
152
  fi: { name: 'Finland', flag: '🇫🇮' },
134
153
  fr: { name: 'France', flag: '🇫🇷' },
154
+ gf: { name: 'French Guiana', flag: '🇬🇫' },
155
+ pf: { name: 'French Polynesia', flag: '🇵🇫' },
156
+ tf: { name: 'French Southern Territories', flag: '🇹🇫' },
135
157
  ga: { name: 'Gabon', flag: '🇬🇦' },
136
158
  gm: { name: 'Gambia', flag: '🇬🇲' },
137
159
  ge: { name: 'Georgia', flag: '🇬🇪' },
138
160
  de: { name: 'Germany', flag: '🇩🇪' },
139
161
  gh: { name: 'Ghana', flag: '🇬🇭' },
162
+ gi: { name: 'Gibraltar', flag: '🇬🇮' },
140
163
  gr: { name: 'Greece', flag: '🇬🇷' },
164
+ gl: { name: 'Greenland', flag: '🇬🇱' },
141
165
  gd: { name: 'Grenada', flag: '🇬🇩' },
166
+ gp: { name: 'Guadeloupe', flag: '🇬🇵' },
167
+ gu: { name: 'Guam', flag: '🇬🇺' },
142
168
  gt: { name: 'Guatemala', flag: '🇬🇹' },
169
+ gg: { name: 'Guernsey', flag: '🇬🇬' },
143
170
  gn: { name: 'Guinea', flag: '🇬🇳' },
144
171
  gw: { name: 'Guinea-Bissau', flag: '🇬🇼' },
145
172
  gy: { name: 'Guyana', flag: '🇬🇾' },
146
173
  ht: { name: 'Haiti', flag: '🇭🇹' },
174
+ hm: { name: 'Heard Island and McDonald Islands', flag: '🇭🇲' },
147
175
  hn: { name: 'Honduras', flag: '🇭🇳' },
176
+ hk: { name: 'Hong Kong', flag: '🇭🇰' },
148
177
  hu: { name: 'Hungary', flag: '🇭🇺' },
149
178
  is: { name: 'Iceland', flag: '🇮🇸' },
150
179
  in: { name: 'India', flag: '🇮🇳' },
@@ -152,10 +181,12 @@ export const countries = {
152
181
  ir: { name: 'Iran', flag: '🇮🇷' },
153
182
  iq: { name: 'Iraq', flag: '🇮🇶' },
154
183
  ie: { name: 'Ireland', flag: '🇮🇪' },
184
+ im: { name: 'Isle of Man', flag: '🇮🇲' },
155
185
  il: { name: 'Israel', flag: '🇮🇱' },
156
186
  it: { name: 'Italy', flag: '🇮🇹' },
157
187
  jm: { name: 'Jamaica', flag: '🇯🇲' },
158
188
  jp: { name: 'Japan', flag: '🇯🇵' },
189
+ je: { name: 'Jersey', flag: '🇯🇪' },
159
190
  jo: { name: 'Jordan', flag: '🇯🇴' },
160
191
  kz: { name: 'Kazakhstan', flag: '🇰🇿' },
161
192
  ke: { name: 'Kenya', flag: '🇰🇪' },
@@ -171,6 +202,7 @@ export const countries = {
171
202
  li: { name: 'Liechtenstein', flag: '🇱🇮' },
172
203
  lt: { name: 'Lithuania', flag: '🇱🇹' },
173
204
  lu: { name: 'Luxembourg', flag: '🇱🇺' },
205
+ mo: { name: 'Macao', flag: '🇲🇴' },
174
206
  mg: { name: 'Madagascar', flag: '🇲🇬' },
175
207
  mw: { name: 'Malawi', flag: '🇲🇼' },
176
208
  my: { name: 'Malaysia', flag: '🇲🇾' },
@@ -178,14 +210,17 @@ export const countries = {
178
210
  ml: { name: 'Mali', flag: '🇲🇱' },
179
211
  mt: { name: 'Malta', flag: '🇲🇹' },
180
212
  mh: { name: 'Marshall Islands', flag: '🇲🇭' },
213
+ mq: { name: 'Martinique', flag: '🇲🇶' },
181
214
  mr: { name: 'Mauritania', flag: '🇲🇷' },
182
215
  mu: { name: 'Mauritius', flag: '🇲🇺' },
216
+ yt: { name: 'Mayotte', flag: '🇾🇹' },
183
217
  mx: { name: 'Mexico', flag: '🇲🇽' },
184
218
  fm: { name: 'Micronesia', flag: '🇫🇲' },
185
219
  md: { name: 'Moldova', flag: '🇲🇩' },
186
220
  mc: { name: 'Monaco', flag: '🇲🇨' },
187
221
  mn: { name: 'Mongolia', flag: '🇲🇳' },
188
222
  me: { name: 'Montenegro', flag: '🇲🇪' },
223
+ ms: { name: 'Montserrat', flag: '🇲🇸' },
189
224
  ma: { name: 'Morocco', flag: '🇲🇦' },
190
225
  mz: { name: 'Mozambique', flag: '🇲🇿' },
191
226
  mm: { name: 'Myanmar', flag: '🇲🇲' },
@@ -193,12 +228,16 @@ export const countries = {
193
228
  nr: { name: 'Nauru', flag: '🇳🇷' },
194
229
  np: { name: 'Nepal', flag: '🇳🇵' },
195
230
  nl: { name: 'Netherlands', flag: '🇳🇱' },
231
+ nc: { name: 'New Caledonia', flag: '🇳🇨' },
196
232
  nz: { name: 'New Zealand', flag: '🇳🇿' },
197
233
  ni: { name: 'Nicaragua', flag: '🇳🇮' },
198
234
  ne: { name: 'Niger', flag: '🇳🇪' },
199
235
  ng: { name: 'Nigeria', flag: '🇳🇬' },
236
+ nu: { name: 'Niue', flag: '🇳🇺' },
237
+ nf: { name: 'Norfolk Island', flag: '🇳🇫' },
200
238
  kp: { name: 'North Korea', flag: '🇰🇵' },
201
239
  mk: { name: 'North Macedonia', flag: '🇲🇰' },
240
+ mp: { name: 'Northern Mariana Islands', flag: '🇲🇵' },
202
241
  no: { name: 'Norway', flag: '🇳🇴' },
203
242
  om: { name: 'Oman', flag: '🇴🇲' },
204
243
  pk: { name: 'Pakistan', flag: '🇵🇰' },
@@ -208,14 +247,21 @@ export const countries = {
208
247
  py: { name: 'Paraguay', flag: '🇵🇾' },
209
248
  pe: { name: 'Peru', flag: '🇵🇪' },
210
249
  ph: { name: 'Philippines', flag: '🇵🇭' },
250
+ pn: { name: 'Pitcairn', flag: '🇵🇳' },
211
251
  pl: { name: 'Poland', flag: '🇵🇱' },
212
252
  pt: { name: 'Portugal', flag: '🇵🇹' },
253
+ pr: { name: 'Puerto Rico', flag: '🇵🇷' },
213
254
  qa: { name: 'Qatar', flag: '🇶🇦' },
255
+ re: { name: 'Reunion', flag: '🇷🇪' },
214
256
  ro: { name: 'Romania', flag: '🇷🇴' },
215
257
  ru: { name: 'Russia', flag: '🇷🇺' },
216
258
  rw: { name: 'Rwanda', flag: '🇷🇼' },
259
+ bl: { name: 'Saint Barthelemy', flag: '🇧🇱' },
260
+ sh: { name: 'Saint Helena', flag: '🇸🇭' },
217
261
  kn: { name: 'Saint Kitts and Nevis', flag: '🇰🇳' },
218
262
  lc: { name: 'Saint Lucia', flag: '🇱🇨' },
263
+ mf: { name: 'Saint Martin', flag: '🇲🇫' },
264
+ pm: { name: 'Saint Pierre and Miquelon', flag: '🇵🇲' },
219
265
  vc: { name: 'Saint Vincent and the Grenadines', flag: '🇻🇨' },
220
266
  ws: { name: 'Samoa', flag: '🇼🇸' },
221
267
  sm: { name: 'San Marino', flag: '🇸🇲' },
@@ -226,42 +272,52 @@ export const countries = {
226
272
  sc: { name: 'Seychelles', flag: '🇸🇨' },
227
273
  sl: { name: 'Sierra Leone', flag: '🇸🇱' },
228
274
  sg: { name: 'Singapore', flag: '🇸🇬' },
275
+ sx: { name: 'Sint Maarten', flag: '🇸🇽' },
229
276
  sk: { name: 'Slovakia', flag: '🇸🇰' },
230
277
  si: { name: 'Slovenia', flag: '🇸🇮' },
231
278
  sb: { name: 'Solomon Islands', flag: '🇸🇧' },
232
279
  so: { name: 'Somalia', flag: '🇸🇴' },
233
280
  za: { name: 'South Africa', flag: '🇿🇦' },
281
+ gs: { name: 'South Georgia and the South Sandwich Islands', flag: '🇬🇸' },
234
282
  kr: { name: 'South Korea', flag: '🇰🇷' },
235
283
  ss: { name: 'South Sudan', flag: '🇸🇸' },
236
284
  es: { name: 'Spain', flag: '🇪🇸' },
237
285
  lk: { name: 'Sri Lanka', flag: '🇱🇰' },
238
286
  sd: { name: 'Sudan', flag: '🇸🇩' },
239
287
  sr: { name: 'Suriname', flag: '🇸🇷' },
288
+ sj: { name: 'Svalbard and Jan Mayen', flag: '🇸🇯' },
240
289
  se: { name: 'Sweden', flag: '🇸🇪' },
241
290
  ch: { name: 'Switzerland', flag: '🇨🇭' },
242
291
  sy: { name: 'Syria', flag: '🇸🇾' },
292
+ tw: { name: 'Taiwan', flag: '🇹🇼' },
243
293
  tj: { name: 'Tajikistan', flag: '🇹🇯' },
244
294
  tz: { name: 'Tanzania', flag: '🇹🇿' },
245
295
  th: { name: 'Thailand', flag: '🇹🇭' },
246
296
  tl: { name: 'Timor-Leste', flag: '🇹🇱' },
247
297
  tg: { name: 'Togo', flag: '🇹🇬' },
298
+ tk: { name: 'Tokelau', flag: '🇹🇰' },
248
299
  to: { name: 'Tonga', flag: '🇹🇴' },
249
300
  tt: { name: 'Trinidad and Tobago', flag: '🇹🇹' },
250
301
  tn: { name: 'Tunisia', flag: '🇹🇳' },
251
302
  tr: { name: 'Turkey', flag: '🇹🇷' },
252
303
  tm: { name: 'Turkmenistan', flag: '🇹🇲' },
304
+ tc: { name: 'Turks and Caicos Islands', flag: '🇹🇨' },
253
305
  tv: { name: 'Tuvalu', flag: '🇹🇻' },
254
306
  ug: { name: 'Uganda', flag: '🇺🇬' },
255
307
  ua: { name: 'Ukraine', flag: '🇺🇦' },
256
308
  ae: { name: 'United Arab Emirates', flag: '🇦🇪' },
257
309
  gb: { name: 'United Kingdom', flag: '🇬🇧' },
258
310
  us: { name: 'United States', flag: '🇺🇸' },
311
+ um: { name: 'United States Minor Outlying Islands', flag: '🇺🇲' },
259
312
  uy: { name: 'Uruguay', flag: '🇺🇾' },
313
+ vi: { name: 'US Virgin Islands', flag: '🇻🇮' },
260
314
  uz: { name: 'Uzbekistan', flag: '🇺🇿' },
261
315
  vu: { name: 'Vanuatu', flag: '🇻🇺' },
262
316
  va: { name: 'Vatican City', flag: '🇻🇦' },
263
317
  ve: { name: 'Venezuela', flag: '🇻🇪' },
264
318
  vn: { name: 'Vietnam', flag: '🇻🇳' },
319
+ wf: { name: 'Wallis and Futuna', flag: '🇼🇫' },
320
+ eh: { name: 'Western Sahara', flag: '🇪🇭' },
265
321
  ye: { name: 'Yemen', flag: '🇾🇪' },
266
322
  zm: { name: 'Zambia', flag: '🇿🇲' },
267
323
  zw: { name: 'Zimbabwe', flag: '🇿🇼' },
@@ -1,12 +1,15 @@
1
1
  /**
2
- * @typedef {'af'|'al'|'dz'|'ad'|'ao'|'ag'|'ar'|'am'|'au'|'at'|'az'|'bs'|'bh'|'bd'|'bb'|'by'|'be'|'bz'|'bj'|'bt'|'bo'|'ba'|'bw'|'br'|
3
- * 'bn'|'bg'|'bf'|'bi'|'cv'|'kh'|'cm'|'ca'|'cf'|'td'|'cl'|'cn'|'co'|'km'|'cg'|'cr'|'hr'|'cu'|'cy'|'cz'|'cd'|'dk'|'dj'|'dm'|'do'|'ec'|
4
- * 'eg'|'sv'|'gq'|'er'|'ee'|'sz'|'et'|'fj'|'fi'|'fr'|'ga'|'gm'|'ge'|'de'|'gh'|'gr'|'gd'|'gt'|'gn'|'gw'|'gy'|'ht'|'hn'|'hu'|'is'|
5
- * 'in'|'id'|'ir'|'iq'|'ie'|'il'|'it'|'jm'|'jp'|'jo'|'kz'|'ke'|'ki'|'kw'|'kg'|'la'|'lv'|'lb'|'ls'|'lr'|'ly'|'li'|'lt'|'lu'|'mg'|
6
- * 'mw'|'my'|'mv'|'ml'|'mt'|'mh'|'mr'|'mu'|'mx'|'fm'|'md'|'mc'|'mn'|'me'|'ma'|'mz'|'mm'|'na'|'nr'|'np'|'nl'|'nz'|'ni'|'ne'|'ng'|
7
- * 'kp'|'mk'|'no'|'om'|'pk'|'pw'|'pa'|'pg'|'py'|'pe'|'ph'|'pl'|'pt'|'qa'|'ro'|'ru'|'rw'|'kn'|'lc'|'vc'|'ws'|'sm'|'st'|'sa'|'sn'|
8
- * 'rs'|'sc'|'sl'|'sg'|'sk'|'si'|'sb'|'so'|'za'|'kr'|'ss'|'es'|'lk'|'sd'|'sr'|'se'|'ch'|'sy'|'tj'|'tz'|'th'|'tl'|'tg'|'to'|'tt'|
9
- * 'tn'|'tr'|'tm'|'tv'|'ug'|'ua'|'ae'|'gb'|'us'|'uy'|'uz'|'vu'|'va'|'ve'|'vn'|'ye'|'zm'|'zw'} Country
2
+ * @typedef {'af'|'ax'|'al'|'dz'|'as'|'ad'|'ao'|'ai'|'aq'|'ag'|'ar'|'am'|'aw'|'au'|'at'|'az'|'bs'|'bh'|'bd'|'bb'|'by'|'be'|'bz'|
3
+ * 'bj'|'bm'|'bt'|'bo'|'bq'|'ba'|'bw'|'br'|'vg'|'bn'|'bg'|'bf'|'bi'|'cv'|'kh'|'cm'|'ca'|'ky'|'cf'|'td'|'cl'|'cn'|'cx'|
4
+ * 'cc'|'co'|'km'|'cg'|'ck'|'cr'|'ci'|'hr'|'cu'|'cw'|'cy'|'cz'|'cd'|'dk'|'dj'|'dm'|'do'|'ec'|'eg'|'sv'|'gq'|'er'|'ee'|
5
+ * 'sz'|'et'|'fk'|'fo'|'fj'|'fi'|'fr'|'gf'|'pf'|'tf'|'ga'|'gm'|'ge'|'de'|'gh'|'gi'|'gr'|'gl'|'gd'|'gp'|'gu'|'gt'|'gg'|
6
+ * 'gn'|'gw'|'gy'|'ht'|'hm'|'hn'|'hk'|'hu'|'is'|'in'|'id'|'ir'|'iq'|'ie'|'im'|'il'|'it'|'jm'|'jp'|'je'|'jo'|'kz'|'ke'|
7
+ * 'ki'|'kw'|'kg'|'la'|'lv'|'lb'|'ls'|'lr'|'ly'|'li'|'lt'|'lu'|'mo'|'mg'|'mw'|'my'|'mv'|'ml'|'mt'|'mh'|'mq'|'mr'|'mu'|
8
+ * 'yt'|'mx'|'fm'|'md'|'mc'|'mn'|'me'|'ms'|'ma'|'mz'|'mm'|'na'|'nr'|'np'|'nl'|'nc'|'nz'|'ni'|'ne'|'ng'|'nu'|'nf'|'kp'|
9
+ * 'mk'|'mp'|'no'|'om'|'pk'|'pw'|'pa'|'pg'|'py'|'pe'|'ph'|'pn'|'pl'|'pt'|'pr'|'qa'|'re'|'ro'|'ru'|'rw'|'bl'|'sh'|'kn'|
10
+ * 'lc'|'mf'|'pm'|'vc'|'ws'|'sm'|'st'|'sa'|'sn'|'rs'|'sc'|'sl'|'sg'|'sx'|'sk'|'si'|'sb'|'so'|'za'|'gs'|'kr'|'ss'|'es'|
11
+ * 'lk'|'sd'|'sr'|'sj'|'se'|'ch'|'sy'|'tw'|'tj'|'tz'|'th'|'tl'|'tg'|'tk'|'to'|'tt'|'tn'|'tr'|'tm'|'tc'|'tv'|'ug'|'ua'|
12
+ * 'ae'|'gb'|'us'|'um'|'uy'|'vi'|'uz'|'vu'|'va'|'ve'|'vn'|'wf'|'eh'|'ye'|'zm'|'zw'} Country
10
13
  * @typedef {'nzd'|'aud'|'usd'|'gbp'|'btc'|'aed'|'ars'|'bdt'|'bhd'|'brl'|'cad'|'chf'|'clp'|'cny'|'cop'|'czk'|'dkk'|'egp'|'eur'|
11
14
  * 'hkd'|'huf'|'idr'|'ils'|'inr'|'jod'|'jpy'|'kes'|'krw'|'kwd'|'lkr'|'mad'|'mxn'|'myr'|'ngn'|'nok'|'omr'|'pen'|'php'|'pkr'|
12
15
  * 'pln'|'qar'|'ron'|'rub'|'sar'|'sek'|'sgd'|'thb'|'try'|'twd'|'uah'|'vnd'|'zar'} Currency
@@ -33,6 +36,6 @@ export const currencyOptions: {
33
36
  label: string;
34
37
  flag: string;
35
38
  }[];
36
- export type Country = "af" | "al" | "dz" | "ad" | "ao" | "ag" | "ar" | "am" | "au" | "at" | "az" | "bs" | "bh" | "bd" | "bb" | "by" | "be" | "bz" | "bj" | "bt" | "bo" | "ba" | "bw" | "br" | "bn" | "bg" | "bf" | "bi" | "cv" | "kh" | "cm" | "ca" | "cf" | "td" | "cl" | "cn" | "co" | "km" | "cg" | "cr" | "hr" | "cu" | "cy" | "cz" | "cd" | "dk" | "dj" | "dm" | "do" | "ec" | "eg" | "sv" | "gq" | "er" | "ee" | "sz" | "et" | "fj" | "fi" | "fr" | "ga" | "gm" | "ge" | "de" | "gh" | "gr" | "gd" | "gt" | "gn" | "gw" | "gy" | "ht" | "hn" | "hu" | "is" | "in" | "id" | "ir" | "iq" | "ie" | "il" | "it" | "jm" | "jp" | "jo" | "kz" | "ke" | "ki" | "kw" | "kg" | "la" | "lv" | "lb" | "ls" | "lr" | "ly" | "li" | "lt" | "lu" | "mg" | "mw" | "my" | "mv" | "ml" | "mt" | "mh" | "mr" | "mu" | "mx" | "fm" | "md" | "mc" | "mn" | "me" | "ma" | "mz" | "mm" | "na" | "nr" | "np" | "nl" | "nz" | "ni" | "ne" | "ng" | "kp" | "mk" | "no" | "om" | "pk" | "pw" | "pa" | "pg" | "py" | "pe" | "ph" | "pl" | "pt" | "qa" | "ro" | "ru" | "rw" | "kn" | "lc" | "vc" | "ws" | "sm" | "st" | "sa" | "sn" | "rs" | "sc" | "sl" | "sg" | "sk" | "si" | "sb" | "so" | "za" | "kr" | "ss" | "es" | "lk" | "sd" | "sr" | "se" | "ch" | "sy" | "tj" | "tz" | "th" | "tl" | "tg" | "to" | "tt" | "tn" | "tr" | "tm" | "tv" | "ug" | "ua" | "ae" | "gb" | "us" | "uy" | "uz" | "vu" | "va" | "ve" | "vn" | "ye" | "zm" | "zw";
39
+ export type Country = "af" | "ax" | "al" | "dz" | "as" | "ad" | "ao" | "ai" | "aq" | "ag" | "ar" | "am" | "aw" | "au" | "at" | "az" | "bs" | "bh" | "bd" | "bb" | "by" | "be" | "bz" | "bj" | "bm" | "bt" | "bo" | "bq" | "ba" | "bw" | "br" | "vg" | "bn" | "bg" | "bf" | "bi" | "cv" | "kh" | "cm" | "ca" | "ky" | "cf" | "td" | "cl" | "cn" | "cx" | "cc" | "co" | "km" | "cg" | "ck" | "cr" | "ci" | "hr" | "cu" | "cw" | "cy" | "cz" | "cd" | "dk" | "dj" | "dm" | "do" | "ec" | "eg" | "sv" | "gq" | "er" | "ee" | "sz" | "et" | "fk" | "fo" | "fj" | "fi" | "fr" | "gf" | "pf" | "tf" | "ga" | "gm" | "ge" | "de" | "gh" | "gi" | "gr" | "gl" | "gd" | "gp" | "gu" | "gt" | "gg" | "gn" | "gw" | "gy" | "ht" | "hm" | "hn" | "hk" | "hu" | "is" | "in" | "id" | "ir" | "iq" | "ie" | "im" | "il" | "it" | "jm" | "jp" | "je" | "jo" | "kz" | "ke" | "ki" | "kw" | "kg" | "la" | "lv" | "lb" | "ls" | "lr" | "ly" | "li" | "lt" | "lu" | "mo" | "mg" | "mw" | "my" | "mv" | "ml" | "mt" | "mh" | "mq" | "mr" | "mu" | "yt" | "mx" | "fm" | "md" | "mc" | "mn" | "me" | "ms" | "ma" | "mz" | "mm" | "na" | "nr" | "np" | "nl" | "nc" | "nz" | "ni" | "ne" | "ng" | "nu" | "nf" | "kp" | "mk" | "mp" | "no" | "om" | "pk" | "pw" | "pa" | "pg" | "py" | "pe" | "ph" | "pn" | "pl" | "pt" | "pr" | "qa" | "re" | "ro" | "ru" | "rw" | "bl" | "sh" | "kn" | "lc" | "mf" | "pm" | "vc" | "ws" | "sm" | "st" | "sa" | "sn" | "rs" | "sc" | "sl" | "sg" | "sx" | "sk" | "si" | "sb" | "so" | "za" | "gs" | "kr" | "ss" | "es" | "lk" | "sd" | "sr" | "sj" | "se" | "ch" | "sy" | "tw" | "tj" | "tz" | "th" | "tl" | "tg" | "tk" | "to" | "tt" | "tn" | "tr" | "tm" | "tc" | "tv" | "ug" | "ua" | "ae" | "gb" | "us" | "um" | "uy" | "vi" | "uz" | "vu" | "va" | "ve" | "vn" | "wf" | "eh" | "ye" | "zm" | "zw";
37
40
  export type Currency = "nzd" | "aud" | "usd" | "gbp" | "btc" | "aed" | "ars" | "bdt" | "bhd" | "brl" | "cad" | "chf" | "clp" | "cny" | "cop" | "czk" | "dkk" | "egp" | "eur" | "hkd" | "huf" | "idr" | "ils" | "inr" | "jod" | "jpy" | "kes" | "krw" | "kwd" | "lkr" | "mad" | "mxn" | "myr" | "ngn" | "nok" | "omr" | "pen" | "php" | "pkr" | "pln" | "qar" | "ron" | "rub" | "sar" | "sek" | "sgd" | "thb" | "try" | "twd" | "uah" | "vnd" | "zar";
38
41
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../server/constants.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AAEH,oGAAoG;AACpG,yBADW,GAAG,GAAG,IAAI,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAE,CAsD/F;AAED,mEAAmE;AACnE,wBADW,GAAG,GAAG,IAAI,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAE,CAmM9D;AACD;WAA4F,OAAO;;;IAAuC;AAC1I;WAA8F,QAAQ;;;IACpF;sBA3QL,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GACnI,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GACpI,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAC/H,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAC/H,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAC/H,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAC/H,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAC/H,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI;uBAChF,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAC7H,KAAQ,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAC1H,KAAQ,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../server/constants.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AAEH,oGAAoG;AACpG,yBADW,GAAG,GAAG,IAAI,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAE,CAsD/F;AAED,mEAAmE;AACnE,wBADW,GAAG,GAAG,IAAI,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAE,CAwP9D;AACD;WAA4F,OAAO;;;IAAuC;AAC1I;WAA8F,QAAQ;;;IACpF;sBAnUL,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAC9H,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GACrH,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GACrH,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GACrH,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GACrH,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GACrH,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GACrH,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GACrH,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GACrH,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GACrH,IAAO,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI,GAAC,IAAI;uBACtE,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAC7H,KAAQ,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAC1H,KAAQ,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK,GAAC,KAAK"}