src/globals.ts
Rama develop · réplica de lectura del repositorio original.
import {
mdiClose,
mdiTune,
mdiMinus,
mdiPlus,
mdiCheck,
mdiFire,
mdiCog,
mdiPrinter3d,
mdiPrinter3dNozzle,
mdiPrinter3dNozzleOutline,
mdiFileCodeOutline,
mdiFileRefreshOutline,
mdiConsole,
mdiChevronUp,
mdiChevronDown,
mdiTimerSand,
mdiClockOutline,
mdiFormatLineSpacing,
mdiPause,
mdiWindowClose,
mdiPrinter,
mdiCamera,
mdiFan,
mdiArrowUp,
mdiArrowDown,
mdiArrowLeft,
mdiArrowRight,
mdiArrowCollapseDown,
mdiViewGridOutline,
mdiArrowExpandHorizontal,
mdiArrowExpandVertical,
mdiRefresh,
mdiCheckCircleOutline,
mdiCheckboxBlankCircleOutline,
mdiPrinter3dNozzleAlertOutline,
mdiAlertCircle,
mdiFolderPlus,
mdiFile,
mdiFileLock,
mdiFolder,
mdiFolderLock,
mdiPencil,
mdiMagnify,
mdiMagnifyPlus,
mdiMagnifyMinus,
mdiDownload,
mdiFormTextbox,
mdiDelete,
mdiCogs,
mdiContentSaveOutline,
mdiContentSaveEditOutline,
mdiAlert,
mdiDotsVertical,
mdiSend,
mdiArrowHorizontalLock,
mdiChartTimelineVariant,
mdiFireAlert,
mdiSnowflake,
mdiSnowflakeAlert,
mdiUpload,
mdiFolderUpload,
mdiProgressUpload,
mdiProgressQuestion,
mdiRadioboxMarked,
mdiCheckboxBlankOutline,
mdiCheckboxMarkedOutline,
mdiFilePlus,
mdiBellOutline,
mdiPower,
mdiPowerCycle,
mdiRestart,
mdiRestartAlert,
mdiUpdate,
mdiChevronRight,
mdiChevronLeft,
mdiDrag,
mdiCheckboxMultipleBlank,
mdiOpenInApp,
mdiDesktopTower,
mdiDotsHorizontal,
mdiToggleSwitch,
mdiToggleSwitchOffOutline,
mdiMotionOutline,
mdiThermometerLow,
mdiHelpCircle,
mdiHistory,
mdiFilterOutline,
mdiSourceCommit,
mdiArrowExpandUp,
mdiCloudCheck,
mdiCloudAlert,
mdiCircle,
mdiFolderMove,
mdiConsoleLine,
mdiDotsGrid,
mdiHammerWrench,
mdiAccount,
mdiFileTableOutline,
mdiLock,
mdiLockOpenVariant,
mdiPencilLock,
mdiLockReset,
mdiCubeScan,
mdiHandBackRight,
mdiThermometerAlert,
mdiShieldAccount,
mdiContentCopy,
mdiApps,
mdiAccountPlus,
mdiViewDashboardOutline,
mdiHome,
mdiRestore,
mdiMenu,
mdiFileCancel,
mdiFileExportOutline,
mdiCancel,
mdiCircleSlice3,
mdiCodeJson,
mdiHarddisk,
mdiMicroSd,
mdiLayersTripleOutline,
mdiMessageTextOutline,
mdiFormatListBulleted,
mdiSwapVertical,
mdiFullscreen,
mdiStop,
mdiPlay,
mdiFileVideoOutline,
mdiBellSleep,
mdiChip,
mdiViewHeadline,
mdiAxisArrow,
mdiVectorLine,
mdiOpenInNew,
mdiImageSizeSelectLarge,
mdiListStatus,
mdiLayersMinus,
mdiLayers,
mdiLayersPlus,
mdiFolderOpen,
mdiArchive,
mdiArchivePlus,
mdiTrayFull,
mdiTrayPlus,
mdiFolderArrowUp,
mdiTableColumn,
mdiShape,
mdiSync,
mdiTimerOutline,
mdiContentDuplicate,
mdiArchiveLock,
mdiFileImage,
mdiGauge,
mdiMonitorScreenshot,
mdiRotateLeft,
mdiRotateRight,
mdiToothbrush,
mdiParking,
mdiUsb,
mdiMagnet,
mdiFileDocument,
mdiSineWave,
mdiContentSaveCogOutline,
mdiCogCounterclockwise,
mdiAccountCogOutline,
mdiStateMachine,
mdiDatabase,
mdiDatabaseEdit,
mdiCogRefresh,
mdiWrenchCog,
mdiNoteText,
mdiCheckAll,
mdiDownloadOutline,
mdiEject,
mdiAutoFix,
mdiThermometerPlus,
mdiSpeedometer,
mdiAdjust,
mdiSyncOff,
mdiUploadOutline,
mdiEngineOutline,
mdiEngineOffOutline,
mdiArrowCollapseHorizontal,
mdiHomeOutline,
mdiArrowUpThin,
mdiArrowDownThin,
mdiArrowLeftRight,
mdiWater,
mdiThermometer,
mdiHeatingCoil,
mdiRotateOrbit,
mdiContentSaveSettingsOutline,
mdiMulticast,
mdiInformationOutline,
mdiSwapHorizontal,
mdiSwapHorizontalVariant,
mdiRadioboxBlank,
mdiLifebuoy,
mdiLightbulbOnOutline,
mdiLightbulbOutline,
mdiWrench,
mdiVariable,
mdiArrowDownBold,
mdiArrowUpBold,
mdiDockTop,
mdiDockBottom,
mdiTagMultipleOutline,
} from '@mdi/js'
import {
afcIconBoxTurtle,
afcIconHtlf,
afcIconInfinity,
afcIconLogo,
afcIconNightOwl,
afcIconQuattroBox
} from '@/plugins/afcIcons'
const mdiFilament = 'M12 2a10 10 0 0 0-2.148.26 10 10 0 0 0-1.315.386A10 10 0 0 0 7.672 3H7.67a10 10 0 0 0-1.295.752 10 10 0 0 0-.754.564 10 10 0 0 0-.98.938 10 10 0 0 0-.598.732 10 10 0 0 0-1.57 3.016 10 10 0 0 0-.315 1.314 10 10 0 0 0-.105.932v.008A10 10 0 0 0 2 12q0 .378.031.756l.002.012a10 10 0 0 0 .426 2.222 10 10 0 0 0 .38 1.014l.007.014.008.013q.218.497.488.967l.002.002a10 10 0 0 0 2.265 2.69 10 10 0 0 0 2.06 1.322h.003a10 10 0 0 0 2.15.746h.002q.514.114 1.035.174l.079.01q.529.057 1.062.058a10 10 0 0 0 2.148-.26 10 10 0 0 0 1.315-.386 10 10 0 0 0 .865-.354h.002a10 10 0 0 0 1.295-.752 10 10 0 0 0 .754-.564 10 10 0 0 0 .98-.938 10 10 0 0 0 .598-.732 10 10 0 0 0 1.57-3.016 10 10 0 0 0 .315-1.314 10 10 0 0 0 .105-.932v-.008q.04-.37.053-.744 0-.378-.031-.756l-.002-.012a10 10 0 0 0-.426-2.222 10 10 0 0 0-.38-1.014l-.007-.014-.008-.013a10 10 0 0 0-.488-.967L20.656 7a10 10 0 0 0-2.265-2.69 10 10 0 0 0-2.06-1.322h-.003a10 10 0 0 0-2.15-.746h-.002a10 10 0 0 0-1.114-.183A10 10 0 0 0 12 2m-1.299 2.25.256.148.11.063.066.039.433.25v1l-.433.25-.258.148v.002l-.174.1-.433-.25-.432-.25v-1l.268-.154zm2.598 0 .865.5v1l-.865.5-.865-.5v-1zm-4.46.426.13.074v1L8.537 6l-.433.25-.866-.5v-.172a8 8 0 0 1 1.602-.902m6.321 0a8 8 0 0 1 1.602.902v.172l-.658.38-.208.12-.865-.5v-1zM6.805 6.5l.865.5v1l-.865.5-.104-.06L5.94 8V7zm2.597 0 .866.5v1l-.127.074-.307.176-.432.25-.431-.25L8.537 8V7l.432-.25zM12 6.5l.865.5v1l-.12.07h-.003A4 4 0 0 0 12 8a4 4 0 0 0-.732.076L11.135 8V7l.761-.44zm2.598 0 .431.25.434.25v1l-.865.5-.432-.25-.434-.25V7l.434-.25zm2.597 0 .104.06.762.44v1l-.762.44-.104.06-.865-.5V7zM5.505 8.75l.866.5v1l-.865.5-.865-.5v-1zm2.599 0 .865.5v.14a4 4 0 0 0-.733 1.284l-.132.076-.56-.322-.306-.178v-1zm7.792 0 .866.5v1l-.434.25-.432.25-.12-.07a4 4 0 0 0-.657-1.174q-.043-.057-.088-.113V9.25l.432-.25zm2.598 0 .865.5v1l-.865.5-.207-.12-.658-.38v-1zM12 10a2 2 0 1 1 0 4 2 2 0 0 1 0-4m-7.793 1 .865.5v1l-.865.5-.135-.078A8 8 0 0 1 4 12a8 8 0 0 1 .072-.922zm2.598 0 .431.25.434.25v1l-.865.5-.104-.06-.762-.44v-1l.762-.44zm10.39 0 .104.06.762.44v1l-.762.44-.104.06-.431-.25-.434-.25v-1zm2.598 0 .135.078q.063.46.072.922a8 8 0 0 1-.072.922l-.135.078-.865-.5v-1zM5.506 13.25l.207.12.658.38v1l-.865.5-.865-.5v-1zm2.598 0 .12.07c.15.427.375.822.657 1.174q.043.057.088.113v.143l-.432.25-.433.25-.866-.5v-1l.434-.25zm7.792 0 .56.322.306.178v1l-.866.5-.865-.5v-.14a4 4 0 0 0 .621-1.008 4 4 0 0 0 .112-.276zm2.598 0 .865.5v1l-.865.5-.865-.5v-1zM6.804 15.5l.866.5v1l-.865.5-.104-.06L5.94 17v-1l.762-.44zm2.598 0 .432.25.434.25v1l-.434.25-.432.25-.431-.25-.434-.25v-1l.432-.25h.002zm5.196 0 .431.25.434.25v1l-.432.25-.433.25-.866-.5v-1l.127-.074.307-.176zm2.597 0 .104.06.762.44v1l-.866.5-.865-.5v-1zm-4.463.424.133.076v1l-.761.44-.104.06-.865-.5v-1l.12-.07h.003A4 4 0 0 0 12 16a4 4 0 0 0 .732-.076M8.104 17.75l.865.5v1l-.13.074a8 8 0 0 1-1.6-.902v-.172l.657-.38zm2.597 0 .865.5v1l-.865.5-.865-.5v-1zm2.598 0 .433.25.432.25v1l-.268.154-.597.346-.256-.148-.176-.102-.433-.25v-1l.433-.25.258-.148v-.002zm2.597 0 .866.5v.172a8 8 0 0 1-1.602.902l-.129-.074v-1l.432-.25z'
const mdiFilamentDown = 'M12 2a10 10 0 0 0-1.129.08 10 10 0 0 0-1.02.18 10 10 0 0 0-1.314.386A10 10 0 0 0 7.672 3H7.67a10 10 0 0 0-1.295.752 10 10 0 0 0-.754.564 10 10 0 0 0-.98.938 10 10 0 0 0-.598.732l-.125.168a10 10 0 0 0-.541.826l-.035.065a10 10 0 0 0-.87 1.957 10 10 0 0 0-.314 1.314 10 10 0 0 0-.105.932v.008A10 10 0 0 0 2 12a10 10 0 0 0 .053.742v.006a10 10 0 0 0 .105.936 10 10 0 0 0 .315 1.314 10 10 0 0 0 .869 1.957l.035.065a10 10 0 0 0 .541.826l.125.168a10 10 0 0 0 .598.732 10 10 0 0 0 .98.938 10 10 0 0 0 .754.564A10 10 0 0 0 7.67 21h.002a10 10 0 0 0 .865.354 10 10 0 0 0 1.315.386 10 10 0 0 0 1.02.18A10 10 0 0 0 12 22a10 10 0 0 0 1.129-.08 10 10 0 0 0 .59-.104 6 6 0 0 1-.676-2.214l-.61-.352v-1l.434-.25.258-.148a6 6 0 0 1 .607-1.692V16l.127-.074a6 6 0 0 1 1.342-1.559 4 4 0 0 0 .563-1.04l.132-.077.56.322A6 6 0 0 1 19 13a6 6 0 0 1 2.834.713l.008-.03a10 10 0 0 0 .105-.931v-.008A10 10 0 0 0 22 12a10 10 0 0 0-.031-.756l-.002-.012a10 10 0 0 0-.113-.921 10 10 0 0 0-.313-1.301 10 10 0 0 0-.38-1.014l-.007-.014-.008-.013a10 10 0 0 0-.488-.967L20.656 7a10 10 0 0 0-.6-.92 10 10 0 0 0-.697-.848 10 10 0 0 0-.968-.921 10 10 0 0 0-.752-.567 10 10 0 0 0-1.309-.756h-.002a10 10 0 0 0-.865-.367 10 10 0 0 0-1.285-.379h-.002a10 10 0 0 0-1.035-.174l-.079-.01A10 10 0 0 0 12 2m-1.299 2.25.432.25.433.25v1l-.865.5-.433-.25-.432-.25v-1l.268-.154zm2.598 0 .865.5v1l-.865.5-.865-.5v-1zm1.883.414a8 8 0 0 1 1.58.91v.176l-.658.38-.208.12-.865-.5v-1zm-6.342.012.129.074v1L8.537 6l-.433.25-.866-.5v-.172a8 8 0 0 1 1.602-.902M6.805 6.5l.865.5v1l-.865.5-.104-.06L5.94 8V7zm2.597 0 .866.5v1l-.434.25-.432.25-.431-.25L8.537 8V7l.432-.25zM12 6.5l.865.5v1l-.12.07A4 4 0 0 0 12 8a4 4 0 0 0-.732.076L11.135 8V7zm2.598 0 .865.5v1l-.865.5-.866-.5V7zm2.597 0 .866.5v1l-.866.5-.865-.5V7zM5.505 8.75l.866.5v1l-.865.5-.865-.5v-1zm2.599 0 .865.5v.14a4 4 0 0 0-.733 1.284l-.132.076-.866-.5v-1zm7.792 0 .866.5v1l-.866.5-.12-.07a4 4 0 0 0-.745-1.287V9.25zm2.598 0 .865.5v1l-.865.5-.207-.12-.658-.38v-1zM12 10a2 2 0 0 1 2 2 2 2 0 0 1-2 2 2 2 0 0 1-2-2 2 2 0 0 1 2-2m-7.793 1 .865.5v1l-.865.5-.135-.078A8 8 0 0 1 4 12a8 8 0 0 1 .072-.922zm2.598 0 .865.5v1l-.865.5-.104-.06-.762-.44v-1l.762-.44zm10.39 0 .866.5v1l-.866.5-.431-.25-.434-.25v-1zm2.598 0 .154.09A8 8 0 0 1 20 12a8 8 0 0 1-.072.922l-.135.078-.865-.5v-1zM5.506 13.25l.865.5v1l-.865.5-.865-.5v-1zm2.598 0 .132.076a4 4 0 0 0 .733 1.283v.141l-.432.25-.433.25-.866-.5v-1l.434-.25zm-1.3 2.25.866.5v1l-.865.5-.104-.06L5.94 17v-1l.762-.44zm2.598 0 .432.25.434.25v1l-.434.25-.432.25-.431-.25-.434-.25v-1l.432-.25h.002zm1.866.424A4 4 0 0 0 12 16a4 4 0 0 0 .732-.076l.133.076v1l-.761.44-.104.06-.865-.5v-1zM18 16v4h-2l3 3 3-3h-2v-4zm-9.896 1.75.865.5v1l-.13.074a8 8 0 0 1-1.6-.902v-.172zm2.597 0 .865.5v1l-.865.5-.865-.5v-1z'
const mdiFilamentUp = 'M12 2a10 10 0 0 0-1.129.08 10 10 0 0 0-1.02.18 10 10 0 0 0-1.314.386A10 10 0 0 0 7.672 3H7.67a10 10 0 0 0-1.295.752 10 10 0 0 0-.754.564 10 10 0 0 0-.98.938 10 10 0 0 0-.598.732l-.125.168a10 10 0 0 0-.541.826l-.035.065a10 10 0 0 0-.87 1.957 10 10 0 0 0-.314 1.314 10 10 0 0 0-.105.932v.008A10 10 0 0 0 2 12a10 10 0 0 0 .053.742v.006a10 10 0 0 0 .105.936 10 10 0 0 0 .315 1.314 10 10 0 0 0 .869 1.957l.035.065a10 10 0 0 0 .541.826l.125.168a10 10 0 0 0 .598.732 10 10 0 0 0 .98.938 10 10 0 0 0 .754.564A10 10 0 0 0 7.67 21h.002a10 10 0 0 0 .865.354 10 10 0 0 0 1.315.386 10 10 0 0 0 1.02.18A10 10 0 0 0 12 22a10 10 0 0 0 1.129-.08 10 10 0 0 0 .59-.104 6 6 0 0 1-.676-2.214l-.61-.352v-1l.434-.25.258-.148a6 6 0 0 1 .607-1.692V16l.127-.074a6 6 0 0 1 1.342-1.559 4 4 0 0 0 .563-1.04l.132-.077.56.322A6 6 0 0 1 19 13a6 6 0 0 1 2.834.713l.008-.03a10 10 0 0 0 .105-.931v-.008A10 10 0 0 0 22 12a10 10 0 0 0-.031-.756l-.002-.012a10 10 0 0 0-.113-.921 10 10 0 0 0-.313-1.301 10 10 0 0 0-.38-1.014l-.007-.014-.008-.013a10 10 0 0 0-.488-.967L20.656 7a10 10 0 0 0-.6-.92 10 10 0 0 0-.697-.848 10 10 0 0 0-.968-.921 10 10 0 0 0-.752-.567 10 10 0 0 0-1.309-.756h-.002a10 10 0 0 0-.865-.367 10 10 0 0 0-1.285-.379h-.002a10 10 0 0 0-1.035-.174l-.079-.01A10 10 0 0 0 12 2m-1.299 2.25.432.25.433.25v1l-.865.5-.433-.25-.432-.25v-1l.268-.154zm2.598 0 .865.5v1l-.865.5-.865-.5v-1zm1.883.414a8 8 0 0 1 1.58.91v.176l-.658.38-.208.12-.865-.5v-1zm-6.342.012.129.074v1L8.537 6l-.433.25-.866-.5v-.172a8 8 0 0 1 1.602-.902M6.805 6.5l.865.5v1l-.865.5-.104-.06L5.94 8V7zm2.597 0 .866.5v1l-.434.25-.432.25-.431-.25L8.537 8V7l.432-.25zM12 6.5l.865.5v1l-.12.07A4 4 0 0 0 12 8a4 4 0 0 0-.732.076L11.135 8V7zm2.598 0 .865.5v1l-.865.5-.866-.5V7zm2.597 0 .866.5v1l-.866.5-.865-.5V7zM5.505 8.75l.866.5v1l-.865.5-.865-.5v-1zm2.599 0 .865.5v.14a4 4 0 0 0-.733 1.284l-.132.076-.866-.5v-1zm7.792 0 .866.5v1l-.866.5-.12-.07a4 4 0 0 0-.745-1.287V9.25zm2.598 0 .865.5v1l-.865.5-.207-.12-.658-.38v-1zM12 10a2 2 0 0 1 2 2 2 2 0 0 1-2 2 2 2 0 0 1-2-2 2 2 0 0 1 2-2m-7.793 1 .865.5v1l-.865.5-.135-.078A8 8 0 0 1 4 12a8 8 0 0 1 .072-.922zm2.598 0 .865.5v1l-.865.5-.104-.06-.762-.44v-1l.762-.44zm10.39 0 .866.5v1l-.866.5-.431-.25-.434-.25v-1zm2.598 0 .154.09A8 8 0 0 1 20 12a8 8 0 0 1-.072.922l-.135.078-.865-.5v-1zM5.506 13.25l.865.5v1l-.865.5-.865-.5v-1zm2.598 0 .132.076a4 4 0 0 0 .733 1.283v.141l-.432.25-.433.25-.866-.5v-1l.434-.25zM19 15l-3 3h2v4h2v-4h2zm-12.195.5.865.5v1l-.865.5-.104-.06L5.94 17v-1l.762-.44zm2.597 0 .432.25.434.25v1l-.434.25-.432.25-.431-.25-.434-.25v-1l.432-.25h.002zm1.866.424A4 4 0 0 0 12 16a4 4 0 0 0 .732-.076l.133.076v1l-.761.44-.104.06-.865-.5v-1zM8.104 17.75l.865.5v1l-.13.074a8 8 0 0 1-1.6-.902v-.172zm2.597 0 .865.5v1l-.865.5-.865-.5v-1z'
const mdiFilamentChange = 'm23.5 18.5-3-3v2h-4v2h4v2zm-9 0 3 3v-2h4v-2h-4v-2zM12 2a10 10 0 0 0-1.129.08 10 10 0 0 0-1.02.18 10 10 0 0 0-1.314.386A10 10 0 0 0 7.672 3H7.67a10 10 0 0 0-1.295.752 10 10 0 0 0-.754.564 10 10 0 0 0-.98.938 10 10 0 0 0-.598.732 10 10 0 0 0-1.57 3.016 10 10 0 0 0-.315 1.314 10 10 0 0 0-.105.932v.008A10 10 0 0 0 2 12q.012.372.053.742v.006a10 10 0 0 0 .105.936 10 10 0 0 0 .315 1.314 10 10 0 0 0 .904 2.022 10 10 0 0 0 .666.994 10 10 0 0 0 .598.732 10 10 0 0 0 .98.938q.364.3.754.564A10 10 0 0 0 7.67 21h.002a10 10 0 0 0 .865.354 10 10 0 0 0 1.315.386 10 10 0 0 0 1.02.18A10 10 0 0 0 12 22a10 10 0 0 0 1.129-.08 10 10 0 0 0 .59-.104 6 6 0 0 1-.676-2.214l-.61-.352v-1l.434-.25.258-.148a6 6 0 0 1 .607-1.692V16l.127-.074a6 6 0 0 1 1.342-1.559 4 4 0 0 0 .563-1.04l.132-.077.56.322A6 6 0 0 1 19 13a6 6 0 0 1 2.834.713l.008-.03a10 10 0 0 0 .105-.931v-.008A10 10 0 0 0 22 12q0-.378-.031-.756l-.002-.012a10 10 0 0 0-.426-2.222 10 10 0 0 0-.38-1.014l-.007-.014-.008-.013a10 10 0 0 0-.488-.967L20.656 7a10 10 0 0 0-2.265-2.69 10 10 0 0 0-2.06-1.322h-.003a10 10 0 0 0-2.15-.746h-.002a10 10 0 0 0-1.114-.183A10 10 0 0 0 12 2m-1.299 2.25.432.25.433.25v1l-.865.5-.433-.25-.432-.25v-1l.268-.154Zm2.598 0 .865.5v1l-.865.5-.865-.5v-1zm1.883.414a8 8 0 0 1 1.58.91v.176l-.658.38-.208.12-.865-.5v-1zm-6.342.012.129.074v1L8.537 6l-.433.25-.866-.5v-.172a8 8 0 0 1 1.602-.902M6.805 6.5l.865.5v1l-.865.5-.104-.06L5.94 8V7Zm2.597 0 .866.5v1l-.434.25-.432.25-.431-.25L8.537 8V7l.432-.25ZM12 6.5l.865.5v1l-.12.07A4 4 0 0 0 12 8a4 4 0 0 0-.732.076L11.135 8V7Zm2.598 0 .865.5v1l-.865.5-.866-.5V7Zm2.597 0 .866.5v1l-.866.5-.865-.5V7ZM5.505 8.75l.866.5v1l-.865.5-.865-.5v-1zm2.599 0 .865.5v.14a4 4 0 0 0-.733 1.284l-.132.076-.866-.5v-1zm7.792 0 .866.5v1l-.866.5-.12-.07a4 4 0 0 0-.745-1.287V9.25Zm2.598 0 .865.5v1l-.865.5-.207-.12-.658-.38v-1zM12 10a2 2 0 1 1 0 4 2 2 0 0 1 0-4m-7.793 1 .865.5v1l-.865.5-.135-.078A8 8 0 0 1 4 12a8 8 0 0 1 .072-.922Zm2.598 0 .865.5v1l-.865.5-.104-.06-.762-.44v-1l.762-.44zm10.39 0 .866.5v1l-.866.5-.431-.25-.434-.25v-1zm2.598 0 .154.09A8 8 0 0 1 20 12a8 8 0 0 1-.072.922l-.135.078-.865-.5v-1ZM5.506 13.25l.865.5v1l-.865.5-.865-.5v-1zm2.598 0 .132.076a4 4 0 0 0 .733 1.283v.141l-.432.25-.433.25-.866-.5v-1l.434-.25Zm-1.3 2.25.866.5v1l-.865.5-.104-.06L5.94 17v-1l.762-.44zm2.598 0 .432.25.434.25v1l-.434.25-.432.25-.431-.25-.434-.25v-1l.432-.25h.002Zm1.866.424A4 4 0 0 0 12 16q.37-.004.732-.076l.133.076v1l-.761.44-.104.06-.865-.5v-1ZM8.104 17.75l.865.5v1l-.13.074a8 8 0 0 1-1.6-.902v-.172Zm2.597 0 .865.5v1l-.865.5-.865-.5v-1z'
const mdiFileImageLock = 'M6 2c-1.11 0-2 .89-2 2v16a2 2 0 0 0 2 2h6v-2H6l6-6 1.21 1.21C13.377 12.674 15.688 11 18 11c.7 0 1.4.2 2 .4V8l-6-6zm7 1.5L18.5 9H13zM8 9a2 2 0 0 1 2 2 2 2 0 0 1-2 2 2 2 0 0 1-2-2 2 2 0 0 1 2-2m10 4c-1.4 0-2.8 1.1-2.8 2.5V17c-.6 0-1.2.6-1.2 1.2v3.5c0 .7.6 1.3 1.2 1.3h5.5c.7 0 1.3-.6 1.3-1.2v-3.5c0-.7-.6-1.3-1.2-1.3v-1.5c0-1.4-1.4-2.5-2.8-2.5m0 1.2c.8 0 1.5.5 1.5 1.3V17h-3v-1.5c0-.8.7-1.3 1.5-1.3'
const mdiFileDocumentLock = 'M12 21.7V18H6v-2h6.9l.3-.3v-.2q0-.75.3-1.5H6v-2h9.1c.8-.6 1.8-1 2.9-1 .7 0 1.4.2 2 .4V8l-6-6H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h6zm1-18.2L18.5 9H13ZM20.8 17v-1.5c0-1.4-1.4-2.5-2.8-2.5s-2.8 1.1-2.8 2.5V17c-.6 0-1.2.6-1.2 1.2v3.5c0 .7.6 1.3 1.2 1.3h5.5c.7 0 1.3-.6 1.3-1.2v-3.5c0-.7-.6-1.3-1.2-1.3m-1.3 0h-3v-1.5c0-.8.7-1.3 1.5-1.3s1.5.5 1.5 1.3z'
const mdiEmergencyStop = 'M12 1 8 5l.05.05 1.48 1.48L12 9V6a5.98 5.98 0 0 1 5.828 4.564l1.93-.517C18.883 6.579 15.733 4 12 4zM6.436 6.264a7.975 7.975 0 0 0-1.36 9.734L2.475 17.5l5.462 1.465.018-.069h.002l.541-2.019.904-3.377-2.6 1.502A6 6 0 0 1 6 12a5.98 5.98 0 0 1 1.84-4.332zm13.627 5.771-.065.018-1.336.357-.691.186-3.373.904 2.601 1.502A5.98 5.98 0 0 1 12 18c-.58 0-1.14-.082-1.67-.234l-.518 1.927c.696.199 1.43.307 2.188.307 2.952 0 5.536-1.614 6.922-4.004l2.603 1.504z'
/**
* Global, static constants.
*/
export const Globals = Object.freeze({
APP_NAME: 'fluidd',
HEADER_HEIGHT: 56,
DEFAULTS: {
CAMERA_URL_STREAM: '/webcam/?action=stream',
CAMERA_URL_SNAPSHOT: '/webcam/?action=snapshot'
},
NETWORK_REQUEST_TIMEOUT: 0,
KLIPPY_RETRY_DELAY: 1500,
CONSOLE_HISTORY_RETENTION: 1000, // total count
CONSOLE_RECEIVE_PREFIX: '',
CONSOLE_SEND_PREFIX: '$ ',
CONSOLE_COMMAND_HISTORY: 20,
CHART_HISTORY_RETENTION: 1200,
CHART_SYSTEM_RETENTION: 600, // system / mcu / sensor charts, in seconds
JOB_HISTORY_LOAD: 100,
JOB_HISTORY_FETCH_CHUNK: 50,
KLIPPY_DISCONNECTED_REDIRECT: '/configuration',
LOCAL_CARDSTATE_STORAGE_KEY: 'cardState', // collapsed or not
LOCAL_CARDLAYOUT_STORAGE_KEY: 'cardLayout2', // Specific layout / enabled / disabled
LOCAL_INSTANCES_STORAGE_KEY: 'appInstances',
MOONRAKER_MIN_VERSION: 'v0.8.0-309',
MOONRAKER_DB: {
fluidd: {
NAMESPACE: 'fluidd',
ROOTS: {
uiSettings: { name: 'uiSettings', dispatch: 'config/initUiSettings' },
macros: { name: 'macros', dispatch: 'macros/initMacros' },
sensors: { name: 'sensors', dispatch: 'sensors/initSensors' },
console: { name: 'console', dispatch: 'console/initConsole' },
charts: { name: 'charts', dispatch: 'charts/initCharts' },
cameras: { name: 'cameras', dispatch: 'webcams/initLegacyCameras', migrate_only: true },
webcams: { name: 'webcams', dispatch: 'webcams/initWebcams' },
layout: { name: 'layout', dispatch: 'layout/initLayout' }
}
},
webcams: {
NAMESPACE: 'webcams',
ROOTS: []
}
},
MOONRAKER_COMPONENTS: {
auth: { name: 'authorization', dispatch: 'auth/init' },
power: { name: 'power', dispatch: 'power/init' },
updateManager: { name: 'update_manager', dispatch: 'version/init' },
history: { name: 'history', dispatch: 'history/init' },
database: { name: 'database', dispatch: 'database/init' },
timelapse: { name: 'timelapse', dispatch: 'timelapse/init' },
announcements: { name: 'announcements', dispatch: 'announcements/init' },
webcams: { name: 'webcam', dispatch: 'webcams/init' },
jobQueue: { name: 'job_queue', dispatch: 'jobQueue/init' },
spoolman: { name: 'spoolman', dispatch: 'spoolman/init' },
sensors: { name: 'sensor', dispatch: 'sensors/init' },
extensions: { name: 'extensions', dispatch: 'extensions/init' }
},
MOONRAKER_AGENTS: {
aldis: {
name: 'aldis',
eventDispatch: 'firmware/onAgentEvent',
klippyDispatch: 'firmware/onKlippyStateChanged'
}
},
// Ordered by weight.
CONFIG_SERVICE_MAP: [
{ filename: 'moonraker.conf', service: 'moonraker', link: 'https://moonraker.readthedocs.io/en/latest/configuration/' },
{ filename: 'webcam.txt', service: 'webcamd' },
{ filename: 'crowsnest.conf', service: 'crowsnest', link: 'https://crowsnest.mainsail.xyz/configuration/sample-config' },
{ filename: 'klipperscreen.conf', service: 'KlipperScreen', link: 'https://klipperscreen.readthedocs.io/en/latest/' },
{ filename: 'sonar.conf', service: 'sonar', link: 'https://github.com/mainsail-crew/sonar' },
{ filename: 'mooncord-webcam.json', service: 'webcamd', link: 'https://github.com/eliteSchwein/mooncord' },
{ prefix: 'mooncord', service: 'MoonCord', link: 'https://github.com/eliteSchwein/mooncord' },
{ filename: 'telegram.conf', service: 'moonraker-telegram-bot', link: 'https://github.com/nlef/moonraker-telegram-bot/wiki/Sample-config' },
{ suffix: '.cfg', service: 'klipper', link: '{klipperDomain}/Config_Reference.html' }
],
SUPPORTED_SERVICES: {
KLIPPER: {
klipper: {
domain: 'https://www.klipper3d.org',
minVersion: 'v0.11.0-257'
},
kalico: {
domain: 'https://docs.kalico.gg',
minVersion: 'v0.11.0-257'
},
'danger-klipper': {
domain: 'https://dangerklipper.io',
minVersion: 'v0.11.0-257'
}
}
},
FILE_DATA_TRANSFER_TYPES: {
files: 'x-fluidd-files',
jobs: 'x-fluidd-jobs'
},
FILTERED_FOLDER_NAMES: ['.git', '.thumbs'],
FILTERED_FILES_PREFIX: ['.thumbs', 'thumbs'],
FILTERED_FILES_EXTENSION: ['.ignoreme'],
KEYBOARD_SHORTCUTS: {
home: 'h',
console: 'c',
gcode_preview: 'p',
jobs: 'j',
history: 'i',
timelapse: 'l',
tune: 't',
diagnostics: 'g',
configure: 'x',
system: 'q',
settings: 's'
},
DOCS_ROOT: 'https://docs.fluidd.xyz',
DOCS_REQUIRED_CONFIGURATION: 'https://docs.fluidd.xyz/features/multiple-printers/',
DOCS_MULTIPLE_INSTANCES: 'https://docs.fluidd.xyz/features/multiple-printers/',
DOCS_MOONRAKER_COMPONENTS: 'https://docs.fluidd.xyz/configuration/#moonraker',
DOCS_AUTH_LOST_PASSWORD: 'https://docs.fluidd.xyz/features/authorization/#lost-password',
DOCS_AUTH: 'https://docs.fluidd.xyz/features/authorization/',
GITHUB_REPO: 'https://github.com/fluidd-core/fluidd'
})
export const Icons = Object.freeze({
dash: mdiViewDashboardOutline,
account: mdiAccount,
accountSettings: mdiAccountCogOutline,
addAccount: mdiAccountPlus,
help: mdiHelpCircle,
motion: mdiMotionOutline,
limits: mdiArrowHorizontalLock,
send: mdiSend,
open: mdiOpenInApp,
move: mdiFolderMove,
tabs: mdiCheckboxMultipleBlank,
menu: mdiDotsVertical,
menuAlt: mdiMenu,
dots: mdiDotsHorizontal,
dotsGrid: mdiDotsGrid,
drag: mdiDrag,
chart: mdiChartTimelineVariant,
power: mdiPower,
powerCycle: mdiPowerCycle,
powerOn: mdiToggleSwitch,
powerOff: mdiToggleSwitchOffOutline,
home: mdiHome,
close: mdiClose,
refresh: mdiRefresh,
restart: mdiRestart,
restartAlert: mdiRestartAlert,
update: mdiUpdate,
warning: mdiAlert,
error: mdiHandBackRight,
thermometer: mdiThermometerLow,
bell: mdiBellOutline,
fireAlert: mdiFireAlert,
snowflake: mdiSnowflake,
snowflakeAlert: mdiSnowflakeAlert,
circle: mdiCircle,
blankCircle: mdiCheckboxBlankCircleOutline,
markedCircle: mdiRadioboxMarked,
checkedCircle: mdiCheckCircleOutline,
checkboxBlank: mdiCheckboxBlankOutline,
checkboxMarked: mdiCheckboxMarkedOutline,
alertCircle: mdiAlertCircle,
folderAdd: mdiFolderPlus,
folderUp: mdiFolderUpload,
folderUpload: mdiFolderArrowUp,
folder: mdiFolder,
folderLock: mdiFolderLock,
fileUpload: mdiUpload,
fileAdd: mdiFilePlus,
inProgress: mdiCircleSlice3,
progressUpload: mdiProgressUpload,
progressQuestion: mdiProgressQuestion,
up: mdiArrowUp,
down: mdiArrowDown,
left: mdiArrowLeft,
right: mdiArrowRight,
tune: mdiTune,
zUp: mdiArrowExpandUp,
zDown: mdiArrowCollapseDown,
expandHorizontal: mdiArrowExpandHorizontal,
expandVertical: mdiArrowExpandVertical,
cog: mdiCog,
cogs: mdiCogs,
save: mdiContentSaveOutline,
saveAs: mdiContentSaveEditOutline,
saveDefault: mdiContentSaveCogOutline,
estop: mdiEmergencyStop,
fire: mdiFire,
tools: mdiHammerWrench,
minus: mdiMinus,
plus: mdiPlus,
check: mdiCheck,
console: mdiConsole,
clock: mdiClockOutline,
formatLineSpacing: mdiFormatLineSpacing,
layersTripleOutline: mdiLayersTripleOutline,
chevronUp: mdiChevronUp,
chevronDown: mdiChevronDown,
chevronRight: mdiChevronRight,
chevronLeft: mdiChevronLeft,
timer: mdiTimerSand,
fileCode: mdiFileCodeOutline,
fileRefresh: mdiFileRefreshOutline,
files: mdiFileTableOutline,
file: mdiFile,
fileLock: mdiFileLock,
fileCancel: mdiFileCancel,
fileExport: mdiFileExportOutline,
pause: mdiPause,
cancel: mdiWindowClose,
cancelled: mdiCancel,
play: mdiPlay,
resume: mdiPlay,
stop: mdiStop,
reprint: mdiPrinter,
printer: mdiPrinter,
download: mdiDownload,
rename: mdiFormTextbox,
duplicate: mdiContentDuplicate,
sync: mdiSync,
stopwatch: mdiTimerOutline,
delete: mdiDelete,
camera: mdiCamera,
fan: mdiFan,
pencil: mdiPencil,
pencilLock: mdiPencilLock,
magnify: mdiMagnify,
magnifyPlus: mdiMagnifyPlus,
magnifyMinus: mdiMagnifyMinus,
printer3d: mdiPrinter3d,
printer3dNozzle: mdiPrinter3dNozzleOutline,
printer3dNozzleAlert: mdiPrinter3dNozzleAlertOutline,
bedMesh: mdiViewGridOutline,
host: mdiDesktopTower,
history: mdiHistory,
filter: mdiFilterOutline,
commit: mdiSourceCommit,
cloudCheck: mdiCloudCheck,
cloudAlert: mdiCloudAlert,
cubeScan: mdiCubeScan,
consoleLine: mdiConsoleLine,
lock: mdiLock,
lockOpen: mdiLockOpenVariant,
lockReset: mdiLockReset,
reset: mdiRestore,
resetDefaults: mdiCogCounterclockwise,
tempError: mdiThermometerAlert,
contentCopy: mdiContentCopy,
apps: mdiApps,
shieldAccount: mdiShieldAccount,
retract: mdiArrowUpBold,
extrude: mdiArrowDownBold,
codeJson: mdiCodeJson,
desktopTower: mdiDesktopTower,
harddisk: mdiHarddisk,
microSd: mdiMicroSd,
message: mdiMessageTextOutline,
list: mdiFormatListBulleted,
fullScreen: mdiFullscreen,
video: mdiFileVideoOutline,
snooze: mdiBellSleep,
chip: mdiChip,
viewHeadline: mdiViewHeadline,
absolutePositioning: mdiAxisArrow,
relativePositioning: mdiVectorLine,
openInNew: mdiOpenInNew,
imageSizeSelectLarge: mdiImageSizeSelectLarge,
listStatus: mdiListStatus,
previousLayer: mdiLayersMinus,
currentLayer: mdiLayers,
nextLayer: mdiLayersPlus,
moves: mdiVectorLine,
extrusions: mdiPrinter3dNozzle,
retractions: mdiSwapVertical,
tableColumn: mdiTableColumn,
parts: mdiShape,
folderOpen: mdiFolderOpen,
fileImage: mdiFileImage,
fileImageLock: mdiFileImageLock,
fileDocument: mdiFileDocument,
fileDocumentLock: mdiFileDocumentLock,
fileZip: mdiArchive,
fileZipLock: mdiArchiveLock,
fileZipAdd: mdiArchivePlus,
filament: mdiFilament,
loadFilament: mdiFilamentDown,
unloadFilament: mdiFilamentUp,
changeFilament: mdiFilamentChange,
cleanNozzle: mdiToothbrush,
parkToolhead: mdiParking,
jobQueue: mdiTrayFull,
enqueueJob: mdiTrayPlus,
sensors: mdiGauge,
screenshot: mdiMonitorScreenshot,
zRotateClockwise: mdiRotateRight,
zRotateCounterclockwise: mdiRotateLeft,
devices: mdiUsb,
beacon: mdiMagnet,
pidCalibrate: mdiSineWave,
database: mdiDatabase,
dockTop: mdiDockTop,
dockBottom: mdiDockBottom,
featureType: mdiTagMultipleOutline,
speedometer: mdiSpeedometer,
mmu: mdiMulticast,
mmuEditTtgMap: mdiStateMachine,
mmuEditGateMap: mdiDatabaseEdit,
mmuRecoverState: mdiCogRefresh,
mmuMaintenance: mdiWrenchCog,
mmuPrintStats: mdiNoteText,
mmuSyncSpoolman: mdiRefresh,
mmuChangeTool: mdiAxisArrow,
mmuCheckAllGates: mdiCheckAll,
mmuPreload: mdiDownloadOutline,
mmuEject: mdiEject,
mmuCheckGate: mdiCheck,
mmuRecover: mdiAutoFix,
mmuUnlock: mdiThermometerPlus,
mmuUnload: mdiUpload,
mmuLoad: mdiDownload,
mmuLoadSpeed: mdiSpeedometer,
mmuResetSpeed: mdiRestart,
mmuDecrementSpeed: mdiMinus,
mmuIncrementSpeed: mdiPlus,
mmuChooseSpool: mdiAdjust,
mmuSync: mdiSync,
mmuUnsync: mdiSyncOff,
mmuLoad2: mdiDownloadOutline,
mmuUnload2: mdiUploadOutline,
mmuOn: mdiEngineOutline,
mmuOff: mdiEngineOffOutline,
mmuHome: mdiHome,
mmuGrip: mdiArrowCollapseHorizontal,
mmuRelease: mdiArrowExpandHorizontal,
mmuHome2: mdiHomeOutline,
mmuUp: mdiArrowUpThin,
mmuDown: mdiArrowDownThin,
mmuMove: mdiArrowLeftRight,
mmuUpdateLeds: mdiContentSaveSettingsOutline,
mmuError: mdiInformationOutline,
mmuSelectGate: mdiSwapHorizontal,
mmuHumidity: mdiWater,
mmuTemp: mdiThermometer,
mmuHeater: mdiHeatingCoil,
mmuDryer: mdiRotateOrbit,
afcIcon: afcIconLogo,
afcIconBoxTurtle,
afcIconHtlf,
afcIconNightOwl,
afcIconQuattroBox,
afcIconInfinity,
afcHelp: mdiLifebuoy,
afcTurnOffLed: mdiLightbulbOnOutline,
afcTurnOnLed: mdiLightbulbOutline,
afcCalibration: mdiWrench,
afcSettings: mdiVariable,
afcDebugJson: mdiArrowDownBold,
afcUnloadLane: mdiArrowUpBold,
afcLoadLane: mdiArrowDownBold,
afcEjectFilament: mdiEject,
afcSelectTool: mdiRadioboxBlank,
afcUnselectTool: mdiSwapHorizontalVariant,
})
export const Waits = Object.freeze({
onServiceRestart: 'onServiceRestart',
onServiceStop: 'onServiceStop',
onServiceStart: 'onServiceStart',
onDevicePowerToggle: 'onDevicePowerToggle',
onHomeAll: 'onHomeAll',
onHomeXY: 'onHomeXY',
onHomeX: 'onHomeX',
onHomeY: 'onHomeY',
onHomeZ: 'onHomeZ',
onQGL: 'onQGL',
onZTilt: 'onZTilt',
onAxisTwistCompensationCalibrate: 'onAxisTwistCompensationCalibrate',
onBedScrewsAdjust: 'onBedScrewAdjust',
onDatabaseList: 'onDatabaseList',
onDatabaseCompact: 'onDatabaseCompact',
onDatabasePostBackup: 'onDatabasePostBackup',
onDatabaseRestore: 'onDatabaseRestore',
onDatabaseDeleteBackup: 'onDatabaseDeleteBackup',
onBedScrewsCalculate: 'onBedScrewsCalculate',
onBedTiltCalibrate: 'onBedTiltCalibrate',
onCartographerAxisTwistCompensation: 'onCartographerAxisTwistCompensation',
onCartographerScanCalibrate: 'onCartographerScanCalibrate',
onCartographerTouchCalibrate: 'onCartographerTouchCalibrate',
onDeltaCalibrate: 'onDeltaCalibrate',
onPrintPause: 'onPrintPause',
onPrintCancel: 'onPrintCancel',
onPrintResume: 'onPrintResume',
onMacro: 'onMacro',
onSetSpeed: 'onSetSpeed',
onSetFlow: 'onSetFlow',
onSetPressureAdvance: 'onSetPressureAdvance',
onSetFanSpeed: 'onSetFanSpeed',
onSetOutputPin: 'onSetOutputPin',
onZAdjust: 'onZAdjust',
onZApply: 'onZApply',
onSaveConfig: 'onSaveConfig',
onRetract: 'onRetract',
onExtrude: 'onExtrude',
onMeshCalibrate: 'onMeshCalibrate',
onKlipperRestart: 'klipperRestart',
onKlipperFirmwareRestart: 'klipperFirmwareRestart',
onSetVelocity: 'onSetVelocity',
onSetAcceleration: 'onSetAcceleration',
onSetAccelToDecel: 'onSetAccelToDecel',
onSetMinimumCruiseRatio: 'onSetMinimumCruiseRatio',
onSetSquareCornerVelocity: 'onSetSquareCornerVelocity',
onSetRetractLength: 'onSetRetractLength',
onSetRetractSpeed: 'onSetRetractSpeed',
onSetUnretractSpeed: 'onSetUnretractSpeed',
onSetUnretractExtraLength: 'onSetUnretractExtraLength',
onSetZHopHeight: 'onSetZHopHeight',
onExtruderChange: 'onExtruderChange',
onLoadLanguage: 'onLoadLanguage',
onFileSystem: 'onFileSystem',
onFileSystemRoots: 'onFileSystemRoots',
onJobQueue: 'onJobQueue',
onHistoryExport: 'onHistoryExport',
onTimelapseSaveFrame: 'onTimelapseSaveFrame',
onManualProbe: 'onManualProbe',
onProbeCalibrate: 'onProbeCalibrate',
onProbeAccuracy: 'onProbeAccuracy',
onZEndstopCalibrate: 'onZEndstopCalibrate',
onQueryEndstops: 'onQueryEndstops',
onQueryProbe: 'onQueryProbe',
onVersionRefresh: 'onVersionRefresh',
onFirmwareRefresh: 'onFirmwareRefresh',
onSyncExtruder: 'onSyncExtruder',
onStepperEnable: 'onStepperEnable',
onMachinePeripheralsUsb: 'onMachinePeripheralsUsb',
onMachinePeripheralsSerial: 'onMachinePeripheralsSerial',
onMachinePeripheralsVideo: 'onMachinePeripheralsVideo',
onMachinePeripheralsCanbus: 'onMachinePeripheralsCanbus',
onBeaconCalibrate: 'onBeaconCalibrate',
onMmuStats: 'onMmuStats',
onMmuSpoolman: 'onMmuSpoolman',
onMmuCheckGates: 'onMmuCheckGates',
onMmuPreload: 'onMmuPreload',
onMmuSelect: 'onMmuSelect',
onMmuEject: 'onMmuEject',
onMmuCheckGate: 'onMmuCheckGate',
onMmuChangeTool: 'onMmuChangeTool',
onMmuRecover: 'onMmuRecover',
onMmuUnlock: 'onMmuUnlock',
onMmuUnload: 'onMmuUnload',
onMmuLoad: 'onMmuLoad',
onMmuTtgMap: 'onMmuTtgMap',
onMmuGateMap: 'onMmuGateMap',
onMmuSyncGearMotor: 'onMmuSyncGearMotor',
onMmuMotorsOn: 'onMmuMotorsOn',
onMmuMotorsOff: 'onMmuMotorsOff',
onMmuHome: 'onMmuHome',
onMmuGrip: 'onMmuGrip',
onMmuRelease: 'onMmuRelease',
onMmuServo: 'onMmuServo',
onMmuLed: 'onMmuLed',
onMmuTestConfig: 'onMmuTestConfig'
})
export const SupportedLocales = Object.freeze([
{ name: 'English', code: 'en' },
{ name: 'Afrikaans', code: 'af' },
{ name: 'Čeština', code: 'cs' },
{ name: '简体中文', code: 'zh-CN' },
{ name: '繁體中文(香港)', code: 'zh-HK' },
{ name: 'Deutsch', code: 'de' },
{ name: 'Español', code: 'es' },
{ name: 'Français', code: 'fr' },
{ name: 'Italiano', code: 'it' },
{ name: 'Magyar', code: 'hu' },
{ name: 'Nederlands', code: 'nl' },
{ name: 'Polski', code: 'pl' },
{ name: 'Português', code: 'pt' },
{ name: 'Português (Brasil)', code: 'pt-BR' },
{ name: 'Русский', code: 'ru' },
{ name: 'Slovenščina', code: 'sl' },
{ name: 'Türkçe', code: 'tr' },
{ name: 'Українська', code: 'uk' },
{ name: '한국어', code: 'ko' },
{ name: 'العربية', code: 'ar' },
{ name: '日本語', code: 'ja' },
{ name: 'தமிழ்', code: 'ta' }
])
export const SupportedImageFormats = Object.freeze([
'.bmp',
'.gif',
'.jfif',
'.jpeg',
'.jpg',
'.png',
'.svg',
'.tif',
'.tiff',
'.webp'
])
export const SupportedMarkdownFormats = Object.freeze([
'.markdown',
'.md',
'.mdown'
])
export const SupportedVideoFormats = Object.freeze([
'.mp4',
'.mpeg',
'.mpg'
])
export type DateTimeFormat = {
locales?: Intl.LocalesArgument,
options: Intl.DateTimeFormatOptions,
suffix?: string
}
export const DateFormats = Object.freeze<Record<string, DateTimeFormat>>({
iso: {
locales: 'lt',
options: { day: '2-digit', month: '2-digit', year: 'numeric' },
suffix: ' (ISO 8601)'
},
digits2: {
options: { day: '2-digit', month: '2-digit', year: 'numeric' }
},
short: {
options: { day: '2-digit', month: 'short', year: 'numeric' }
}
})
export const TimeFormats = Object.freeze<Record<string, DateTimeFormat>>({
iso: {
locales: 'lt',
options: { hour: '2-digit', minute: '2-digit', hour12: false },
suffix: ' (ISO 8601)'
},
hours12: {
options: { hour: '2-digit', minute: '2-digit', hour12: true }
},
hours24: {
options: { hour: '2-digit', minute: '2-digit', hour12: false }
}
})
export interface ColorGenOption {
base: string
count: number
hsplit?: number
lsplit?: number
}
export type PaletteOption = string[] | ColorGenOption
export const DefaultPalettes = Object.freeze<Record<string, PaletteOption>>({
heater: { base: '#ff5252', hsplit: 20, count: 4 },
bed: { base: '#1fb0ff', hsplit: 20, count: 2 },
fan: { base: '#4CAF50', hsplit: 20, count: 4 },
sensor: ['#D67600', '#830EE3', '#B366F2', '#E06573', '#E38819', '#795548', '#607D8B', '#3F51B5', '#F50057']
})