@scania/tegel 1.17.0-local-assets-beta.3 → 1.17.0-local-assets-beta.5

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.
@@ -0,0 +1,118 @@
1
+ #!/usr/bin/env node
2
+ import fs from 'fs';
3
+ import path from 'path';
4
+ import { fileURLToPath } from 'url';
5
+
6
+ const currentFilePath = fileURLToPath(import.meta.url);
7
+ const currentDirPath = path.dirname(currentFilePath);
8
+
9
+ // Configuration options
10
+ const config = {
11
+ defaultTargetDir: 'public/assets',
12
+ dryRun: false,
13
+ };
14
+
15
+ // Get custom path from command line argument, if provided
16
+ const targetDir = path.resolve(process.cwd(), process.argv[2] || config.defaultTargetDir);
17
+
18
+ // Determine if we're running from the installed package or from the monorepo
19
+ const isInstalledPackage = currentDirPath.includes('node_modules');
20
+
21
+ // Define the source directories
22
+ const sourceDirs = {
23
+ fonts: isInstalledPackage
24
+ ? path.join(currentDirPath, '..', 'dist', 'tegel', 'assets', 'fonts')
25
+ : path.join(currentDirPath, '..', '..', '..', 'assets', 'fonts'),
26
+ logos: isInstalledPackage
27
+ ? path.join(currentDirPath, '..', 'dist', 'tegel', 'assets', 'logos')
28
+ : path.join(currentDirPath, '..', '..', '..', 'assets', 'logos')
29
+ };
30
+
31
+ function copyFonts(sourceDir, targetDir) {
32
+ // Create target directory if it doesn't exist
33
+ if (!config.dryRun) {
34
+ fs.mkdirSync(targetDir, { recursive: true });
35
+ }
36
+
37
+ try {
38
+ const files = fs.readdirSync(sourceDir);
39
+
40
+ files.forEach(file => {
41
+ const srcPath = path.join(sourceDir, file);
42
+ const destPath = path.join(targetDir, file);
43
+
44
+ // Skip if not a file
45
+ if (!fs.statSync(srcPath).isFile()) return;
46
+
47
+ if (config.dryRun) {
48
+ console.log(`Would copy: ${srcPath} to ${destPath}`);
49
+ } else {
50
+ fs.copyFileSync(srcPath, destPath);
51
+ console.log(`Copied: ${destPath}`);
52
+ }
53
+ });
54
+ } catch (error) {
55
+ console.error(`Error copying fonts from ${sourceDir}:`, error);
56
+ }
57
+ }
58
+
59
+ function copyLogos(sourceDir, targetDir) {
60
+ const logoTargetDir = path.join(targetDir, 'logos');
61
+
62
+ if (!config.dryRun) {
63
+ fs.mkdirSync(logoTargetDir, { recursive: true });
64
+ }
65
+
66
+ // Copy only the local fallback logos
67
+ const fallbackLogos = [
68
+ 'scania-wordmark-white.svg',
69
+ 'scania-symbol.svg',
70
+ 'scania-symbol.png'
71
+ ];
72
+
73
+ for (const logo of fallbackLogos) {
74
+ const srcPath = path.join(sourceDir, logo);
75
+ const destPath = path.join(logoTargetDir, logo);
76
+
77
+ if (config.dryRun) {
78
+ console.log(`Would copy: ${srcPath} to ${destPath}`);
79
+ } else if (fs.existsSync(srcPath)) {
80
+ fs.copyFileSync(srcPath, destPath);
81
+ console.log(`Copied: ${destPath}`);
82
+ } else {
83
+ console.warn(`Warning: Logo file not found: ${srcPath}`);
84
+ }
85
+ }
86
+ }
87
+
88
+ console.log('Asset copying script started');
89
+
90
+ // Copy fonts
91
+ if (!fs.existsSync(sourceDirs.fonts)) {
92
+ console.error(`Error: Fonts directory does not exist: ${sourceDirs.fonts}`);
93
+ } else {
94
+ ['cyrillic', 'latin'].forEach(subdir => {
95
+ const subSourceDir = path.join(sourceDirs.fonts, subdir);
96
+ const subTargetDir = path.join(targetDir, 'fonts', subdir);
97
+
98
+ if (fs.existsSync(subSourceDir)) {
99
+ copyFonts(subSourceDir, subTargetDir);
100
+ } else {
101
+ console.warn(`Warning: ${subdir} subdirectory not found in fonts source.`);
102
+ }
103
+ });
104
+ }
105
+
106
+ // Copy logos
107
+ if (!fs.existsSync(sourceDirs.logos)) {
108
+ console.error(`Error: Logos directory does not exist: ${sourceDirs.logos}`);
109
+ } else {
110
+ copyLogos(sourceDirs.logos, targetDir);
111
+ }
112
+
113
+ console.log('Asset copying process complete!');
114
+ if (config.dryRun) {
115
+ console.log('This was a dry run. No files were actually copied.');
116
+ }
117
+ console.log(`Target directory: ${targetDir}`);
118
+ console.log('Please ensure your application is configured to serve static files from this location.');
@@ -1 +0,0 @@
1
- import{r as t,c as o,h as s,H as e,g as i}from"./p-2049fab2.js";const d=class{constructor(s){t(this,s),this.tdsChange=o(this,"tdsChange",6),this.tdsFocus=o(this,"tdsFocus",6),this.tdsBlur=o(this,"tdsBlur",6),this.tdsInput=o(this,"tdsInput",6),this.setDefaultOption=()=>{if(this.defaultValue){const t=Array.from(this.host.children).filter((t=>"TDS-DROPDOWN-OPTION"===t.tagName));if(0===t.length)return void console.warn("TDS DROPDOWN: No options found. Disregard if loading data asynchronously.");const o=this.multiselect?new Set(this.defaultValue.split(",")):[this.defaultValue],s=new Map(t.map((t=>[t.value,t]))),e=Array.from(o).filter((t=>{const o=s.get(t);return!!o&&(o.setSelected(!0),!0)}));e.length>0?(this.value=[...new Set(this.value?[...this.value,...e]:e)],this.setValueAttribute()):console.warn(`TDS DROPDOWN: No matching option found for defaultValue "${this.defaultValue}"`)}},this.getChildren=()=>{const t=Array.from(this.host.children).filter((t=>"TDS-DROPDOWN-OPTION"===t.tagName));if(0!==t.length)return t;console.warn("TDS DROPDOWN: Data missing. Disregard if loading data asynchronously.")},this.getOpenDirection=()=>{var t,o,s,e,i;if("auto"===this.openDirection||!this.openDirection){const d=null!==(o=null===(t=this.dropdownList)||void 0===t?void 0:t.offsetHeight)&&void 0!==o?o:0;return(null!==(i=null===(e=(s=this.host).getBoundingClientRect)||void 0===e?void 0:e.call(s).top)&&void 0!==i?i:0)+d+57>window.innerHeight?"up":"down"}return this.openDirection},this.handleToggleOpen=()=>{this.disabled||(this.open=!this.open,this.open&&this.focusInputElement())},this.focusInputElement=()=>{this.inputElement&&this.inputElement.focus()},this.getSelectedChildren=()=>{var t;return null===(t=this.value)||void 0===t?void 0:t.map((t=>this.getChildren().find((o=>o.value===t)))).filter(Boolean)},this.getSelectedChildrenLabels=()=>{var t;return null===(t=this.getSelectedChildren())||void 0===t?void 0:t.map((t=>t.textContent.trim()))},this.getValue=()=>{const t=this.getSelectedChildrenLabels();return t?this.filter?null==t?void 0:t.join(", "):null==t?void 0:t.toString():""},this.setValueAttribute=()=>{var t;this.value&&""!==(null===(t=this.value)||void 0===t?void 0:t.toString())?this.host.setAttribute("value",this.value.map((t=>t)).toString()):this.host.removeAttribute("value")},this.handleFilter=t=>{this.tdsInput.emit(t);const o=t.target.value.toLowerCase(),s=this.getChildren();""===o?(s.forEach((t=>(t.removeAttribute("hidden"),t))),this.filterResult=null):this.filterResult=s.filter((t=>(this.normalizeString(t.textContent).toLowerCase().includes(this.normalizeString(o).toLowerCase())?t.removeAttribute("hidden"):t.setAttribute("hidden",""),!t.hasAttribute("hidden")))).length},this.handleFilterReset=()=>{this.reset(),this.inputElement.value="",this.handleFilter({target:{value:this.inputElement.value}}),this.inputElement.focus()},this.handleFocus=t=>{this.tdsFocus.emit(t)},this.handleBlur=t=>{this.tdsBlur.emit(t)},this.handleChange=()=>{var t,o;this.tdsChange.emit({name:this.name,value:null!==(o=null===(t=this.value)||void 0===t?void 0:t.map((t=>t)).toString())&&void 0!==o?o:null})},this.name=void 0,this.disabled=!1,this.helper=void 0,this.label=void 0,this.labelPosition=void 0,this.modeVariant=null,this.openDirection="auto",this.placeholder=void 0,this.size="lg",this.error=!1,this.multiselect=!1,this.filter=!1,this.normalizeText=!0,this.noResultText="No result",this.defaultValue=void 0,this.open=!1,this.value=void 0,this.filterResult=void 0,this.filterFocus=void 0}async reset(){this.dropdownList.scrollTop=0,this.internalReset(),this.handleChange()}async setValue(t,o){let s;s="string"==typeof t?[t]:t,!this.multiselect&&s.length>1&&(console.warn("Tried to select multiple items, but multiselect is not enabled."),s=[s[0]]),s=[...new Set(s)],this.internalReset();for(let t=0;t<s.length;t++)this.getChildren().some((o=>o.value===s[t]))||s.splice(t,1);this.value=s,this.setValueAttribute(),this.selectChildrenAsSelectedBasedOnSelectionProp(),this.handleChange();const e=this.getSelectedChildren().map((t=>({value:t.value,label:t.textContent.trim()})));return this.filter&&(this.inputElement.value=this.getValue()),e}async appendValue(t){this.setValue(this.multiselect&&this.value?[...this.value,t]:t)}async removeValue(t){var o,s;let e;return this.multiselect?null===(o=this.getChildren())||void 0===o||o.forEach((o=>{var s;return o.value===t&&(this.value=null===(s=this.value)||void 0===s?void 0:s.filter((t=>t!==o.value)),e=o.textContent.trim(),o.setSelected(!1)),o})):this.reset(),this.handleChange(),this.setValueAttribute(),null===(s=this.value)||void 0===s?void 0:s.map((t=>({value:t,label:e})))}async close(){this.open=!1}onAnyClick(t){this.open&&!t.composedPath().includes(this.host)&&(this.open=!1)}async onKeyDown(t){const{activeElement:o}=document;if(!o)return;const s=this.getChildren();if("ArrowDown"===t.key){const t=o.nextElementSibling?s.findIndex((t=>t===o.nextElementSibling)):0;s[((t,o)=>{if(void 0===t[o])return 0;for(let s=o;s<t.length;s++)if(!t[s].disabled)return s})(s,t)].focus()}else"ArrowUp"===t.key?s[((t,o)=>{if(void 0===t[o])return t.length-1;for(let s=o;s>=0;s--)if(!t[s].disabled)return s})(s,o.nextElementSibling?this.getChildren().findIndex((t=>t===o.previousElementSibling)):0)].focus():"Escape"===t.key&&(this.open=!1)}handleOpenState(){this.filter&&this.multiselect&&(this.open||(this.inputElement.value=this.getValue()))}componentWillLoad(){this.setDefaultOption()}handleSlotChange(){this.setDefaultOption()}normalizeString(t){return this.normalizeText?t.normalize("NFD").replace(/\p{Diacritic}/gu,""):t}internalReset(){this.getChildren().forEach((t=>(t.setSelected(!1),t))),this.value=null,this.setValueAttribute()}selectChildrenAsSelectedBasedOnSelectionProp(){this.getChildren().forEach((t=>{this.value.forEach((o=>{t.value!==o?this.multiselect||t.setSelected(!1):t.setSelected(!0)}))}))}render(){var t,o,i,d;return((t,o,s,e)=>{let i=t.querySelector("input");t.querySelector("input")||(i=t.ownerDocument.createElement("input"),i.type="hidden",t.appendChild(i)),i.disabled=e,i.name=o,i.value=s||""})(this.host,this.name,null===(t=this.value)||void 0===t?void 0:t.map((t=>t)).toString(),this.disabled),s(e,{key:"c756dc7221c39b901524bd0c28938bd166e412bc",role:"select",class:this.modeVariant?`tds-mode-variant-${this.modeVariant}`:""},this.label&&"outside"===this.labelPosition&&s("div",{key:"5184a8c84d24e0f13379c95fc7ceb7791f1e25ab",class:"label-outside "+(this.disabled?"disabled":"")},this.label),s("div",{key:"601bc322ce765ed1ee52e1ee6a0894fcb335485b",class:`dropdown-select ${this.size} ${this.disabled?"disabled":""}`},this.filter?s("div",{class:{filter:!0,focus:this.filterFocus,disabled:this.disabled,error:this.error}},s("div",{class:"value-wrapper"},this.label&&"inside"===this.labelPosition&&this.placeholder&&s("div",{class:`label-inside ${this.size}`},this.label),this.label&&"inside"===this.labelPosition&&!this.placeholder&&s("div",{class:`\n label-inside-as-placeholder\n ${this.size}\n ${(null===(o=this.value)||void 0===o?void 0:o.length)?"selected":""}\n `},this.label),s("input",{ref:t=>this.inputElement=t,class:"inside"===this.labelPosition?"placeholder":"",type:"text",placeholder:this.filterFocus?"":this.placeholder,value:this.multiselect&&this.filterFocus?"":this.getValue(),disabled:this.disabled,onInput:t=>this.handleFilter(t),onBlur:t=>{this.filterFocus=!1,this.multiselect&&(this.inputElement.value=this.getValue()),this.handleBlur(t)},onFocus:t=>{this.open=!0,this.filterFocus=!0,this.multiselect&&(this.inputElement.value=""),this.handleFocus(t),this.handleFilter({target:{value:""}})},onKeyDown:t=>{"Escape"===t.key&&(this.open=!1)}})),s("tds-icon",{tabIndex:0,role:"button","aria-label":"Clear filter",svgTitle:"Clear filter",onClick:this.handleFilterReset,onKeyDown:t=>{"Enter"===t.key&&this.handleFilterReset()},class:"clear-icon "+(this.open&&""!==this.inputElement.value?"":"hide"),name:"cross",size:"16px"}),s("tds-icon",{tabIndex:0,role:"button","aria-label":"Open/Close dropdown",svgTitle:"Open/Close dropdown",onClick:this.handleToggleOpen,onKeyDown:t=>{"Enter"===t.key&&this.handleToggleOpen()},class:"menu-icon "+(this.open?"open":"closed"),name:"chevron_down",size:"16px"})):s("button",{onClick:()=>this.handleToggleOpen(),onKeyDown:t=>{"Escape"===t.key&&(this.open=!1)},class:`\n ${this.value?"value":"placeholder"}\n ${this.open?"open":"closed"}\n ${this.error?"error":""}\n `,disabled:this.disabled},s("div",{class:`value-wrapper ${this.size}`},this.label&&"inside"===this.labelPosition&&this.placeholder&&s("div",{class:`label-inside ${this.size}`},this.label),this.label&&"inside"===this.labelPosition&&!this.placeholder&&s("div",{class:`\n label-inside-as-placeholder\n ${this.size}\n ${(null===(i=this.value)||void 0===i?void 0:i.length)?"selected":""}\n `},this.label),s("div",{class:`placeholder ${this.size}`},(null===(d=this.value)||void 0===d?void 0:d.length)?this.getValue():this.placeholder),s("tds-icon",{"aria-label":"Open/Close dropdown",svgTitle:"Open/Close dropdown",class:"menu-icon "+(this.open?"open":"closed"),name:"chevron_down",size:"16px"})))),s("div",{key:"71042ce1a28e3598ee37977b86ae887c68caad1d",ref:t=>this.dropdownList=t,class:`dropdown-list\n ${this.size}\n ${this.open?"open":"closed"}\n ${this.getOpenDirection()}\n ${this.label&&"outside"===this.labelPosition?"label-outside":""}`},s("slot",{key:"bf606ae5c67258fc04df20474cde59ff00ea90eb",onSlotchange:()=>this.handleSlotChange()}),0===this.filterResult&&""!==this.noResultText&&s("div",{key:"2a1b20c4ad0acf3f6c7de06ef3e6a84e7879f398",class:`no-result ${this.size}`},this.noResultText)),this.helper&&s("div",{key:"1c4cb2ca717f28fe16306729ae6cf555358a1a65",class:`helper ${this.error?"error":""} ${this.disabled?"disabled":""}`},this.error&&s("tds-icon",{key:"6b3a6054fa2e1f1b77c8520cdfab20ef5e7a4bf9",name:"error",size:"16px"}),this.helper))}get host(){return i(this)}static get watchers(){return{open:["handleOpenState"]}}};d.style='@charset "UTF-8";:host button{all:unset;height:100%;width:100%;background-color:var(--tds-dropdown-bg);border-bottom:1px solid var(--tds-dropdown-border-bottom);border-radius:4px 4px 0 0}:host button:hover{border-bottom:1px solid var(--tds-dropdown-border-bottom-hover)}:host button .value-wrapper{padding:0 16px;display:flex;align-items:center;justify-content:space-between}:host button.placeholder{color:var(--tds-dropdown-placeholder-color);line-height:1.3}:host button.value{color:var(--tds-dropdown-value-color);font:var(--tds-detail-02);letter-spacing:var(--tds-detail-02-ls);line-height:1.3}:host button:focus{border-bottom-color:var(--tds-dropdown-border-bottom-open)}:host button:focus::before{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--tds-dropdown-border-bottom-open)}:host button.error{border-bottom:1px solid var(--tds-negative)}:host button.error:focus{border-bottom-color:transparent}:host button.error:focus::before{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--tds-negative)}:host button:disabled{color:var(--tds-dropdown-disabled-color);border-bottom:1px solid transparent}:host button .menu-icon{margin-right:0}:host .filter{display:flex;align-items:center;justify-content:space-between;height:100%;background-color:var(--tds-dropdown-bg);border-bottom:1px solid var(--tds-dropdown-border-bottom);padding-left:16px;border-radius:4px 4px 0 0}:host .filter:hover{border-bottom:1px solid var(--tds-dropdown-border-bottom-hover)}:host .filter.disabled{color:var(--tds-dropdown-disabled-color);border-bottom:1px solid transparent}:host .filter .value-wrapper{display:flex;width:100%;height:100%}:host .filter .label-inside-as-placeholder{position:absolute;font:var(--tds-detail-02);letter-spacing:var(--tds-detail-02-ls);line-height:1.3;color:var(--tds-dropdown-placeholder-color)}:host .filter .label-inside-as-placeholder.lg{top:20px}:host .filter .label-inside-as-placeholder.md{top:16px}:host .filter .label-inside-as-placeholder.sm{display:none}:host .filter .label-inside-as-placeholder.selected{font:var(--tds-detail-07);letter-spacing:var(--tds-detail-07-ls);transition:all 0.2s ease-in-out}:host .filter .label-inside-as-placeholder.selected.lg{top:12px}:host .filter .label-inside-as-placeholder.selected.md{top:8px}:host .filter .label-inside-as-placeholder.selected.sm{display:none}:host .filter .label-inside-as-placeholder.selected+.placeholder:not(.sm){margin-top:8px}:host .filter.focus{border-bottom-color:transparent}:host .filter.focus::before{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--tds-dropdown-border-bottom-open)}:host .filter.error{border-bottom:1px solid var(--tds-negative)}:host .filter.error.focus{border-bottom-color:transparent}:host .filter.error.focus::before{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--tds-negative)}:host .filter input{flex:1;all:unset;width:100%}:host .filter input::placeholder{color:var(--tds-dropdown-placeholder-color)}:host .filter input:disabled::placeholder{color:var(--tds-dropdown-disabled-color)}:host .filter tds-icon{cursor:pointer}:host .filter .menu-icon{margin-right:16px}:host .filter .clear-icon{margin:0 8px;color:var(--tds-dropdown-clear-icon-color);padding-right:8px;border-right:1px solid var(--tds-dropdown-clear-icon-color)}:host .filter .clear-icon:hover{color:var(--tds-dropdown-clear-icon-hover-color)}:host .filter .clear-icon.hide{display:none;visibility:hidden}:host{--tds-scrollbar-width-standard:thin;--tds-scrollbar-width:10px;--tds-scrollbar-height:10px;--tds-scrollbar-thumb-border-width:3px;--tds-scrollbar-thumb-border-hover-width:2px}body{scrollbar-width:thin}:host{display:block;position:relative;font:var(--tds-detail-02);letter-spacing:var(--tds-detail-02-ls)}:host .label-outside{font:var(--tds-detail-05);letter-spacing:var(--tds-detail-05-ls);color:var(--tds-dropdown-label-color);margin-bottom:8px}:host .label-outside.disabled{color:var(--tds-dropdown-disabled-color)}:host .dropdown-select{position:relative}:host .dropdown-select.disabled .label-inside,:host .dropdown-select.disabled .placeholder,:host .dropdown-select.disabled .label-inside-as-placeholder,:host .dropdown-select.disabled .value-wrapper{color:var(--tds-dropdown-disabled-color)}:host .dropdown-select .label-inside{position:absolute;font:var(--tds-detail-07);letter-spacing:var(--tds-detail-07-ls);color:var(--tds-dropdown-label-inside-color)}:host .dropdown-select .label-inside.lg{top:12px;left:16px}:host .dropdown-select .label-inside.md{top:8px;left:16px}:host .dropdown-select .label-inside.sm{display:none}:host .dropdown-select .label-inside.xs{display:none}:host .dropdown-select .label-inside+.placeholder:not(.sm){margin-top:8px}:host .dropdown-select .placeholder{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:var(--tds-placeholder-margin)}:host .dropdown-select .label-inside-as-placeholder{color:var(--tds-dropdown-placeholder-color)}:host .dropdown-select .label-inside-as-placeholder.selected{position:absolute;font:var(--tds-detail-07);letter-spacing:var(--tds-detail-07-ls);transition:all 0.2s ease-in-out}:host .dropdown-select .label-inside-as-placeholder.selected.lg{top:12px}:host .dropdown-select .label-inside-as-placeholder.selected.md{top:8px}:host .dropdown-select .label-inside-as-placeholder.selected.sm{display:none}:host .dropdown-select .label-inside-as-placeholder.selected+.placeholder:not(.sm){margin-top:8px}:host .dropdown-select.lg{height:55px}:host .dropdown-select.md{height:47px}:host .dropdown-select.sm{height:39px}:host .dropdown-select.xs{height:29px}:host .helper{margin-top:4px;color:var(--tds-dropdown-helper-color);font:var(--tds-detail-05);letter-spacing:var(--tds-detail-05-ls);display:flex;align-items:center;gap:8px}:host .helper.error{color:var(--tds-negative)}:host .helper.disabled{color:var(--tds-dropdown-disabled-color)}:host .dropdown-list{z-index:100;position:absolute;margin-top:1px;width:100%;transform-origin:top;transition:transform 0.2s ease-in-out;box-shadow:rgba(0, 0, 0, 0.1) 0 2px 3px 0;border-radius:0 0 4px 4px;overflow-y:auto}:host .dropdown-list:hover::-webkit-scrollbar-thumb{border:var(--tds-scrollbar-thumb-border-hover-width) solid transparent;background:var(--tds-scrollbar-hover-thumb-color);background-clip:padding-box}:host .dropdown-list::-webkit-scrollbar{width:var(--tds-scrollbar-width)}:host .dropdown-list::-webkit-scrollbar-track{background:var(--tds-scrollbar-track-color)}:host .dropdown-list::-webkit-scrollbar-thumb{border-radius:40px;background:var(--tds-scrollbar-thumb-color);border:var(--tds-scrollbar-thumb-border-width) solid transparent;background-clip:padding-box}:host .dropdown-list::-webkit-scrollbar-button{height:0;width:0}@supports not selector(::-webkit-scrollbar){:host .dropdown-list{scrollbar-color:var(--tds-scrollbar-thumb-color) var(--tds-scrollbar-track-color);scrollbar-width:var(--tds-scrollbar-width-standard)}}:host .dropdown-list.lg{max-height:312px}:host .dropdown-list.md{max-height:312px}:host .dropdown-list.sm{max-height:260px}:host .dropdown-list.xs{max-height:260px}:host .dropdown-list.up{bottom:100%;margin-top:0;margin-bottom:1px;transform-origin:bottom;display:flex;flex-direction:column-reverse;box-shadow:rgba(0, 0, 0, 0.1) 0 -1px 3px 0;border-radius:4px 4px 0 0}:host .dropdown-list.up.label-outside{bottom:calc(100% - 24px)}:host .dropdown-list.closed{transform:scaleY(0);visibility:hidden}:host .dropdown-list.open{transform:scaleY(1)}:host .dropdown-list .no-result{font:var(--tds-detail-02);letter-spacing:var(--tds-detail-02-ls);display:flex;align-items:center;padding:0 16px;background-color:var(--tds-dropdown-bg)}:host .dropdown-list .no-result.lg{height:56px}:host .dropdown-list .no-result.md{height:48px}:host .dropdown-list .no-result.sm{height:40px}:host .dropdown-list .no-result.xs{height:40px}:host .menu-icon{color:var(--tds-dropdown-menu-icon-color)}:host tds-icon{transition:transform 0.2s ease-in-out}:host tds-icon.open{transform:rotateZ(180deg)}';const r=class{constructor(s){t(this,s),this.tdsSelect=o(this,"tdsSelect",6),this.tdsFocus=o(this,"tdsFocus",6),this.tdsBlur=o(this,"tdsBlur",6),this.componentWillRender=()=>{this.parentElement="TDS-DROPDOWN"===this.host.parentElement.tagName?this.host.parentElement:this.host.getRootNode().host,this.multiselect=this.parentElement.multiselect,this.size=this.parentElement.size,this.label=this.host.textContent.trim()},this.handleSingleSelect=()=>{this.disabled||(this.selected=!0,this.parentElement.appendValue(this.value),this.parentElement.close(),this.tdsSelect.emit({value:this.value,selected:this.selected}))},this.handleMultiselect=t=>{this.disabled||(t.detail.checked?(this.parentElement.appendValue(this.value),this.selected=!0,this.tdsSelect.emit({value:this.value,selected:this.selected})):(this.parentElement.removeValue(this.value),this.selected=!1,this.tdsSelect.emit({value:this.value,selected:this.selected})),t.stopPropagation())},this.handleFocus=t=>{this.tdsFocus.emit(t)},this.handleBlur=t=>{this.tdsBlur.emit(t)},this.value=void 0,this.disabled=!1,this.selected=!1,this.multiselect=void 0,this.size="lg"}async setSelected(t){this.selected=t}render(){return s(e,{key:"1cb00a19c5dbcc47e1b2bc97d1d5ccc8ac5a532a",role:"option","aria-disabled":this.disabled,"aria-selected":this.selected},s("div",{key:"5deaf44c7306f4b1856200bf0a5640e99fcb449d",class:`dropdown-option \n ${this.size}\n ${this.selected?"selected":""}\n ${this.disabled?"disabled":""}\n `},this.multiselect?s("div",{class:"multiselect",onKeyDown:t=>{"Escape"===t.key&&this.parentElement.close()}},s("tds-checkbox",{onTdsChange:t=>{this.handleMultiselect(t)},disabled:this.disabled,checked:this.selected,class:{[this.size]:!0}},s("div",{slot:"label"},s("slot",null)))):s("button",{onClick:()=>{this.handleSingleSelect()},onFocus:t=>this.handleFocus(t),onBlur:t=>this.handleBlur(t),disabled:this.disabled,class:this.size},s("div",{class:"single-select"},s("slot",null),this.selected&&s("tds-icon",{name:"tick",size:"16px"})))))}static get delegatesFocus(){return!0}get host(){return i(this)}};r.style=":host{box-sizing:border-box;display:block;background-color:var(--tds-dropdown-option-background)}:host *{box-sizing:border-box}:host .dropdown-option{color:var(--tds-dropdown-option-color);border-bottom:1px solid var(--tds-dropdown-option-border);font:var(--tds-detail-02);letter-spacing:var(--tds-detail-02-ls);overflow-wrap:anywhere}:host .dropdown-option.selected{background-color:var(--tds-dropdown-option-background-selected)}:host .dropdown-option.disabled{color:var(--tds-dropdown-option-color-disabled)}:host .dropdown-option button:focus{outline:2px solid var(--tds-blue-400);outline-offset:-2px}:host .dropdown-option button{all:unset;width:100%}:host .dropdown-option button.lg{padding:19px 0 20px}:host .dropdown-option button.md{padding:15px 0 16px}:host .dropdown-option button.sm{padding:11px 0 12px}:host .dropdown-option button.xs{padding:7px 0 8px}:host .dropdown-option button .single-select{display:flex;align-items:center;justify-content:space-between;padding:0 16px}:host .dropdown-option .multiselect{width:100%;height:100%}:host .dropdown-option .multiselect tds-checkbox{display:flex;height:100%;width:100%}:host .dropdown-option .multiselect tds-checkbox.lg{padding:15px 16px 16px}:host .dropdown-option .multiselect tds-checkbox.md{padding:11px 16px 12px}:host .dropdown-option .multiselect tds-checkbox.sm{padding:7px 16px 8px}:host .dropdown-option .multiselect tds-checkbox.xs{padding:7px 16px 8px}:host .dropdown-option:hover{background-color:var(--tds-dropdown-option-background-hover);cursor:pointer}:host .dropdown-option:hover.disabled{background-color:var(--tds-dropdown-option-background);cursor:not-allowed}:host([hidden]){display:none}";export{d as tds_dropdown,r as tds_dropdown_option}
@@ -1,88 +0,0 @@
1
- #!/usr/bin/env node
2
- import fs from 'fs';
3
- import path from 'path';
4
- import { fileURLToPath } from 'url';
5
-
6
- const currentFilePath = fileURLToPath(import.meta.url);
7
- const currentDirPath = path.dirname(currentFilePath);
8
-
9
- // Configuration options
10
- const config = {
11
- defaultTargetDir: 'public/assets/fonts',
12
- dryRun: false, // Set to false to actually copy files
13
- verbose: false // Set to false to reduce console output
14
- };
15
-
16
- // Get custom path from command line argument, if provided
17
- const targetDir = path.resolve(process.cwd(), process.argv[2] || config.defaultTargetDir);
18
-
19
- // Define the source directory for fonts in the package
20
- const sourceDir = path.join(currentDirPath, '..', '..', '..', 'assets', 'fonts');
21
-
22
- function copyFonts(src, dest) {
23
- if (config.verbose) console.log(`Checking directory: ${src}`);
24
-
25
- if (!fs.existsSync(src)) {
26
- console.error(`Source directory does not exist: ${src}`);
27
- return;
28
- }
29
-
30
- if (!config.dryRun && !fs.existsSync(dest)) {
31
- if (config.verbose) console.log(`Creating directory: ${dest}`);
32
- fs.mkdirSync(dest, { recursive: true });
33
- }
34
-
35
- try {
36
- const entries = fs.readdirSync(src, { withFileTypes: true });
37
-
38
- for (let entry of entries) {
39
- const srcPath = path.join(src, entry.name);
40
- const destPath = path.join(dest, entry.name);
41
-
42
- if (entry.isDirectory()) {
43
- copyFonts(srcPath, destPath);
44
- } else if (entry.isFile() && (path.extname(entry.name) === '.woff' || path.extname(entry.name) === '.woff2')) {
45
- if (config.dryRun) {
46
- console.log(`Would copy: ${srcPath} to ${destPath}`);
47
- } else {
48
- fs.copyFileSync(srcPath, destPath);
49
- console.log(`Copied: ${destPath}`);
50
- }
51
- }
52
- }
53
- } catch (error) {
54
- console.error(`Error accessing directory ${src}:`, error.message);
55
- }
56
- }
57
-
58
- console.log('Font copying script started');
59
-
60
- if (!fs.existsSync(sourceDir)) {
61
- console.error(`Error: Source directory does not exist: ${sourceDir}`);
62
- console.log('Please check if the fonts directory exists in the assets folder of the package.');
63
- process.exit(1);
64
- }
65
-
66
- console.log(`Source directory: ${sourceDir}`);
67
- console.log(`Target directory: ${targetDir}`);
68
- console.log(`Dry run: ${config.dryRun ? 'Yes' : 'No'}`);
69
-
70
- // Copy fonts from both cyrillic and latin subdirectories
71
- ['cyrillic', 'latin'].forEach(subdir => {
72
- const subSourceDir = path.join(sourceDir, subdir);
73
- const subTargetDir = path.join(targetDir, subdir);
74
-
75
- if (fs.existsSync(subSourceDir)) {
76
- copyFonts(subSourceDir, subTargetDir);
77
- } else {
78
- console.warn(`Warning: ${subdir} subdirectory not found in source.`);
79
- }
80
- });
81
-
82
- console.log('Font copying process complete!');
83
- if (config.dryRun) {
84
- console.log('This was a dry run. No files were actually copied.');
85
- console.log('To actually copy files, set dryRun to false in the config.');
86
- }
87
- console.log(`Target directory: ${targetDir}`);
88
- console.log('Please ensure your application is configured to serve static files from this location.');