kitunga-web 0.1.97 → 0.1.99
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.
- package/dist/features/data-display/components/Badges/CheckBadge/CheckBadge.d.ts +16 -0
- package/dist/features/data-display/components/Badges/CheckBadge/CheckBadge.d.ts.map +1 -0
- package/dist/features/data-display/components/Badges/CheckBadge/CheckBadge.js +14 -0
- package/dist/features/data-display/components/Badges/CheckBadge/CheckBadge.js.map +1 -0
- package/dist/features/data-display/components/Badges/CheckBadge/CheckBadge.module.css +29 -0
- package/dist/features/data-display/components/Tabs/SubTabs/SubTabs.d.ts +19 -0
- package/dist/features/data-display/components/Tabs/SubTabs/SubTabs.d.ts.map +1 -0
- package/dist/features/data-display/components/Tabs/SubTabs/SubTabs.js +33 -0
- package/dist/features/data-display/components/Tabs/SubTabs/SubTabs.js.map +1 -0
- package/dist/features/data-display/components/Tabs/SubTabs/SubTabs.module.css +64 -0
- package/dist/features/data-display/components/Tabs/Tabs/Tabs.d.ts +25 -0
- package/dist/features/data-display/components/Tabs/Tabs/Tabs.d.ts.map +1 -0
- package/dist/features/data-display/components/Tabs/Tabs/Tabs.js +35 -0
- package/dist/features/data-display/components/Tabs/Tabs/Tabs.js.map +1 -0
- package/dist/features/data-display/components/Tabs/Tabs/Tabs.module.css +85 -0
- package/dist/features/inputs/components/Inputs/Checkbox.d.ts +17 -0
- package/dist/features/inputs/components/Inputs/Checkbox.d.ts.map +1 -0
- package/dist/features/inputs/components/Inputs/Checkbox.js +16 -0
- package/dist/features/inputs/components/Inputs/Checkbox.js.map +1 -0
- package/dist/features/inputs/components/Inputs/Checkbox.module.css +68 -0
- package/dist/features/inputs/components/Inputs/FormLabel.d.ts +12 -0
- package/dist/features/inputs/components/Inputs/FormLabel.d.ts.map +1 -0
- package/dist/features/inputs/components/Inputs/FormLabel.js +10 -0
- package/dist/features/inputs/components/Inputs/FormLabel.js.map +1 -0
- package/dist/features/inputs/components/Inputs/FormLabel.module.css +23 -0
- package/dist/features/inputs/components/Inputs/RadioButton.d.ts +13 -0
- package/dist/features/inputs/components/Inputs/RadioButton.d.ts.map +1 -0
- package/dist/features/inputs/components/Inputs/RadioButton.js +9 -0
- package/dist/features/inputs/components/Inputs/RadioButton.js.map +1 -0
- package/dist/features/inputs/components/Inputs/RadioButton.module.css +66 -0
- package/dist/features/inputs/components/Inputs/Toggle.d.ts +12 -0
- package/dist/features/inputs/components/Inputs/Toggle.d.ts.map +1 -0
- package/dist/features/inputs/components/Inputs/Toggle.js +8 -0
- package/dist/features/inputs/components/Inputs/Toggle.js.map +1 -0
- package/dist/features/inputs/components/Inputs/Toggle.module.css +62 -0
- package/dist/features/selects/components/PickerSelect/PickerSelect.d.ts +94 -0
- package/dist/features/selects/components/PickerSelect/PickerSelect.d.ts.map +1 -0
- package/dist/features/selects/components/PickerSelect/PickerSelect.js +137 -0
- package/dist/features/selects/components/PickerSelect/PickerSelect.js.map +1 -0
- package/dist/features/selects/components/PickerSelect/PickerSelect.module.css +228 -0
- package/dist/features/selects/components/PickerSelect/PickerSheet.d.ts +51 -0
- package/dist/features/selects/components/PickerSelect/PickerSheet.d.ts.map +1 -0
- package/dist/features/selects/components/PickerSelect/PickerSheet.js +65 -0
- package/dist/features/selects/components/PickerSelect/PickerSheet.js.map +1 -0
- package/dist/features/selects/components/PickerSelect/pickerOptions.d.ts +44 -0
- package/dist/features/selects/components/PickerSelect/pickerOptions.d.ts.map +1 -0
- package/dist/features/selects/components/PickerSelect/pickerOptions.js +85 -0
- package/dist/features/selects/components/PickerSelect/pickerOptions.js.map +1 -0
- package/dist/features/selects/components/Selects/CustomSelect.d.ts +5 -3
- package/dist/features/selects/components/Selects/CustomSelect.d.ts.map +1 -1
- package/dist/features/selects/components/Selects/CustomSelect.js +43 -34
- package/dist/features/selects/components/Selects/CustomSelect.js.map +1 -1
- package/dist/features/selects/components/Selects/CustomSelect.module.css +3 -0
- package/dist/shared/styles/tokens.css +11 -0
- package/dist/ui.d.ts +20 -0
- package/dist/ui.d.ts.map +1 -1
- package/dist/ui.js +10 -0
- package/dist/ui.js.map +1 -1
- package/package.json +4 -3
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import { ArrowLeft, X } from 'lucide-react';
|
|
5
|
+
import SearchInput from '../../../inputs/components/Inputs/SearchInput';
|
|
6
|
+
import SearchEmptyState from '../../../feedback/components/EmptyStates/SearchEmptyState/SearchEmptyState';
|
|
7
|
+
import { CheckBadge } from '../../../data-display/components/Badges/CheckBadge/CheckBadge';
|
|
8
|
+
import styles from './PickerSelect.module.css';
|
|
9
|
+
const normalize = (text) => text
|
|
10
|
+
.normalize('NFD')
|
|
11
|
+
.replace(/[\u0300-\u036f]/g, '')
|
|
12
|
+
.toLowerCase();
|
|
13
|
+
/**
|
|
14
|
+
* PickerSheet — o conteúdo da folha (header + pesquisa + lista
|
|
15
|
+
* agrupada), SEM overlay. É o que o PickerSelect renderiza dentro do
|
|
16
|
+
* seu próprio overlay — e o que um consumidor com popup manager
|
|
17
|
+
* próprio (ex.: o PopupManager do Masolo) monta dentro do seu `.modal`
|
|
18
|
+
* para obter a anatomia 500×600 / takeover / X→← do próprio sistema.
|
|
19
|
+
*/
|
|
20
|
+
const PickerSheet = ({ options, value, onSelect, onClose, title = 'Select', backIcon, onBack, backAriaLabel = 'Back', closeIcon, closeAriaLabel = 'Close', searchable = true, searchPlaceholder, searchSize = 'md', searchAutoFocus = false, searchEmptyProps, classNames, }) => {
|
|
21
|
+
var _a, _b, _c, _d, _e;
|
|
22
|
+
const [search, setSearch] = useState('');
|
|
23
|
+
const query = normalize(search.trim());
|
|
24
|
+
const visibleOptions = query
|
|
25
|
+
? options.filter((option) => {
|
|
26
|
+
var _a;
|
|
27
|
+
return normalize(option.label).includes(query) ||
|
|
28
|
+
normalize((_a = option.selectedLabel) !== null && _a !== void 0 ? _a : '').includes(query) ||
|
|
29
|
+
normalize(option.value).includes(query);
|
|
30
|
+
})
|
|
31
|
+
: options;
|
|
32
|
+
const renderRows = () => {
|
|
33
|
+
const rows = [];
|
|
34
|
+
let lastGroup;
|
|
35
|
+
visibleOptions.forEach((option) => {
|
|
36
|
+
var _a, _b;
|
|
37
|
+
if (option.group !== lastGroup) {
|
|
38
|
+
lastGroup = option.group;
|
|
39
|
+
if (option.group) {
|
|
40
|
+
rows.push(_jsx("div", { className: `${styles.groupHeader} ${(_a = classNames === null || classNames === void 0 ? void 0 : classNames.groupHeader) !== null && _a !== void 0 ? _a : ''}`, children: option.group }, `group-${option.group}`));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
const selected = value === option.value;
|
|
44
|
+
rows.push(_jsxs("div", { className: `${styles.option} ${selected ? styles.selected : ''} ${option.disabled ? styles.disabledOption : ''} ${(_b = classNames === null || classNames === void 0 ? void 0 : classNames.option) !== null && _b !== void 0 ? _b : ''}`, onClick: () => {
|
|
45
|
+
if (option.disabled)
|
|
46
|
+
return;
|
|
47
|
+
onSelect(option);
|
|
48
|
+
}, onKeyDown: (e) => {
|
|
49
|
+
if (option.disabled)
|
|
50
|
+
return;
|
|
51
|
+
if (e.key === 'Enter' || e.key === ' ') {
|
|
52
|
+
e.preventDefault();
|
|
53
|
+
onSelect(option);
|
|
54
|
+
}
|
|
55
|
+
}, role: "option", "aria-selected": selected, "aria-disabled": option.disabled ? true : undefined, tabIndex: option.disabled ? -1 : 0, children: [_jsxs("span", { className: styles.optionText, children: [option.icon && (_jsx("span", { className: styles.optionIcon, children: option.icon })), _jsx("span", { children: option.label })] }), selected && _jsx(CheckBadge, { checked: true, placement: "inline" })] }, option.value));
|
|
56
|
+
});
|
|
57
|
+
return rows;
|
|
58
|
+
};
|
|
59
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: `${styles.header} ${(_a = classNames === null || classNames === void 0 ? void 0 : classNames.header) !== null && _a !== void 0 ? _a : ''}`, children: [_jsx("button", { type: "button", className: `${styles.back} ${(_b = classNames === null || classNames === void 0 ? void 0 : classNames.backButton) !== null && _b !== void 0 ? _b : ''}`, onClick: onBack !== null && onBack !== void 0 ? onBack : onClose, "aria-label": backAriaLabel, children: backIcon !== null && backIcon !== void 0 ? backIcon : _jsx(ArrowLeft, { size: 24 }) }), _jsx("h2", { className: styles.title, children: title }), _jsx("button", { type: "button", className: `${styles.close} ${(_c = classNames === null || classNames === void 0 ? void 0 : classNames.closeButton) !== null && _c !== void 0 ? _c : ''}`, onClick: onClose, "aria-label": closeAriaLabel, children: closeIcon !== null && closeIcon !== void 0 ? closeIcon : _jsx(X, { size: 24 }) })] }), searchable && (_jsx("div", { className: `${styles.searchRow} ${(_d = classNames === null || classNames === void 0 ? void 0 : classNames.searchRow) !== null && _d !== void 0 ? _d : ''}`, children: _jsx(SearchInput, { value: search, onChange: setSearch, placeholder: searchPlaceholder !== null && searchPlaceholder !== void 0 ? searchPlaceholder : 'Pesquisar...', size: searchSize, autoFocus: searchAutoFocus, onKeyDown: (e) => {
|
|
60
|
+
if (e.key === 'Enter')
|
|
61
|
+
e.preventDefault();
|
|
62
|
+
} }) })), _jsxs("div", { className: `${styles.list} ${(_e = classNames === null || classNames === void 0 ? void 0 : classNames.list) !== null && _e !== void 0 ? _e : ''}`, role: "listbox", children: [renderRows(), visibleOptions.length === 0 && (_jsx(SearchEmptyState, { title: searchEmptyProps === null || searchEmptyProps === void 0 ? void 0 : searchEmptyProps.title, description: searchEmptyProps === null || searchEmptyProps === void 0 ? void 0 : searchEmptyProps.description, actionLabel: searchEmptyProps === null || searchEmptyProps === void 0 ? void 0 : searchEmptyProps.actionLabel, onAction: () => setSearch('') }))] })] }));
|
|
63
|
+
};
|
|
64
|
+
export default PickerSheet;
|
|
65
|
+
//# sourceMappingURL=PickerSheet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PickerSheet.js","sourceRoot":"","sources":["../../../../../src/features/selects/components/PickerSelect/PickerSheet.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface PickerOption {
|
|
3
|
+
value: string;
|
|
4
|
+
label: string;
|
|
5
|
+
/** Rótulo curto para o trigger fechado (ex.: nome do país sem o
|
|
6
|
+
* indicativo). Default: label. */
|
|
7
|
+
selectedLabel?: string;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
/** Ícone da opção (bandeira, avatar, glyph) — renderiza na linha
|
|
10
|
+
* da lista e, se a opção estiver seleccionada, também no trigger
|
|
11
|
+
* fechado. */
|
|
12
|
+
icon?: React.ReactNode;
|
|
13
|
+
/** Texto literal do cabeçalho de secção — opções com o mesmo group
|
|
14
|
+
* renderizam sob a mesma secção, na ordem dada (ex.: 'Sugeridos',
|
|
15
|
+
* 'A', 'B'). Sem group, a opção renderiza sem cabeçalho. */
|
|
16
|
+
group?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface CountryPickerOptionsParams {
|
|
19
|
+
/** Locale dos nomes e da ordenação alfabética (Intl.DisplayNames +
|
|
20
|
+
* localeCompare) — a língua activa do consumidor. */
|
|
21
|
+
displayLocale?: string;
|
|
22
|
+
/** Base dos SVGs de bandeira (default '/flags/4x3') — assets do app
|
|
23
|
+
* consumidor, nunca bundle nem emoji. */
|
|
24
|
+
flagBaseUrl?: string;
|
|
25
|
+
/** Bloco prioritário no topo — a ordem é do produto; estas opções
|
|
26
|
+
* entram no grupo `suggestedLabel` e o resto segue alfabético. */
|
|
27
|
+
priorityCodes?: readonly string[];
|
|
28
|
+
/** Texto do cabeçalho do grupo prioritário (i18n do consumidor). */
|
|
29
|
+
suggestedLabel?: string;
|
|
30
|
+
}
|
|
31
|
+
export declare const buildCountryPickerOptions: ({ displayLocale, flagBaseUrl, priorityCodes, suggestedLabel, }: CountryPickerOptionsParams) => PickerOption[];
|
|
32
|
+
export interface LanguagePickerOptionsParams {
|
|
33
|
+
/** Lista de locales servidos — a whitelist do consumidor. */
|
|
34
|
+
locales: readonly string[];
|
|
35
|
+
/** Nome da língua por locale — i18n do consumidor (a kitunga não
|
|
36
|
+
* conhece os namespaces dele). */
|
|
37
|
+
getLanguageLabel?: (locale: string) => string;
|
|
38
|
+
/** Locale de ordenação alfabética (default: a ordem dada). */
|
|
39
|
+
displayLocale?: string;
|
|
40
|
+
/** Ícone por linha — default o glyph Globe (língua ≠ país). */
|
|
41
|
+
languageIcon?: React.ReactNode;
|
|
42
|
+
}
|
|
43
|
+
export declare const buildLanguagePickerOptions: ({ locales, getLanguageLabel, displayLocale, languageIcon, }: LanguagePickerOptionsParams) => PickerOption[];
|
|
44
|
+
//# sourceMappingURL=pickerOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pickerOptions.d.ts","sourceRoot":"","sources":["../../../../../src/features/selects/components/PickerSelect/pickerOptions.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAKxC,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd;uCACmC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;mBAEe;IACf,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB;;iEAE6D;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAqCD,MAAM,WAAW,0BAA0B;IACzC;0DACsD;IACtD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;8CAC0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;uEACmE;IACnE,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,oEAAoE;IACpE,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAMD,eAAO,MAAM,yBAAyB,GAAI,gEAKvC,0BAA0B,KAAG,YAAY,EAmC3C,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC1C,6DAA6D;IAC7D,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B;uCACmC;IACnC,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9C,8DAA8D;IAC9D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAChC;AAED,eAAO,MAAM,0BAA0B,GAAI,6DAKxC,2BAA2B,KAAG,YAAY,EAS5C,CAAC"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// Opções prontas para o PickerSelect — kind='country' (todos os
|
|
3
|
+
// territórios da metadata do libphonenumber + Intl.DisplayNames +
|
|
4
|
+
// bandeiras do consumidor) e kind='language' (locales + labels do
|
|
5
|
+
// consumidor + glyph Globe — língua ≠ país, nunca bandeira).
|
|
6
|
+
// A lista de países é a metadata inteira — nunca allowlist manual
|
|
7
|
+
// (decisão 74 do Masolo); o bloco prioritário e a pele são do
|
|
8
|
+
// consumidor via props.
|
|
9
|
+
import { useState } from 'react';
|
|
10
|
+
import { Globe } from 'lucide-react';
|
|
11
|
+
import { getCountryConfig, getSupportedCountryCodes } from '../../../inputs/components/Inputs/PhoneInput/countries';
|
|
12
|
+
import styles from './PickerSelect.module.css';
|
|
13
|
+
const normalize = (text) => text.normalize('NFD').replace(/[\u0300-\u036f]/g, '');
|
|
14
|
+
// Letra do grupo alfabético — NFD para "África"→A, "É…"→E, "Å…"→A.
|
|
15
|
+
const firstLetter = (text) => (normalize(text).charAt(0) || '#').toUpperCase();
|
|
16
|
+
// Flag <img> — se o asset falhar (consumidor com flagBaseUrl parcial)
|
|
17
|
+
// cai para o ISO em texto dentro da mesma moldura circular; nunca
|
|
18
|
+
// imagem partida.
|
|
19
|
+
const FlagImg = ({ code, base }) => {
|
|
20
|
+
const [failed, setFailed] = useState(false);
|
|
21
|
+
if (failed)
|
|
22
|
+
return _jsx("span", { className: styles.flagFallback, children: code });
|
|
23
|
+
return (
|
|
24
|
+
// eslint-disable-next-line @next/next/no-img-element
|
|
25
|
+
_jsx("img", { src: `${base}/${code.toLowerCase()}.svg`, alt: "", loading: "lazy", draggable: false, onError: () => setFailed(true) }));
|
|
26
|
+
};
|
|
27
|
+
const regionNamesCache = new Map();
|
|
28
|
+
const regionNames = (locale) => {
|
|
29
|
+
let names = regionNamesCache.get(locale);
|
|
30
|
+
if (!names) {
|
|
31
|
+
names = new Intl.DisplayNames([locale], { type: 'region' });
|
|
32
|
+
regionNamesCache.set(locale, names);
|
|
33
|
+
}
|
|
34
|
+
return names;
|
|
35
|
+
};
|
|
36
|
+
// Uma lista por combinação de params — os nomes e a ordem mudam com a
|
|
37
|
+
// língua; cacheada porque são ~245 opções.
|
|
38
|
+
const countryCache = new Map();
|
|
39
|
+
export const buildCountryPickerOptions = ({ displayLocale = 'en', flagBaseUrl = '/flags/4x3', priorityCodes = [], suggestedLabel = 'Suggested', }) => {
|
|
40
|
+
const cacheKey = [displayLocale, flagBaseUrl, suggestedLabel, ...priorityCodes].join('|');
|
|
41
|
+
const cached = countryCache.get(cacheKey);
|
|
42
|
+
if (cached)
|
|
43
|
+
return cached;
|
|
44
|
+
const names = regionNames(displayLocale);
|
|
45
|
+
const all = getSupportedCountryCodes();
|
|
46
|
+
const priority = priorityCodes.filter((code) => all.includes(code));
|
|
47
|
+
const prioritySet = new Set(priority);
|
|
48
|
+
const rest = all
|
|
49
|
+
.filter((code) => !prioritySet.has(code))
|
|
50
|
+
.sort((a, b) => { var _a, _b; return ((_a = names.of(a)) !== null && _a !== void 0 ? _a : a).localeCompare((_b = names.of(b)) !== null && _b !== void 0 ? _b : b, displayLocale); });
|
|
51
|
+
const toOption = (code, group) => {
|
|
52
|
+
var _a, _b, _c;
|
|
53
|
+
const name = (_a = names.of(code)) !== null && _a !== void 0 ? _a : code;
|
|
54
|
+
const dialCode = (_c = (_b = getCountryConfig(code)) === null || _b === void 0 ? void 0 : _b.dialCode) !== null && _c !== void 0 ? _c : '';
|
|
55
|
+
return {
|
|
56
|
+
value: code,
|
|
57
|
+
// A linha mostra nome + indicativo (a pesquisa casa os dois);
|
|
58
|
+
// o trigger fechado mostra só o nome via selectedLabel.
|
|
59
|
+
label: dialCode ? `${name} (${dialCode})` : name,
|
|
60
|
+
selectedLabel: name,
|
|
61
|
+
icon: _jsx(FlagImg, { code: code, base: flagBaseUrl }),
|
|
62
|
+
group,
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
const result = [
|
|
66
|
+
...priority.map((code) => toOption(code, suggestedLabel)),
|
|
67
|
+
...rest.map((code) => { var _a; return toOption(code, firstLetter((_a = names.of(code)) !== null && _a !== void 0 ? _a : code)); }),
|
|
68
|
+
];
|
|
69
|
+
countryCache.set(cacheKey, result);
|
|
70
|
+
return result;
|
|
71
|
+
};
|
|
72
|
+
export const buildLanguagePickerOptions = ({ locales, getLanguageLabel, displayLocale, languageIcon, }) => {
|
|
73
|
+
const icon = languageIcon !== null && languageIcon !== void 0 ? languageIcon : _jsx(Globe, { size: 18 });
|
|
74
|
+
return locales
|
|
75
|
+
.map((locale) => {
|
|
76
|
+
var _a;
|
|
77
|
+
return ({
|
|
78
|
+
value: locale,
|
|
79
|
+
label: (_a = getLanguageLabel === null || getLanguageLabel === void 0 ? void 0 : getLanguageLabel(locale)) !== null && _a !== void 0 ? _a : locale,
|
|
80
|
+
});
|
|
81
|
+
})
|
|
82
|
+
.sort((a, b) => a.label.localeCompare(b.label, displayLocale))
|
|
83
|
+
.map((option) => (Object.assign(Object.assign({}, option), { icon, group: firstLetter(option.label) })));
|
|
84
|
+
};
|
|
85
|
+
//# sourceMappingURL=pickerOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pickerOptions.js","sourceRoot":"","sources":["../../../../../src/features/selects/components/PickerSelect/pickerOptions.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,8 @@ import React from 'react';
|
|
|
2
2
|
export interface Option {
|
|
3
3
|
value: string;
|
|
4
4
|
label: string;
|
|
5
|
+
/** Rótulo curto para o trigger fechado (ex.: nome do país sem o
|
|
6
|
+
* indicativo). Default: label. */
|
|
5
7
|
selectedLabel?: string;
|
|
6
8
|
disabled?: boolean;
|
|
7
9
|
/** Ícone da opção (bandeira, avatar, glyph) — renderiza na linha
|
|
@@ -14,7 +16,7 @@ export interface CustomSelectProps {
|
|
|
14
16
|
name?: string;
|
|
15
17
|
value: string;
|
|
16
18
|
onChange: (value: string) => void;
|
|
17
|
-
options
|
|
19
|
+
options?: Option[];
|
|
18
20
|
placeholder?: string;
|
|
19
21
|
required?: boolean;
|
|
20
22
|
className?: string;
|
|
@@ -27,12 +29,12 @@ export interface CustomSelectProps {
|
|
|
27
29
|
collapsible?: boolean;
|
|
28
30
|
dropdownMinWidth?: number;
|
|
29
31
|
dropdownAlign?: 'left' | 'right';
|
|
30
|
-
/** SearchInput fixo no topo do
|
|
32
|
+
/** SearchInput fixo no topo do painel — para listas longas
|
|
31
33
|
* (ex.: países). Filtro accent-insensitive por label, selectedLabel
|
|
32
34
|
* e value (o "244" encontra "Angola (+244)"). */
|
|
33
35
|
searchable?: boolean;
|
|
34
36
|
searchPlaceholder?: string;
|
|
35
|
-
/** Tamanho do SearchInput no
|
|
37
|
+
/** Tamanho do SearchInput no painel (default 'md'). */
|
|
36
38
|
searchSize?: 'sm' | 'md' | 'lg';
|
|
37
39
|
/** O empty quando o filtro não encontra nada — o mesmo
|
|
38
40
|
* SearchEmptyState das tabelas; actionLabel mostra o botão que
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomSelect.d.ts","sourceRoot":"","sources":["../../../../../src/features/selects/components/Selects/CustomSelect.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAM3D,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;0DAEsD;IACtD,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"CustomSelect.d.ts","sourceRoot":"","sources":["../../../../../src/features/selects/components/Selects/CustomSelect.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAM3D,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd;uCACmC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;0DAEsD;IACtD,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7B,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACjC;;sDAEkD;IAClD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAChC;;4BAEwB;IACxB,gBAAgB,CAAC,EAAE;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAQD,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAsM7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -5,34 +5,39 @@ import { ChevronDown, Check } from 'lucide-react';
|
|
|
5
5
|
import SearchInput from '../../../inputs/components/Inputs/SearchInput';
|
|
6
6
|
import SearchEmptyState from '../../../feedback/components/EmptyStates/SearchEmptyState/SearchEmptyState';
|
|
7
7
|
import styles from './CustomSelect.module.css';
|
|
8
|
-
const
|
|
9
|
-
|
|
8
|
+
const normalize = (text) => text
|
|
9
|
+
.normalize('NFD')
|
|
10
|
+
.replace(/[\u0300-\u036f]/g, '')
|
|
11
|
+
.toLowerCase();
|
|
12
|
+
const CustomSelect = ({ id, name, value, onChange, options = [], placeholder = 'Selecione uma opção', required = false, className = '', disabled = false, leftIcon, hasError = false, variant = 'default', size = 'md', valueBold = false, collapsible = false, dropdownMinWidth, dropdownAlign = 'right', searchable = false, searchPlaceholder, searchSize = 'md', searchEmptyProps, }) => {
|
|
13
|
+
var _a;
|
|
10
14
|
const [isOpen, setIsOpen] = useState(false);
|
|
11
15
|
const [search, setSearch] = useState('');
|
|
12
16
|
const selectRef = useRef(null);
|
|
13
17
|
const selectedOption = value && value.trim() !== ''
|
|
14
|
-
? options.find(option => option.value === value) || null
|
|
18
|
+
? options.find((option) => option.value === value) || null
|
|
15
19
|
: null;
|
|
16
|
-
//
|
|
17
|
-
// ganha ao leftIcon contextual (Globe, Funnel…).
|
|
18
|
-
const displayIcon = (_a = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.icon) !== null && _a !== void 0 ? _a : leftIcon;
|
|
19
|
-
const normalize = (text) => text.normalize('NFD').replace(/[\u0300-\u036f]/g, '').toLowerCase();
|
|
20
|
-
const query = normalize(search.trim());
|
|
21
|
-
const visibleOptions = query
|
|
22
|
-
? options.filter((option) => normalize(option.label).includes(query) ||
|
|
23
|
-
normalize(option.value).includes(query) ||
|
|
24
|
-
(option.selectedLabel ? normalize(option.selectedLabel).includes(query) : false))
|
|
25
|
-
: options;
|
|
26
|
-
// Ao fechar, a pesquisa morre — o próximo open recomeça limpo
|
|
27
|
-
// (o autofocus vem do próprio SearchInput ao montar).
|
|
20
|
+
// Click fora fecha o painel — mousedown para apanhar antes do blur.
|
|
28
21
|
useEffect(() => {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
22
|
+
const handleClickOutside = (event) => {
|
|
23
|
+
if (selectRef.current &&
|
|
24
|
+
!selectRef.current.contains(event.target)) {
|
|
25
|
+
setIsOpen(false);
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
document.addEventListener('mousedown', handleClickOutside);
|
|
29
|
+
return () => document.removeEventListener('mousedown', handleClickOutside);
|
|
30
|
+
}, []);
|
|
32
31
|
const toggleDropdown = () => {
|
|
33
32
|
if (disabled)
|
|
34
33
|
return;
|
|
35
|
-
|
|
34
|
+
if (isOpen) {
|
|
35
|
+
setIsOpen(false);
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
// A pesquisa morre com o painel — reabrir mostra a lista inteira.
|
|
39
|
+
setSearch('');
|
|
40
|
+
setIsOpen(true);
|
|
36
41
|
};
|
|
37
42
|
const handleSelect = (option) => {
|
|
38
43
|
if (option.disabled)
|
|
@@ -40,29 +45,33 @@ const CustomSelect = ({ id, name, value, onChange, options, placeholder = 'Selec
|
|
|
40
45
|
onChange(option.value);
|
|
41
46
|
setIsOpen(false);
|
|
42
47
|
};
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
48
|
+
const query = normalize(search.trim());
|
|
49
|
+
const visibleOptions = query
|
|
50
|
+
? options.filter((option) => {
|
|
51
|
+
var _a;
|
|
52
|
+
return normalize(option.label).includes(query) ||
|
|
53
|
+
normalize((_a = option.selectedLabel) !== null && _a !== void 0 ? _a : '').includes(query) ||
|
|
54
|
+
normalize(option.value).includes(query);
|
|
55
|
+
})
|
|
56
|
+
: options;
|
|
57
|
+
// O ícone da opção seleccionada ganha a moldura flex; sem ele o
|
|
58
|
+
// leftIcon contextual fica absoluto à esquerda (o comportamento
|
|
59
|
+
// histórico).
|
|
60
|
+
const optionIcon = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.icon;
|
|
61
|
+
const showLeftIcon = !optionIcon && !!leftIcon;
|
|
62
|
+
return (_jsxs("div", { ref: selectRef, className: `${styles.customSelect} ${styles[size]} ${variant === 'flat' ? styles.flat : ''} ${className} ${isOpen ? styles.open : ''} ${hasError ? styles.error : ''} ${collapsible ? styles.collapsible : ''}`, children: [name && (_jsx("input", { type: "hidden", id: id, name: name, value: value || '', required: required })), _jsxs("div", { className: `${styles.selectedValue} ${disabled ? styles.disabled : ''} ${showLeftIcon ? styles.hasLeftIcon : ''}`, onClick: toggleDropdown, role: "button", tabIndex: disabled ? -1 : 0, "aria-haspopup": "listbox", "aria-expanded": isOpen, onKeyDown: (e) => {
|
|
56
63
|
if (disabled)
|
|
57
64
|
return;
|
|
58
65
|
if (e.key === 'Enter' || e.key === ' ') {
|
|
59
66
|
e.preventDefault();
|
|
60
67
|
toggleDropdown();
|
|
61
68
|
}
|
|
62
|
-
}, children: [
|
|
69
|
+
}, children: [showLeftIcon && _jsx("span", { className: styles.leftIcon, children: leftIcon }), optionIcon && (_jsx("span", { className: styles.triggerIconFrame, children: optionIcon })), _jsx("span", { className: `${styles.valueText} ${!value ? styles.placeholder : ''} ${valueBold ? styles.valueBold : ''}`.trim(), children: selectedOption
|
|
70
|
+
? ((_a = selectedOption.selectedLabel) !== null && _a !== void 0 ? _a : selectedOption.label)
|
|
71
|
+
: placeholder }), _jsx(ChevronDown, { size: 16, className: `${styles.arrow} ${isOpen ? styles.rotate : ''}` })] }), isOpen && (_jsx("div", { className: `${styles.dropdown} ${dropdownAlign === 'left' ? styles.dropdownLeft : styles.dropdownRight}`, style: dropdownMinWidth ? { minWidth: `${dropdownMinWidth}px` } : undefined, children: _jsxs("div", { className: styles.dropdownPanel, children: [searchable && (_jsx("div", { className: styles.searchRow, onClick: (e) => e.stopPropagation(), children: _jsx(SearchInput, { value: search, onChange: setSearch, placeholder: searchPlaceholder !== null && searchPlaceholder !== void 0 ? searchPlaceholder : 'Pesquisar...', size: searchSize, onKeyDown: (e) => {
|
|
63
72
|
if (e.key === 'Enter')
|
|
64
73
|
e.preventDefault();
|
|
65
|
-
} }) })), _jsxs("div", { className: styles.dropdownList, role: "listbox", children: [visibleOptions.map((option) => (_jsxs("div", { className: `${styles.option} ${value === option.value ? styles.selected : ''} ${option.disabled ? styles.disabledOption : ''}`, onClick: () => handleSelect(option), onKeyDown: (e) => {
|
|
74
|
+
} }) })), _jsxs("div", { className: styles.dropdownList, role: "listbox", onClick: (e) => e.stopPropagation(), children: [visibleOptions.map((option) => (_jsxs("div", { className: `${styles.option} ${value === option.value ? styles.selected : ''} ${option.disabled ? styles.disabledOption : ''}`, onClick: () => handleSelect(option), onKeyDown: (e) => {
|
|
66
75
|
if (option.disabled)
|
|
67
76
|
return;
|
|
68
77
|
if (e.key === 'Enter' || e.key === ' ') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomSelect.js","sourceRoot":"","sources":["../../../../../src/features/selects/components/Selects/CustomSelect.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,WAAW,MAAM,+CAA+C,CAAC;AACxE,OAAO,gBAAgB,MAAM,4EAA4E,CAAC;AAC1G,OAAO,MAAM,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"CustomSelect.js","sourceRoot":"","sources":["../../../../../src/features/selects/components/Selects/CustomSelect.tsx"],"names":[],"mappings":"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"}
|
|
@@ -39,6 +39,17 @@
|
|
|
39
39
|
--bg-interactive: var(--color-primary);
|
|
40
40
|
--bg-interactive-hover: var(--color-primary-dark);
|
|
41
41
|
--bg-interactive-active: var(--color-primary);
|
|
42
|
+
/* Fundo do item seleccionado (listas, pickers) e da selecção leve —
|
|
43
|
+
a versão suave usa-se onde o texto fica legível por cima. */
|
|
44
|
+
--bg-item-selected: var(--color-primary-light);
|
|
45
|
+
--bg-item-selected-hover: var(--bg-interactive);
|
|
46
|
+
--selection-bg: rgba(36, 90, 223, 0.12);
|
|
47
|
+
--selection-text: var(--color-primary-light);
|
|
48
|
+
|
|
49
|
+
/* Gap ENTRE itens de lista — aplica-se via `~` entre irmãos para
|
|
50
|
+
que o primeiro filho nunca leve espaço; impede que cores de
|
|
51
|
+
hover/selecção se colem entre linhas adjacentes. */
|
|
52
|
+
--entity-row-gap: 2px;
|
|
42
53
|
|
|
43
54
|
/* Texto */
|
|
44
55
|
--text-primary: var(--color-gray-900);
|
package/dist/ui.d.ts
CHANGED
|
@@ -21,6 +21,26 @@ export { default as ImageUpload } from './features/uploads/components/ImageUploa
|
|
|
21
21
|
export { default as VideoUpload } from './features/uploads/components/VideoUpload/VideoUpload';
|
|
22
22
|
export { default as CustomSelect } from './features/selects/components/Selects/CustomSelect';
|
|
23
23
|
export type { CustomSelectProps, Option } from './features/selects/components/Selects/CustomSelect';
|
|
24
|
+
export { default as PickerSelect } from './features/selects/components/PickerSelect/PickerSelect';
|
|
25
|
+
export type { PickerSelectProps, PickerSelectClassNames } from './features/selects/components/PickerSelect/PickerSelect';
|
|
26
|
+
export { default as PickerSheet } from './features/selects/components/PickerSelect/PickerSheet';
|
|
27
|
+
export type { PickerSheetProps, PickerSheetClassNames } from './features/selects/components/PickerSelect/PickerSheet';
|
|
28
|
+
export type { PickerOption } from './features/selects/components/PickerSelect/pickerOptions';
|
|
29
|
+
export { buildCountryPickerOptions, buildLanguagePickerOptions } from './features/selects/components/PickerSelect/pickerOptions';
|
|
30
|
+
export { Toggle } from './features/inputs/components/Inputs/Toggle';
|
|
31
|
+
export type { ToggleProps } from './features/inputs/components/Inputs/Toggle';
|
|
32
|
+
export { RadioButton } from './features/inputs/components/Inputs/RadioButton';
|
|
33
|
+
export type { RadioButtonProps } from './features/inputs/components/Inputs/RadioButton';
|
|
34
|
+
export { Checkbox } from './features/inputs/components/Inputs/Checkbox';
|
|
35
|
+
export type { CheckboxProps } from './features/inputs/components/Inputs/Checkbox';
|
|
36
|
+
export { default as FormLabel } from './features/inputs/components/Inputs/FormLabel';
|
|
37
|
+
export type { FormLabelProps } from './features/inputs/components/Inputs/FormLabel';
|
|
38
|
+
export { CheckBadge } from './features/data-display/components/Badges/CheckBadge/CheckBadge';
|
|
39
|
+
export type { CheckBadgeProps } from './features/data-display/components/Badges/CheckBadge/CheckBadge';
|
|
40
|
+
export { default as Tabs } from './features/data-display/components/Tabs/Tabs/Tabs';
|
|
41
|
+
export type { TabsItem, TabsProps } from './features/data-display/components/Tabs/Tabs/Tabs';
|
|
42
|
+
export { default as SubTabs } from './features/data-display/components/Tabs/SubTabs/SubTabs';
|
|
43
|
+
export type { SubTabItem, SubTabsProps } from './features/data-display/components/Tabs/SubTabs/SubTabs';
|
|
24
44
|
export { default as AppLoading } from './features/feedback/components/Loading/AppLoading';
|
|
25
45
|
export { default as DropdownMenu } from './features/overlays/components/dropdowns/DropdownMenu';
|
|
26
46
|
export type { DropdownMenuItem, DropdownMenuProps } from './features/overlays/components/dropdowns/DropdownMenu';
|
package/dist/ui.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"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"}
|
package/dist/ui.js
CHANGED
|
@@ -11,6 +11,16 @@ export { default as TaxIdInput } from './features/inputs/components/Inputs/TaxId
|
|
|
11
11
|
export { default as ImageUpload } from './features/uploads/components/ImageUpload/ImageUpload';
|
|
12
12
|
export { default as VideoUpload } from './features/uploads/components/VideoUpload/VideoUpload';
|
|
13
13
|
export { default as CustomSelect } from './features/selects/components/Selects/CustomSelect';
|
|
14
|
+
export { default as PickerSelect } from './features/selects/components/PickerSelect/PickerSelect';
|
|
15
|
+
export { default as PickerSheet } from './features/selects/components/PickerSelect/PickerSheet';
|
|
16
|
+
export { buildCountryPickerOptions, buildLanguagePickerOptions } from './features/selects/components/PickerSelect/pickerOptions';
|
|
17
|
+
export { Toggle } from './features/inputs/components/Inputs/Toggle';
|
|
18
|
+
export { RadioButton } from './features/inputs/components/Inputs/RadioButton';
|
|
19
|
+
export { Checkbox } from './features/inputs/components/Inputs/Checkbox';
|
|
20
|
+
export { default as FormLabel } from './features/inputs/components/Inputs/FormLabel';
|
|
21
|
+
export { CheckBadge } from './features/data-display/components/Badges/CheckBadge/CheckBadge';
|
|
22
|
+
export { default as Tabs } from './features/data-display/components/Tabs/Tabs/Tabs';
|
|
23
|
+
export { default as SubTabs } from './features/data-display/components/Tabs/SubTabs/SubTabs';
|
|
14
24
|
export { default as AppLoading } from './features/feedback/components/Loading/AppLoading';
|
|
15
25
|
export { default as DropdownMenu } from './features/overlays/components/dropdowns/DropdownMenu';
|
|
16
26
|
export { default as ComprehensiveDeleteModal } from './features/overlays/components/DeleteModal/ComprehensiveDeleteModal';
|
package/dist/ui.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAE9E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAErF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mDAAmD,CAAC;AAE7F,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAEzF,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAE3F,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAEzF,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAErF,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,2DAA2D,CAAC;AAElG,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,0DAA0D,CAAC;AACrI,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,2DAA2D,CAAC;AAElG,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,uDAAuD,CAAC;AAC/F,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,uDAAuD,CAAC;AAC/F,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oDAAoD,CAAC;AAE7F,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,uDAAuD,CAAC;AAEhG,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,qEAAqE,CAAC;AAQ1H,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,8EAA8E,CAAC;AAKjI,OAAO,EAAE,YAAY,EAAE,MAAM,yDAAyD,CAAC;AAEvF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sEAAsE,CAAC;AAErH,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sEAAsE,CAAC;AAErH,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,qDAAqD,CAAC;AAE7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,4DAA4D,CAAC;AAChG,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,kEAAkE,CAAC;AAEvH,OAAO,EAAE,UAAU,EAAE,MAAM,wDAAwD,CAAC;AAEpF,OAAO,EAAE,UAAU,EAAE,MAAM,wDAAwD,CAAC;AAEpF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAEjG,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,kDAAkD,CAAC;AAEtF,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,2DAA2D,CAAC;AAEhG,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAExF,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,oDAAoD,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,8EAA8E,CAAC;AAC3H,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,gDAAgD,CAAC;AAElF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,yDAAyD,CAAC;AAEpG,OAAO,EAAE,kBAAkB,EAAE,MAAM,sEAAsE,CAAC;AAS1G,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,4EAA4E,CAAC;AACtH,OAAO,EAAE,mBAAmB,EAAE,MAAM,kFAAkF,CAAC;AACvH,OAAO,EAAE,aAAa,EAAE,MAAM,4EAA4E,CAAC;AAC3G,OAAO,EAAE,oBAAoB,EAAE,MAAM,+EAA+E,CAAC"}
|
|
1
|
+
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAE9E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAErF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mDAAmD,CAAC;AAE7F,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAEzF,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAE3F,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAEzF,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAErF,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,2DAA2D,CAAC;AAElG,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,0DAA0D,CAAC;AACrI,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,2DAA2D,CAAC;AAElG,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,uDAAuD,CAAC;AAC/F,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,uDAAuD,CAAC;AAC/F,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oDAAoD,CAAC;AAE7F,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,yDAAyD,CAAC;AAElG,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,wDAAwD,CAAC;AAGhG,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,0DAA0D,CAAC;AACjI,OAAO,EAAE,MAAM,EAAE,MAAM,4CAA4C,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAE9E,OAAO,EAAE,QAAQ,EAAE,MAAM,8CAA8C,CAAC;AAExE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAErF,OAAO,EAAE,UAAU,EAAE,MAAM,iEAAiE,CAAC;AAE7F,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,mDAAmD,CAAC;AAEpF,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,yDAAyD,CAAC;AAE7F,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,uDAAuD,CAAC;AAEhG,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,qEAAqE,CAAC;AAQ1H,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,8EAA8E,CAAC;AAKjI,OAAO,EAAE,YAAY,EAAE,MAAM,yDAAyD,CAAC;AAEvF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sEAAsE,CAAC;AAErH,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sEAAsE,CAAC;AAErH,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,qDAAqD,CAAC;AAE7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,4DAA4D,CAAC;AAChG,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,kEAAkE,CAAC;AAEvH,OAAO,EAAE,UAAU,EAAE,MAAM,wDAAwD,CAAC;AAEpF,OAAO,EAAE,UAAU,EAAE,MAAM,wDAAwD,CAAC;AAEpF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAEjG,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,kDAAkD,CAAC;AAEtF,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,2DAA2D,CAAC;AAEhG,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAExF,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,oDAAoD,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,8EAA8E,CAAC;AAC3H,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,gDAAgD,CAAC;AAElF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,yDAAyD,CAAC;AAEpG,OAAO,EAAE,kBAAkB,EAAE,MAAM,sEAAsE,CAAC;AAS1G,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,4EAA4E,CAAC;AACtH,OAAO,EAAE,mBAAmB,EAAE,MAAM,kFAAkF,CAAC;AACvH,OAAO,EAAE,aAAa,EAAE,MAAM,4EAA4E,CAAC;AAC3G,OAAO,EAAE,oBAAoB,EAAE,MAAM,+EAA+E,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "kitunga-web",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.99",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
@@ -63,6 +63,7 @@
|
|
|
63
63
|
"babel-plugin-react-compiler": "1.0.0",
|
|
64
64
|
"eslint": "^9",
|
|
65
65
|
"eslint-config-next": "16.1.3",
|
|
66
|
+
"flag-icons": "^7.6.0",
|
|
66
67
|
"typescript": "^5"
|
|
67
68
|
},
|
|
68
69
|
"peerDependencies": {
|
|
@@ -71,9 +72,9 @@
|
|
|
71
72
|
"react-dom": ">=18"
|
|
72
73
|
},
|
|
73
74
|
"scripts": {
|
|
74
|
-
"dev": "dotenv -e .env.local next dev",
|
|
75
|
+
"dev": "node scripts/copy-flags.mjs && dotenv -e .env.local next dev",
|
|
75
76
|
"start": "dotenv -e .env.local next start",
|
|
76
|
-
"build": "next build",
|
|
77
|
+
"build": "node scripts/copy-flags.mjs && next build",
|
|
77
78
|
"build:lib": "node ./scripts/build-library.mjs",
|
|
78
79
|
"publish:lib": "pnpm publish --no-git-checks",
|
|
79
80
|
"lint": "eslint"
|