@fibery/ui-kit 2.0.1 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/{eslint.config.mjs → esfint.config.mjs} +1 -1
- package/package.json +10 -7
- package/scripts/generate-icons.mjs +42 -34
- package/src/a11y-color.test.ts +62 -55
- package/src/a11y-color.ts +40 -37
- package/src/actions-menu/actions-menu-item.tsx +1 -1
- package/src/actions-menu/actions-menu.tsx +3 -3
- package/src/ai/model.tsx +1 -1
- package/src/ai/temperature.tsx +1 -1
- package/src/animated-height-container.tsx +2 -2
- package/src/antd/{AutoComplete.js → AutoComplete.ts} +1 -1
- package/src/antd/Tabs.js +2 -2
- package/src/antd/ant-upload.tsx +4 -4
- package/src/antd/input-number.tsx +2 -2
- package/src/antd/input.tsx +2 -2
- package/src/antd/styles.ts +8 -8
- package/src/antd/utils.tsx +12 -23
- package/src/app-icon-with-fallback.tsx +31 -8
- package/src/app-icon.tsx +21 -8
- package/src/avatar.tsx +8 -5
- package/src/axis-header.tsx +2 -2
- package/src/banner/banner-action.tsx +23 -0
- package/src/banner/banner-context.tsx +4 -0
- package/src/banner/banner-variant.ts +1 -0
- package/src/banner/banner.tsx +101 -0
- package/src/box.tsx +3 -1
- package/src/breadcrumb.tsx +14 -11
- package/src/button/base-button.tsx +2 -2
- package/src/button/make-button-colors.ts +2 -2
- package/src/canvas-colors.ts +133 -0
- package/src/card-container.tsx +1 -1
- package/src/checkbox-multi-select.tsx +4 -4
- package/src/checkbox.tsx +21 -9
- package/src/color-filter.test.ts +155 -0
- package/src/color-filter.ts +156 -0
- package/src/color-picker/ColorPickerOrLoader.js +1 -1
- package/src/color-picker/{SliderPointer.js → SliderPointer.tsx} +3 -2
- package/src/color-picker/index.js +7 -4
- package/src/color-picker/swatch.tsx +5 -4
- package/src/color-utils.test.ts +246 -116
- package/src/color-utils.ts +156 -144
- package/src/command-menu/index.tsx +1 -1
- package/src/date-picker/autocomplete.tsx +1 -0
- package/src/date-picker/date-range-picker-popup-content.tsx +1 -1
- package/src/date-picker/date-range-picker.tsx +1 -1
- package/src/date-picker/fake-date-input.tsx +10 -4
- package/src/date-picker/relative-date-picker.tsx +32 -3
- package/src/date-picker/single-date-picker.tsx +13 -3
- package/src/date-picker/styles.ts +12 -12
- package/src/date-picker/types.ts +2 -0
- package/src/design-system/alpha.ts +0 -15
- package/src/design-system/animation.ts +24 -5
- package/src/design-system/colors-css.ts +4 -4
- package/src/design-system/colors-js.test.ts +167 -153
- package/src/design-system/colors-js.ts +30 -85
- package/src/design-system/colors.test.ts +5 -5
- package/src/design-system/colors.ts +720 -402
- package/src/design-system/layout.ts +1 -0
- package/src/design-system/theme.test.ts +13 -68
- package/src/design-system/theme.ts +24 -76
- package/src/design-system/vars.test.ts +64 -1681
- package/src/design-system/vars.ts +43 -29
- package/src/design-system.ts +4 -4
- package/src/dnd.tsx +1 -1
- package/src/{utils-dom.ts → dom-utils.ts} +19 -0
- package/src/dot.tsx +2 -2
- package/src/emoji-picker/app-icon-picker.tsx +2 -1
- package/src/emoji-picker/emoji-picker-content-with-color.tsx +4 -1
- package/src/emoji-picker/emoji-picker.tsx +3 -0
- package/src/emoji-picker/icon-emoji-picker.tsx +1 -1
- package/src/emoji-picker/primitives/emoji.tsx +3 -2
- package/src/favorites-icon.tsx +1 -1
- package/src/fibermoji-placeholder.tsx +6 -1
- package/src/file-item/add-query-param.ts +13 -0
- package/src/file-item/file-menu-items.tsx +2 -1
- package/src/file-item/file-preview-actions.tsx +14 -2
- package/src/file-item.tsx +5 -5
- package/src/flags.ts +3 -0
- package/src/header-layout.tsx +9 -2
- package/src/html-styles.ts +3 -3
- package/src/hue-shift.test.ts +17 -4
- package/src/icons/Icon.tsx +5 -2
- package/src/icons/ast/Abort.ts +8 -4
- package/src/icons/ast/AccessTemplate.ts +8 -4
- package/src/icons/ast/Activity.ts +8 -4
- package/src/icons/ast/ActivityFilled.ts +8 -4
- package/src/icons/ast/ActivityLog.ts +8 -4
- package/src/icons/ast/Add.ts +8 -4
- package/src/icons/ast/AddAfter.ts +8 -4
- package/src/icons/ast/AddBefore.ts +8 -4
- package/src/icons/ast/AddCompact.ts +8 -4
- package/src/icons/ast/AddDatabase.ts +8 -4
- package/src/icons/ast/AddGroup.ts +8 -4
- package/src/icons/ast/AddIntegration.ts +8 -4
- package/src/icons/ast/AddReactions.ts +8 -4
- package/src/icons/ast/AiAssistant.ts +8 -4
- package/src/icons/ast/AiAssistantFilled.ts +8 -4
- package/src/icons/ast/AiAvatar.ts +8 -4
- package/src/icons/ast/AiFiberyBuild.ts +8 -4
- package/src/icons/ast/AiSearch.ts +8 -4
- package/src/icons/ast/AlertTriangle.ts +8 -4
- package/src/icons/ast/Anthropic.ts +8 -4
- package/src/icons/ast/App.ts +8 -4
- package/src/icons/ast/AppDetails.ts +8 -4
- package/src/icons/ast/AppStore.ts +8 -4
- package/src/icons/ast/AppStoreOneColor.ts +8 -4
- package/src/icons/ast/AppTemplates.ts +8 -4
- package/src/icons/ast/AppWebhooks.ts +8 -4
- package/src/icons/ast/AppWiki.ts +8 -4
- package/src/icons/ast/AppearanceAuto.ts +8 -4
- package/src/icons/ast/AppearanceDark.ts +8 -4
- package/src/icons/ast/AppearanceLight.ts +8 -4
- package/src/icons/ast/Apple.ts +8 -4
- package/src/icons/ast/ArrowBarDown.ts +12 -0
- package/src/icons/ast/ArrowBarLeft.ts +8 -4
- package/src/icons/ast/ArrowBarRight.ts +8 -4
- package/src/icons/ast/ArrowBarUp.ts +12 -0
- package/src/icons/ast/ArrowBottom.ts +8 -4
- package/src/icons/ast/ArrowCollapse.ts +8 -4
- package/src/icons/ast/ArrowCollapseVertical.ts +8 -4
- package/src/icons/ast/ArrowForward.ts +8 -4
- package/src/icons/ast/ArrowLeft.ts +8 -4
- package/src/icons/ast/ArrowRight.ts +8 -4
- package/src/icons/ast/ArrowTop.ts +8 -4
- package/src/icons/ast/ArrowUpCircle.ts +8 -4
- package/src/icons/ast/ArrowsRightLeft.ts +8 -4
- package/src/icons/ast/AskForInput.ts +8 -4
- package/src/icons/ast/Asterisk.ts +8 -4
- package/src/icons/ast/Atom.ts +8 -4
- package/src/icons/ast/AutomationsCancelled.ts +8 -4
- package/src/icons/ast/AutomationsDisabled.ts +8 -4
- package/src/icons/ast/AutomationsError.ts +8 -4
- package/src/icons/ast/AutomationsInProgress.ts +8 -4
- package/src/icons/ast/AutomationsNotStarted.ts +8 -4
- package/src/icons/ast/AutomationsSuccess.ts +8 -4
- package/src/icons/ast/Back.ts +8 -4
- package/src/icons/ast/BacklogIcon.ts +8 -4
- package/src/icons/ast/BatchActionsIcon.ts +8 -4
- package/src/icons/ast/BellCircle.ts +8 -4
- package/src/icons/ast/BellFilled.ts +8 -4
- package/src/icons/ast/BellOff.ts +8 -4
- package/src/icons/ast/BellRinging.ts +8 -4
- package/src/icons/ast/BellX.ts +8 -4
- package/src/icons/ast/Bolt.ts +8 -4
- package/src/icons/ast/BringForward.ts +8 -4
- package/src/icons/ast/BringToFront.ts +8 -4
- package/src/icons/ast/Cards.ts +8 -4
- package/src/icons/ast/Chat.ts +8 -4
- package/src/icons/ast/ChatAi.ts +8 -4
- package/src/icons/ast/ChatBubble.ts +8 -4
- package/src/icons/ast/ChatFloat.ts +8 -4
- package/src/icons/ast/ChatSidebar.ts +8 -4
- package/src/icons/ast/CheckCircle.ts +8 -4
- package/src/icons/ast/CheckCircleFilled.ts +8 -4
- package/src/icons/ast/Checked.ts +8 -4
- package/src/icons/ast/Clean.ts +8 -4
- package/src/icons/ast/Clear.ts +8 -4
- package/src/icons/ast/ClearInputFilled.ts +8 -4
- package/src/icons/ast/ClearValue.ts +8 -4
- package/src/icons/ast/Clock.ts +8 -4
- package/src/icons/ast/ClockAlarm.ts +8 -4
- package/src/icons/ast/ClockForward.ts +8 -4
- package/src/icons/ast/Close.ts +8 -4
- package/src/icons/ast/CollapseAll.ts +8 -4
- package/src/icons/ast/CollapseAllHorizontal.ts +8 -4
- package/src/icons/ast/ColorCoding.ts +8 -4
- package/src/icons/ast/ColorCodingFilled.ts +8 -4
- package/src/icons/ast/Columns.ts +8 -4
- package/src/icons/ast/Columns2.ts +8 -4
- package/src/icons/ast/Columns4.ts +8 -4
- package/src/icons/ast/CommentBubble.ts +8 -4
- package/src/icons/ast/Copy.ts +8 -4
- package/src/icons/ast/Create.ts +8 -4
- package/src/icons/ast/CreditsFilled.ts +8 -4
- package/src/icons/ast/CrossCircle.ts +8 -4
- package/src/icons/ast/Crosshair.ts +8 -4
- package/src/icons/ast/Csv.ts +8 -4
- package/src/icons/ast/Database.ts +8 -4
- package/src/icons/ast/DatabaseOff.ts +8 -4
- package/src/icons/ast/DatabaseStroke.ts +8 -4
- package/src/icons/ast/DateRange.ts +8 -4
- package/src/icons/ast/Delete.ts +8 -4
- package/src/icons/ast/Demo.ts +8 -4
- package/src/icons/ast/Dependency.ts +8 -4
- package/src/icons/ast/Dividers.ts +8 -4
- package/src/icons/ast/Document.ts +8 -4
- package/src/icons/ast/DoubleArrowLeft.ts +8 -4
- package/src/icons/ast/DoubleArrowRight.ts +8 -4
- package/src/icons/ast/DoubleLine.ts +8 -4
- package/src/icons/ast/DragBlockHandle.ts +8 -4
- package/src/icons/ast/DragBlockHandleSingle.ts +8 -4
- package/src/icons/ast/DragHandle.ts +8 -4
- package/src/icons/ast/Duplicate.ts +8 -4
- package/src/icons/ast/DynamicFilterValue.ts +8 -4
- package/src/icons/ast/EditValue.ts +8 -4
- package/src/icons/ast/Email.ts +8 -4
- package/src/icons/ast/EmojiDelete.ts +8 -4
- package/src/icons/ast/EntityCreate.ts +8 -4
- package/src/icons/ast/EntityCreateFilled.ts +8 -4
- package/src/icons/ast/EntityMerge.ts +8 -4
- package/src/icons/ast/Equation.ts +8 -4
- package/src/icons/ast/ExpandAll.ts +8 -4
- package/src/icons/ast/ExpandAllHorizontal.ts +8 -4
- package/src/icons/ast/Export.ts +8 -4
- package/src/icons/ast/ExtensionAssignments.ts +8 -4
- package/src/icons/ast/ExtensionAvatar.ts +8 -4
- package/src/icons/ast/ExtensionComments.ts +8 -4
- package/src/icons/ast/ExtensionFiles.ts +8 -4
- package/src/icons/ast/ExtensionReferences.ts +8 -4
- package/src/icons/ast/ExtensionWorkflow.ts +8 -4
- package/src/icons/ast/Eye.ts +8 -4
- package/src/icons/ast/Favorites.ts +8 -4
- package/src/icons/ast/FavoritesChecked.ts +8 -4
- package/src/icons/ast/FavoritesOff.ts +8 -4
- package/src/icons/ast/FiberyDesktopApp.ts +8 -4
- package/src/icons/ast/FiberyMono.ts +8 -4
- package/src/icons/ast/FieldUnit.ts +8 -4
- package/src/icons/ast/Fields.ts +8 -4
- package/src/icons/ast/Figma.ts +8 -4
- package/src/icons/ast/FileArchive.ts +8 -4
- package/src/icons/ast/FileBroken.ts +8 -4
- package/src/icons/ast/FileCounter.ts +8 -4
- package/src/icons/ast/FileDocument.ts +8 -4
- package/src/icons/ast/FileDownload.ts +8 -4
- package/src/icons/ast/FileImage.ts +8 -4
- package/src/icons/ast/FileMultiple.ts +8 -4
- package/src/icons/ast/FileOther.ts +8 -4
- package/src/icons/ast/FilePresentation.ts +8 -4
- package/src/icons/ast/FileTable.ts +8 -4
- package/src/icons/ast/FileUpload.ts +8 -4
- package/src/icons/ast/FileVideo.ts +8 -4
- package/src/icons/ast/Filter.ts +8 -4
- package/src/icons/ast/FitToScreen.ts +8 -4
- package/src/icons/ast/FocusMode.ts +8 -4
- package/src/icons/ast/FocusModeOff.ts +8 -4
- package/src/icons/ast/Folder.ts +8 -4
- package/src/icons/ast/FolderFavorite.ts +12 -0
- package/src/icons/ast/FormWithCover.ts +8 -4
- package/src/icons/ast/FormWithoutCover.ts +8 -4
- package/src/icons/ast/FullscreenModeOffIcon.ts +8 -4
- package/src/icons/ast/FullscreenModeOn.ts +8 -4
- package/src/icons/ast/FullscreenModeOnIcon.ts +8 -4
- package/src/icons/ast/Gift.ts +8 -4
- package/src/icons/ast/Github.ts +8 -4
- package/src/icons/ast/Gitlab.ts +8 -4
- package/src/icons/ast/Globe.ts +8 -4
- package/src/icons/ast/GlobeSimple.ts +8 -4
- package/src/icons/ast/GlobeUnpublish.ts +8 -4
- package/src/icons/ast/GoTo.ts +8 -4
- package/src/icons/ast/GoogleDrive.ts +8 -4
- package/src/icons/ast/GoogleMap.ts +8 -4
- package/src/icons/ast/GraduationCapFilled.ts +8 -4
- package/src/icons/ast/Headphones.ts +8 -4
- package/src/icons/ast/HeadphonesAi.ts +8 -4
- package/src/icons/ast/Hide.ts +8 -4
- package/src/icons/ast/Highlights.ts +8 -4
- package/src/icons/ast/Hint.ts +8 -4
- package/src/icons/ast/Home.ts +8 -4
- package/src/icons/ast/HomeFilled.ts +8 -4
- package/src/icons/ast/ImageXmark.ts +8 -4
- package/src/icons/ast/Import.ts +8 -4
- package/src/icons/ast/ImportFilled.ts +8 -4
- package/src/icons/ast/InfoCircle.ts +8 -4
- package/src/icons/ast/InfoCircleFilled.ts +8 -4
- package/src/icons/ast/Integration.ts +8 -4
- package/src/icons/ast/IntegrationsFilled.ts +8 -4
- package/src/icons/ast/IntegrationsIntegrationDiscourseColor.ts +8 -4
- package/src/icons/ast/IntegrationsIntegrationIntercomColor.ts +8 -4
- package/src/icons/ast/IntegrationsIntegrationSlackColor.ts +8 -4
- package/src/icons/ast/IntegrationsIntegrationZendeskColor.ts +8 -4
- package/src/icons/ast/Intercom.ts +12 -0
- package/src/icons/ast/InvitePeople.ts +8 -4
- package/src/icons/ast/Items.ts +8 -4
- package/src/icons/ast/ItemsTimeline.ts +8 -4
- package/src/icons/ast/Jira.ts +8 -4
- package/src/icons/ast/Key.ts +8 -4
- package/src/icons/ast/KeyboardHideDown.ts +8 -4
- package/src/icons/ast/Lab.ts +8 -4
- package/src/icons/ast/LayoutDouble.ts +8 -4
- package/src/icons/ast/LayoutMultiple.ts +8 -4
- package/src/icons/ast/LayoutSingle.ts +8 -4
- package/src/icons/ast/LeftPanel.ts +8 -4
- package/src/icons/ast/LevelPlus.ts +8 -4
- package/src/icons/ast/Levels.ts +8 -4
- package/src/icons/ast/LineDivider.ts +8 -4
- package/src/icons/ast/LineJump.ts +8 -4
- package/src/icons/ast/Link.ts +8 -4
- package/src/icons/ast/LocationEdit.ts +8 -4
- package/src/icons/ast/Lock.ts +8 -4
- package/src/icons/ast/LockOutline.ts +8 -4
- package/src/icons/ast/Logout.ts +8 -4
- package/src/icons/ast/Loom.ts +8 -4
- package/src/icons/ast/LoupeZoom.ts +8 -4
- package/src/icons/ast/LoupeZoomIn.ts +8 -4
- package/src/icons/ast/LoupeZoomOut.ts +8 -4
- package/src/icons/ast/ManyPeople.ts +8 -4
- package/src/icons/ast/MapMode.ts +8 -4
- package/src/icons/ast/Markdown.ts +8 -4
- package/src/icons/ast/MenuCollapser.ts +8 -4
- package/src/icons/ast/Mermaid.ts +8 -4
- package/src/icons/ast/MessagePlus.ts +8 -4
- package/src/icons/ast/MessagePlusSquare.ts +8 -4
- package/src/icons/ast/Milestones.ts +8 -4
- package/src/icons/ast/Minus.ts +8 -4
- package/src/icons/ast/Miro.ts +8 -4
- package/src/icons/ast/MirrorOff.ts +8 -4
- package/src/icons/ast/MirrorOn.ts +8 -4
- package/src/icons/ast/Mixpanel.ts +8 -4
- package/src/icons/ast/Monitor.ts +8 -4
- package/src/icons/ast/More.ts +8 -4
- package/src/icons/ast/MoreCompact.ts +8 -4
- package/src/icons/ast/MoveBottom.ts +8 -4
- package/src/icons/ast/MoveLeft.ts +8 -4
- package/src/icons/ast/MoveRight.ts +8 -4
- package/src/icons/ast/MoveSpace.ts +8 -4
- package/src/icons/ast/MoveTop.ts +8 -4
- package/src/icons/ast/Network.ts +8 -4
- package/src/icons/ast/NetworkAdd.ts +8 -4
- package/src/icons/ast/NoBorder.ts +8 -4
- package/src/icons/ast/NoFill.ts +8 -4
- package/src/icons/ast/Notifications.ts +8 -4
- package/src/icons/ast/ObjChild.ts +8 -4
- package/src/icons/ast/ObjM2M.ts +8 -4
- package/src/icons/ast/ObjO2O.ts +8 -4
- package/src/icons/ast/ObjParent.ts +8 -4
- package/src/icons/ast/ObjSelf.ts +8 -4
- package/src/icons/ast/OnSchedule.ts +8 -4
- package/src/icons/ast/OpenAi.ts +8 -4
- package/src/icons/ast/OpenAsPage.ts +8 -4
- package/src/icons/ast/PageRegularMode.ts +8 -4
- package/src/icons/ast/PageWideMode.ts +8 -4
- package/src/icons/ast/PanelAdd.ts +8 -4
- package/src/icons/ast/Pencil.ts +8 -4
- package/src/icons/ast/People.ts +8 -4
- package/src/icons/ast/PeopleCheck.ts +8 -4
- package/src/icons/ast/Photo.ts +8 -4
- package/src/icons/ast/Pin.ts +8 -4
- package/src/icons/ast/PinFilled.ts +8 -4
- package/src/icons/ast/Popup.ts +8 -4
- package/src/icons/ast/Posts.ts +8 -4
- package/src/icons/ast/PresentPlay.ts +8 -4
- package/src/icons/ast/PresentStop.ts +8 -4
- package/src/icons/ast/Print.ts +8 -4
- package/src/icons/ast/PrivateItems.ts +8 -4
- package/src/icons/ast/Question.ts +8 -4
- package/src/icons/ast/QuickFilter.ts +8 -4
- package/src/icons/ast/QuickFilterPersonal.ts +8 -4
- package/src/icons/ast/ReadOnly.ts +8 -4
- package/src/icons/ast/Refresh.ts +8 -4
- package/src/icons/ast/Remove.ts +8 -4
- package/src/icons/ast/RemovePeople.ts +8 -4
- package/src/icons/ast/Reply.ts +8 -4
- package/src/icons/ast/ResetPassword.ts +8 -4
- package/src/icons/ast/Restore.ts +8 -4
- package/src/icons/ast/RicheditorActionsMore.ts +8 -4
- package/src/icons/ast/RicheditorBlockCallout.ts +8 -4
- package/src/icons/ast/RicheditorBlockCode.ts +8 -4
- package/src/icons/ast/RicheditorBlockEmbed.ts +8 -4
- package/src/icons/ast/RicheditorBlockEntity.ts +8 -4
- package/src/icons/ast/RicheditorBlockFile.ts +8 -4
- package/src/icons/ast/RicheditorBlockH1.ts +8 -4
- package/src/icons/ast/RicheditorBlockH2.ts +8 -4
- package/src/icons/ast/RicheditorBlockH3.ts +8 -4
- package/src/icons/ast/RicheditorBlockH4.ts +8 -4
- package/src/icons/ast/RicheditorBlockMention.ts +8 -4
- package/src/icons/ast/RicheditorBlockParagraph.ts +8 -4
- package/src/icons/ast/RicheditorBlockQuote.ts +8 -4
- package/src/icons/ast/RicheditorChecklistCreate.ts +8 -4
- package/src/icons/ast/RicheditorCommentCreate.ts +8 -4
- package/src/icons/ast/RicheditorEntityLinkCreate.ts +8 -4
- package/src/icons/ast/RicheditorHistoryRedo.ts +8 -4
- package/src/icons/ast/RicheditorHistoryUndo.ts +8 -4
- package/src/icons/ast/RicheditorImageAlignCenter.ts +8 -4
- package/src/icons/ast/RicheditorImageAlignLeft.ts +8 -4
- package/src/icons/ast/RicheditorImageAlignRight.ts +8 -4
- package/src/icons/ast/RicheditorImageUpload.ts +8 -4
- package/src/icons/ast/RicheditorImageWrapCenter.ts +8 -4
- package/src/icons/ast/RicheditorImageWrapLeft.ts +8 -4
- package/src/icons/ast/RicheditorImageWrapRight.ts +8 -4
- package/src/icons/ast/RicheditorImageZoom.ts +8 -4
- package/src/icons/ast/RicheditorLinkCreate.ts +8 -4
- package/src/icons/ast/RicheditorLinkedhighlightCreate.ts +8 -4
- package/src/icons/ast/RicheditorListBullet.ts +8 -4
- package/src/icons/ast/RicheditorListIndent.ts +8 -4
- package/src/icons/ast/RicheditorListOrdered.ts +8 -4
- package/src/icons/ast/RicheditorListUnindent.ts +8 -4
- package/src/icons/ast/RicheditorMarkCode.ts +8 -4
- package/src/icons/ast/RicheditorMarkEm.ts +8 -4
- package/src/icons/ast/RicheditorMarkHighlight.ts +8 -4
- package/src/icons/ast/RicheditorMarkStrike.ts +8 -4
- package/src/icons/ast/RicheditorMarkStrong.ts +8 -4
- package/src/icons/ast/RicheditorMarkTextBackgroundColor.ts +8 -4
- package/src/icons/ast/RicheditorMarkUnderline.ts +8 -4
- package/src/icons/ast/RicheditorOpenLink.ts +8 -4
- package/src/icons/ast/RicheditorTableCreate.ts +8 -4
- package/src/icons/ast/RicheditorUnlink.ts +8 -4
- package/src/icons/ast/RicheditorVideoUpload.ts +8 -4
- package/src/icons/ast/RightPanel.ts +8 -4
- package/src/icons/ast/Rows.ts +8 -4
- package/src/icons/ast/RuleScheduled.ts +8 -4
- package/src/icons/ast/Search.ts +8 -4
- package/src/icons/ast/SearchAdd.ts +8 -4
- package/src/icons/ast/SearchFilled.ts +8 -4
- package/src/icons/ast/SearchRemove.ts +8 -4
- package/src/icons/ast/SelfReferenceOff.ts +8 -4
- package/src/icons/ast/SelfReferenceOn.ts +8 -4
- package/src/icons/ast/SendArrow.ts +8 -4
- package/src/icons/ast/SendBackward.ts +8 -4
- package/src/icons/ast/SendToBack.ts +8 -4
- package/src/icons/ast/Settings.ts +8 -4
- package/src/icons/ast/SettingsFilled.ts +8 -4
- package/src/icons/ast/SettingsOff.ts +8 -4
- package/src/icons/ast/Share.ts +8 -4
- package/src/icons/ast/Shared.ts +8 -4
- package/src/icons/ast/ShieldKeyhole.ts +8 -4
- package/src/icons/ast/ShowAuthor.ts +8 -4
- package/src/icons/ast/Sidebar.ts +8 -4
- package/src/icons/ast/SidebarFields.ts +8 -4
- package/src/icons/ast/SidebarFieldsOpened.ts +8 -4
- package/src/icons/ast/SimpleCompass.ts +8 -4
- package/src/icons/ast/Slack.ts +8 -4
- package/src/icons/ast/SlackIcon.ts +8 -4
- package/src/icons/ast/SlideMenu.ts +8 -4
- package/src/icons/ast/SlideMenuClose.ts +8 -4
- package/src/icons/ast/SlideMenuFilled.ts +8 -4
- package/src/icons/ast/SlideMenuOpen.ts +8 -4
- package/src/icons/ast/SmartFolder.ts +8 -4
- package/src/icons/ast/Sort.ts +8 -4
- package/src/icons/ast/SortOnBottom.ts +8 -4
- package/src/icons/ast/SortOnTop.ts +8 -4
- package/src/icons/ast/SpaceApp.ts +8 -4
- package/src/icons/ast/SpaceGenerate.ts +8 -4
- package/src/icons/ast/SpaceList.ts +8 -4
- package/src/icons/ast/SpaceScratch.ts +8 -4
- package/src/icons/ast/SpaceTemplate.ts +8 -4
- package/src/icons/ast/Spinner.ts +8 -4
- package/src/icons/ast/Success.ts +8 -4
- package/src/icons/ast/SuggestIntegration.ts +8 -4
- package/src/icons/ast/SwitchToMention.ts +8 -4
- package/src/icons/ast/SwitchToText.ts +8 -4
- package/src/icons/ast/SwitchToWidget.ts +8 -4
- package/src/icons/ast/TableLayout.ts +8 -4
- package/src/icons/ast/Template.ts +8 -4
- package/src/icons/ast/Templates.ts +8 -4
- package/src/icons/ast/TemplatesFilled.ts +8 -4
- package/src/icons/ast/Terminal.ts +8 -4
- package/src/icons/ast/TextNoWrap.ts +8 -4
- package/src/icons/ast/TextToolAlignBottom.ts +8 -4
- package/src/icons/ast/TextToolAlignMiddle.ts +8 -4
- package/src/icons/ast/TextToolAlignTop.ts +8 -4
- package/src/icons/ast/TextWrap.ts +8 -4
- package/src/icons/ast/ThumbsDown.ts +8 -4
- package/src/icons/ast/ThumbsUp.ts +8 -4
- package/src/icons/ast/Toc.ts +12 -0
- package/src/icons/ast/Twitter.ts +8 -4
- package/src/icons/ast/TypeBoolean.ts +8 -4
- package/src/icons/ast/TypeButton.ts +8 -4
- package/src/icons/ast/TypeCheckbox.ts +8 -4
- package/src/icons/ast/TypeDate.ts +8 -4
- package/src/icons/ast/TypeEmail.ts +8 -4
- package/src/icons/ast/TypeEmoji.ts +8 -4
- package/src/icons/ast/TypeFormula.ts +8 -4
- package/src/icons/ast/TypeFunction.ts +8 -4
- package/src/icons/ast/TypeId.ts +8 -4
- package/src/icons/ast/TypeLocation.ts +8 -4
- package/src/icons/ast/TypeLookup.ts +8 -4
- package/src/icons/ast/TypeMoney.ts +8 -4
- package/src/icons/ast/TypeMultiSelect.ts +8 -4
- package/src/icons/ast/TypeNumber.ts +8 -4
- package/src/icons/ast/TypePercent.ts +8 -4
- package/src/icons/ast/TypePhone.ts +8 -4
- package/src/icons/ast/TypeRelation.ts +8 -4
- package/src/icons/ast/TypeRichText.ts +8 -4
- package/src/icons/ast/TypeRule.ts +8 -4
- package/src/icons/ast/TypeSingleSelect.ts +8 -4
- package/src/icons/ast/TypeText.ts +8 -4
- package/src/icons/ast/TypeUrl.ts +8 -4
- package/src/icons/ast/UnitsAvatar.ts +8 -4
- package/src/icons/ast/UnitsCollection.ts +8 -4
- package/src/icons/ast/UnitsCounter.ts +8 -4
- package/src/icons/ast/UnitsDate.ts +8 -4
- package/src/icons/ast/UnitsDbBadgeAbbr.ts +8 -4
- package/src/icons/ast/UnitsDbBadgeFull.ts +8 -4
- package/src/icons/ast/UnitsDbIcon.ts +8 -4
- package/src/icons/ast/UnitsField.ts +8 -4
- package/src/icons/ast/UnitsFieldIconButton.ts +8 -4
- package/src/icons/ast/UnitsInput.ts +8 -4
- package/src/icons/ast/UnitsProgressBar.ts +8 -4
- package/src/icons/ast/UnitsRichText.ts +8 -4
- package/src/icons/ast/UnitsSnippet.ts +8 -4
- package/src/icons/ast/Unlink.ts +8 -4
- package/src/icons/ast/UnlockFilled.ts +8 -4
- package/src/icons/ast/UnlockOutline.ts +8 -4
- package/src/icons/ast/Upgrade.ts +8 -4
- package/src/icons/ast/UsbFlashDrive.ts +8 -4
- package/src/icons/ast/UserCheck.ts +8 -4
- package/src/icons/ast/UserGroup.ts +8 -4
- package/src/icons/ast/UserGroupRemove.ts +8 -4
- package/src/icons/ast/UserRole.ts +8 -4
- package/src/icons/ast/UserX.ts +8 -4
- package/src/icons/ast/ValueEdit.ts +8 -4
- package/src/icons/ast/ViewAi.ts +8 -4
- package/src/icons/ast/ViewBoard.ts +8 -4
- package/src/icons/ast/ViewCalendar.ts +8 -4
- package/src/icons/ast/ViewCanvas.ts +8 -4
- package/src/icons/ast/ViewChart.ts +8 -4
- package/src/icons/ast/ViewDashboard.ts +8 -4
- package/src/icons/ast/ViewDetails.ts +8 -4
- package/src/icons/ast/ViewDocument.ts +8 -4
- package/src/icons/ast/ViewEmbed.ts +12 -0
- package/src/icons/ast/ViewFeed.ts +8 -4
- package/src/icons/ast/ViewForm.ts +8 -4
- package/src/icons/ast/ViewGallery.ts +8 -4
- package/src/icons/ast/ViewGantt.ts +8 -4
- package/src/icons/ast/ViewList.ts +8 -4
- package/src/icons/ast/ViewMap.ts +8 -4
- package/src/icons/ast/ViewPage.ts +8 -4
- package/src/icons/ast/ViewTable.ts +8 -4
- package/src/icons/ast/ViewTimeline.ts +8 -4
- package/src/icons/ast/Views.ts +8 -4
- package/src/icons/ast/Warning.ts +8 -4
- package/src/icons/ast/WarningTriangle.ts +8 -4
- package/src/icons/ast/WarningTriangleFilled.ts +8 -4
- package/src/icons/ast/Webhooks.ts +12 -0
- package/src/icons/ast/Windows.ts +8 -4
- package/src/icons/ast/WorkspaceMap.ts +8 -4
- package/src/icons/ast/Youtube.ts +8 -4
- package/src/icons/ast/ZoomIn.ts +8 -4
- package/src/icons/ast/ZoomOut.ts +8 -4
- package/src/icons/ast/index.tsx +453 -441
- package/src/icons/react/Abort.tsx +10 -5
- package/src/icons/react/AccessTemplate.tsx +10 -5
- package/src/icons/react/Activity.tsx +10 -5
- package/src/icons/react/ActivityFilled.tsx +10 -5
- package/src/icons/react/ActivityLog.tsx +10 -5
- package/src/icons/react/Add.tsx +10 -5
- package/src/icons/react/AddAfter.tsx +10 -5
- package/src/icons/react/AddBefore.tsx +10 -5
- package/src/icons/react/AddCompact.tsx +10 -5
- package/src/icons/react/AddDatabase.tsx +10 -5
- package/src/icons/react/AddGroup.tsx +10 -5
- package/src/icons/react/AddIntegration.tsx +10 -5
- package/src/icons/react/AddReactions.tsx +10 -5
- package/src/icons/react/AiAssistant.tsx +10 -5
- package/src/icons/react/AiAssistantFilled.tsx +10 -5
- package/src/icons/react/AiAvatar.tsx +10 -5
- package/src/icons/react/AiFiberyBuild.tsx +10 -5
- package/src/icons/react/AiSearch.tsx +10 -5
- package/src/icons/react/AlertTriangle.tsx +10 -5
- package/src/icons/react/Anthropic.tsx +10 -5
- package/src/icons/react/App.tsx +10 -5
- package/src/icons/react/AppDetails.tsx +10 -5
- package/src/icons/react/AppStore.tsx +10 -5
- package/src/icons/react/AppStoreOneColor.tsx +10 -5
- package/src/icons/react/AppTemplates.tsx +10 -5
- package/src/icons/react/AppWebhooks.tsx +10 -5
- package/src/icons/react/AppWiki.tsx +10 -5
- package/src/icons/react/AppearanceAuto.tsx +10 -5
- package/src/icons/react/AppearanceDark.tsx +10 -5
- package/src/icons/react/AppearanceLight.tsx +10 -5
- package/src/icons/react/Apple.tsx +10 -5
- package/src/icons/react/ArrowBarDown.tsx +18 -0
- package/src/icons/react/ArrowBarLeft.tsx +10 -5
- package/src/icons/react/ArrowBarRight.tsx +10 -5
- package/src/icons/react/ArrowBarUp.tsx +18 -0
- package/src/icons/react/ArrowBottom.tsx +10 -5
- package/src/icons/react/ArrowCollapse.tsx +10 -5
- package/src/icons/react/ArrowCollapseVertical.tsx +10 -5
- package/src/icons/react/ArrowForward.tsx +10 -5
- package/src/icons/react/ArrowLeft.tsx +10 -5
- package/src/icons/react/ArrowRight.tsx +10 -5
- package/src/icons/react/ArrowTop.tsx +10 -5
- package/src/icons/react/ArrowUpCircle.tsx +10 -5
- package/src/icons/react/ArrowsRightLeft.tsx +10 -5
- package/src/icons/react/AskForInput.tsx +10 -5
- package/src/icons/react/Asterisk.tsx +10 -5
- package/src/icons/react/Atom.tsx +10 -5
- package/src/icons/react/AutomationsCancelled.tsx +10 -5
- package/src/icons/react/AutomationsDisabled.tsx +10 -5
- package/src/icons/react/AutomationsError.tsx +10 -5
- package/src/icons/react/AutomationsInProgress.tsx +10 -5
- package/src/icons/react/AutomationsNotStarted.tsx +10 -5
- package/src/icons/react/AutomationsSuccess.tsx +10 -5
- package/src/icons/react/Back.tsx +10 -5
- package/src/icons/react/BacklogIcon.tsx +10 -5
- package/src/icons/react/BatchActionsIcon.tsx +10 -5
- package/src/icons/react/BellCircle.tsx +10 -5
- package/src/icons/react/BellFilled.tsx +10 -5
- package/src/icons/react/BellOff.tsx +10 -5
- package/src/icons/react/BellRinging.tsx +10 -5
- package/src/icons/react/BellX.tsx +10 -5
- package/src/icons/react/Bolt.tsx +10 -5
- package/src/icons/react/BringForward.tsx +10 -5
- package/src/icons/react/BringToFront.tsx +10 -5
- package/src/icons/react/Cards.tsx +10 -5
- package/src/icons/react/Chat.tsx +10 -5
- package/src/icons/react/ChatAi.tsx +10 -5
- package/src/icons/react/ChatBubble.tsx +10 -5
- package/src/icons/react/ChatFloat.tsx +10 -5
- package/src/icons/react/ChatSidebar.tsx +10 -5
- package/src/icons/react/CheckCircle.tsx +10 -5
- package/src/icons/react/CheckCircleFilled.tsx +10 -5
- package/src/icons/react/Checked.tsx +10 -5
- package/src/icons/react/Clean.tsx +10 -5
- package/src/icons/react/Clear.tsx +10 -5
- package/src/icons/react/ClearInputFilled.tsx +10 -5
- package/src/icons/react/ClearValue.tsx +10 -5
- package/src/icons/react/Clock.tsx +10 -5
- package/src/icons/react/ClockAlarm.tsx +10 -5
- package/src/icons/react/ClockForward.tsx +10 -5
- package/src/icons/react/Close.tsx +10 -5
- package/src/icons/react/CollapseAll.tsx +10 -5
- package/src/icons/react/CollapseAllHorizontal.tsx +10 -5
- package/src/icons/react/ColorCoding.tsx +10 -5
- package/src/icons/react/ColorCodingFilled.tsx +10 -5
- package/src/icons/react/Columns.tsx +10 -5
- package/src/icons/react/Columns2.tsx +10 -5
- package/src/icons/react/Columns4.tsx +10 -5
- package/src/icons/react/CommentBubble.tsx +10 -5
- package/src/icons/react/Copy.tsx +10 -5
- package/src/icons/react/Create.tsx +10 -5
- package/src/icons/react/CreditsFilled.tsx +10 -5
- package/src/icons/react/CrossCircle.tsx +10 -5
- package/src/icons/react/Crosshair.tsx +10 -5
- package/src/icons/react/Csv.tsx +10 -5
- package/src/icons/react/Database.tsx +10 -5
- package/src/icons/react/DatabaseOff.tsx +10 -5
- package/src/icons/react/DatabaseStroke.tsx +10 -5
- package/src/icons/react/DateRange.tsx +10 -5
- package/src/icons/react/Delete.tsx +10 -5
- package/src/icons/react/Demo.tsx +10 -5
- package/src/icons/react/Dependency.tsx +10 -5
- package/src/icons/react/Dividers.tsx +10 -5
- package/src/icons/react/Document.tsx +10 -5
- package/src/icons/react/DoubleArrowLeft.tsx +10 -5
- package/src/icons/react/DoubleArrowRight.tsx +10 -5
- package/src/icons/react/DoubleLine.tsx +10 -5
- package/src/icons/react/DragBlockHandle.tsx +10 -5
- package/src/icons/react/DragBlockHandleSingle.tsx +10 -5
- package/src/icons/react/DragHandle.tsx +10 -5
- package/src/icons/react/Duplicate.tsx +10 -5
- package/src/icons/react/DynamicFilterValue.tsx +10 -5
- package/src/icons/react/EditValue.tsx +10 -5
- package/src/icons/react/Email.tsx +10 -5
- package/src/icons/react/EmojiDelete.tsx +10 -5
- package/src/icons/react/EntityCreate.tsx +10 -5
- package/src/icons/react/EntityCreateFilled.tsx +10 -5
- package/src/icons/react/EntityMerge.tsx +10 -5
- package/src/icons/react/Equation.tsx +10 -5
- package/src/icons/react/ExpandAll.tsx +10 -5
- package/src/icons/react/ExpandAllHorizontal.tsx +10 -5
- package/src/icons/react/Export.tsx +10 -5
- package/src/icons/react/ExtensionAssignments.tsx +10 -5
- package/src/icons/react/ExtensionAvatar.tsx +10 -5
- package/src/icons/react/ExtensionComments.tsx +10 -5
- package/src/icons/react/ExtensionFiles.tsx +10 -5
- package/src/icons/react/ExtensionReferences.tsx +10 -5
- package/src/icons/react/ExtensionWorkflow.tsx +10 -5
- package/src/icons/react/Eye.tsx +10 -5
- package/src/icons/react/Favorites.tsx +10 -5
- package/src/icons/react/FavoritesChecked.tsx +10 -5
- package/src/icons/react/FavoritesOff.tsx +10 -5
- package/src/icons/react/FiberyDesktopApp.tsx +10 -5
- package/src/icons/react/FiberyMono.tsx +10 -5
- package/src/icons/react/FieldUnit.tsx +10 -5
- package/src/icons/react/Fields.tsx +10 -5
- package/src/icons/react/Figma.tsx +10 -5
- package/src/icons/react/FileArchive.tsx +10 -5
- package/src/icons/react/FileBroken.tsx +10 -5
- package/src/icons/react/FileCounter.tsx +10 -5
- package/src/icons/react/FileDocument.tsx +10 -5
- package/src/icons/react/FileDownload.tsx +10 -5
- package/src/icons/react/FileImage.tsx +10 -5
- package/src/icons/react/FileMultiple.tsx +10 -5
- package/src/icons/react/FileOther.tsx +10 -5
- package/src/icons/react/FilePresentation.tsx +10 -5
- package/src/icons/react/FileTable.tsx +10 -5
- package/src/icons/react/FileUpload.tsx +10 -5
- package/src/icons/react/FileVideo.tsx +10 -5
- package/src/icons/react/Filter.tsx +10 -5
- package/src/icons/react/FitToScreen.tsx +10 -5
- package/src/icons/react/FocusMode.tsx +10 -5
- package/src/icons/react/FocusModeOff.tsx +10 -5
- package/src/icons/react/Folder.tsx +10 -5
- package/src/icons/react/FolderFavorite.tsx +18 -0
- package/src/icons/react/FormWithCover.tsx +10 -5
- package/src/icons/react/FormWithoutCover.tsx +10 -5
- package/src/icons/react/FullscreenModeOffIcon.tsx +10 -5
- package/src/icons/react/FullscreenModeOn.tsx +10 -5
- package/src/icons/react/FullscreenModeOnIcon.tsx +10 -5
- package/src/icons/react/Gift.tsx +10 -5
- package/src/icons/react/Github.tsx +10 -5
- package/src/icons/react/Gitlab.tsx +10 -5
- package/src/icons/react/Globe.tsx +10 -5
- package/src/icons/react/GlobeSimple.tsx +10 -5
- package/src/icons/react/GlobeUnpublish.tsx +10 -5
- package/src/icons/react/GoTo.tsx +10 -5
- package/src/icons/react/GoogleDrive.tsx +10 -5
- package/src/icons/react/GoogleMap.tsx +10 -5
- package/src/icons/react/GraduationCapFilled.tsx +10 -5
- package/src/icons/react/Headphones.tsx +10 -5
- package/src/icons/react/HeadphonesAi.tsx +10 -5
- package/src/icons/react/Hide.tsx +10 -5
- package/src/icons/react/Highlights.tsx +10 -5
- package/src/icons/react/Hint.tsx +10 -5
- package/src/icons/react/Home.tsx +10 -5
- package/src/icons/react/HomeFilled.tsx +10 -5
- package/src/icons/react/ImageXmark.tsx +10 -5
- package/src/icons/react/Import.tsx +10 -5
- package/src/icons/react/ImportFilled.tsx +10 -5
- package/src/icons/react/InfoCircle.tsx +10 -5
- package/src/icons/react/InfoCircleFilled.tsx +10 -5
- package/src/icons/react/Integration.tsx +10 -5
- package/src/icons/react/IntegrationsFilled.tsx +10 -5
- package/src/icons/react/IntegrationsIntegrationDiscourseColor.tsx +10 -5
- package/src/icons/react/IntegrationsIntegrationIntercomColor.tsx +10 -5
- package/src/icons/react/IntegrationsIntegrationSlackColor.tsx +10 -5
- package/src/icons/react/IntegrationsIntegrationZendeskColor.tsx +10 -5
- package/src/icons/react/Intercom.tsx +18 -0
- package/src/icons/react/InvitePeople.tsx +10 -5
- package/src/icons/react/Items.tsx +10 -5
- package/src/icons/react/ItemsTimeline.tsx +10 -5
- package/src/icons/react/Jira.tsx +10 -5
- package/src/icons/react/Key.tsx +10 -5
- package/src/icons/react/KeyboardHideDown.tsx +10 -5
- package/src/icons/react/Lab.tsx +10 -5
- package/src/icons/react/LayoutDouble.tsx +10 -5
- package/src/icons/react/LayoutMultiple.tsx +10 -5
- package/src/icons/react/LayoutSingle.tsx +10 -5
- package/src/icons/react/LeftPanel.tsx +10 -5
- package/src/icons/react/LevelPlus.tsx +10 -5
- package/src/icons/react/Levels.tsx +10 -5
- package/src/icons/react/LineDivider.tsx +10 -5
- package/src/icons/react/LineJump.tsx +10 -5
- package/src/icons/react/Link.tsx +10 -5
- package/src/icons/react/LocationEdit.tsx +10 -5
- package/src/icons/react/Lock.tsx +10 -5
- package/src/icons/react/LockOutline.tsx +10 -5
- package/src/icons/react/Logout.tsx +10 -5
- package/src/icons/react/Loom.tsx +10 -5
- package/src/icons/react/LoupeZoom.tsx +10 -5
- package/src/icons/react/LoupeZoomIn.tsx +10 -5
- package/src/icons/react/LoupeZoomOut.tsx +10 -5
- package/src/icons/react/ManyPeople.tsx +10 -5
- package/src/icons/react/MapMode.tsx +10 -5
- package/src/icons/react/Markdown.tsx +10 -5
- package/src/icons/react/MenuCollapser.tsx +10 -5
- package/src/icons/react/Mermaid.tsx +10 -5
- package/src/icons/react/MessagePlus.tsx +10 -5
- package/src/icons/react/MessagePlusSquare.tsx +10 -5
- package/src/icons/react/Milestones.tsx +10 -5
- package/src/icons/react/Minus.tsx +10 -5
- package/src/icons/react/Miro.tsx +10 -5
- package/src/icons/react/MirrorOff.tsx +10 -5
- package/src/icons/react/MirrorOn.tsx +10 -5
- package/src/icons/react/Mixpanel.tsx +10 -5
- package/src/icons/react/Monitor.tsx +10 -5
- package/src/icons/react/More.tsx +10 -5
- package/src/icons/react/MoreCompact.tsx +10 -5
- package/src/icons/react/MoveBottom.tsx +10 -5
- package/src/icons/react/MoveLeft.tsx +10 -5
- package/src/icons/react/MoveRight.tsx +10 -5
- package/src/icons/react/MoveSpace.tsx +10 -5
- package/src/icons/react/MoveTop.tsx +10 -5
- package/src/icons/react/Network.tsx +10 -5
- package/src/icons/react/NetworkAdd.tsx +10 -5
- package/src/icons/react/NoBorder.tsx +10 -5
- package/src/icons/react/NoFill.tsx +10 -5
- package/src/icons/react/Notifications.tsx +10 -5
- package/src/icons/react/ObjChild.tsx +10 -5
- package/src/icons/react/ObjM2M.tsx +10 -5
- package/src/icons/react/ObjO2O.tsx +10 -5
- package/src/icons/react/ObjParent.tsx +10 -5
- package/src/icons/react/ObjSelf.tsx +10 -5
- package/src/icons/react/OnSchedule.tsx +10 -5
- package/src/icons/react/OpenAi.tsx +10 -5
- package/src/icons/react/OpenAsPage.tsx +10 -5
- package/src/icons/react/PageRegularMode.tsx +10 -5
- package/src/icons/react/PageWideMode.tsx +10 -5
- package/src/icons/react/PanelAdd.tsx +10 -5
- package/src/icons/react/Pencil.tsx +10 -5
- package/src/icons/react/People.tsx +10 -5
- package/src/icons/react/PeopleCheck.tsx +10 -5
- package/src/icons/react/Photo.tsx +10 -5
- package/src/icons/react/Pin.tsx +10 -5
- package/src/icons/react/PinFilled.tsx +10 -5
- package/src/icons/react/Popup.tsx +10 -5
- package/src/icons/react/Posts.tsx +10 -5
- package/src/icons/react/PresentPlay.tsx +10 -5
- package/src/icons/react/PresentStop.tsx +10 -5
- package/src/icons/react/Print.tsx +10 -5
- package/src/icons/react/PrivateItems.tsx +10 -5
- package/src/icons/react/Question.tsx +10 -5
- package/src/icons/react/QuickFilter.tsx +10 -5
- package/src/icons/react/QuickFilterPersonal.tsx +10 -5
- package/src/icons/react/ReadOnly.tsx +10 -5
- package/src/icons/react/Refresh.tsx +10 -5
- package/src/icons/react/Remove.tsx +10 -5
- package/src/icons/react/RemovePeople.tsx +10 -5
- package/src/icons/react/Reply.tsx +10 -5
- package/src/icons/react/ResetPassword.tsx +10 -5
- package/src/icons/react/Restore.tsx +10 -5
- package/src/icons/react/RicheditorActionsMore.tsx +10 -5
- package/src/icons/react/RicheditorBlockCallout.tsx +10 -5
- package/src/icons/react/RicheditorBlockCode.tsx +10 -5
- package/src/icons/react/RicheditorBlockEmbed.tsx +10 -5
- package/src/icons/react/RicheditorBlockEntity.tsx +10 -5
- package/src/icons/react/RicheditorBlockFile.tsx +10 -5
- package/src/icons/react/RicheditorBlockH1.tsx +10 -5
- package/src/icons/react/RicheditorBlockH2.tsx +10 -5
- package/src/icons/react/RicheditorBlockH3.tsx +10 -5
- package/src/icons/react/RicheditorBlockH4.tsx +10 -5
- package/src/icons/react/RicheditorBlockMention.tsx +10 -5
- package/src/icons/react/RicheditorBlockParagraph.tsx +10 -5
- package/src/icons/react/RicheditorBlockQuote.tsx +10 -5
- package/src/icons/react/RicheditorChecklistCreate.tsx +10 -5
- package/src/icons/react/RicheditorCommentCreate.tsx +10 -5
- package/src/icons/react/RicheditorEntityLinkCreate.tsx +10 -5
- package/src/icons/react/RicheditorHistoryRedo.tsx +10 -5
- package/src/icons/react/RicheditorHistoryUndo.tsx +10 -5
- package/src/icons/react/RicheditorImageAlignCenter.tsx +10 -5
- package/src/icons/react/RicheditorImageAlignLeft.tsx +10 -5
- package/src/icons/react/RicheditorImageAlignRight.tsx +10 -5
- package/src/icons/react/RicheditorImageUpload.tsx +10 -5
- package/src/icons/react/RicheditorImageWrapCenter.tsx +10 -5
- package/src/icons/react/RicheditorImageWrapLeft.tsx +10 -5
- package/src/icons/react/RicheditorImageWrapRight.tsx +10 -5
- package/src/icons/react/RicheditorImageZoom.tsx +10 -5
- package/src/icons/react/RicheditorLinkCreate.tsx +10 -5
- package/src/icons/react/RicheditorLinkedhighlightCreate.tsx +10 -5
- package/src/icons/react/RicheditorListBullet.tsx +10 -5
- package/src/icons/react/RicheditorListIndent.tsx +10 -5
- package/src/icons/react/RicheditorListOrdered.tsx +10 -5
- package/src/icons/react/RicheditorListUnindent.tsx +10 -5
- package/src/icons/react/RicheditorMarkCode.tsx +10 -5
- package/src/icons/react/RicheditorMarkEm.tsx +10 -5
- package/src/icons/react/RicheditorMarkHighlight.tsx +10 -5
- package/src/icons/react/RicheditorMarkStrike.tsx +10 -5
- package/src/icons/react/RicheditorMarkStrong.tsx +10 -5
- package/src/icons/react/RicheditorMarkTextBackgroundColor.tsx +10 -5
- package/src/icons/react/RicheditorMarkUnderline.tsx +10 -5
- package/src/icons/react/RicheditorOpenLink.tsx +10 -5
- package/src/icons/react/RicheditorTableCreate.tsx +10 -5
- package/src/icons/react/RicheditorUnlink.tsx +10 -5
- package/src/icons/react/RicheditorVideoUpload.tsx +10 -5
- package/src/icons/react/RightPanel.tsx +10 -5
- package/src/icons/react/Rows.tsx +10 -5
- package/src/icons/react/RuleScheduled.tsx +10 -5
- package/src/icons/react/Search.tsx +10 -5
- package/src/icons/react/SearchAdd.tsx +10 -5
- package/src/icons/react/SearchFilled.tsx +10 -5
- package/src/icons/react/SearchRemove.tsx +10 -5
- package/src/icons/react/SelfReferenceOff.tsx +10 -5
- package/src/icons/react/SelfReferenceOn.tsx +10 -5
- package/src/icons/react/SendArrow.tsx +10 -5
- package/src/icons/react/SendBackward.tsx +10 -5
- package/src/icons/react/SendToBack.tsx +10 -5
- package/src/icons/react/Settings.tsx +10 -5
- package/src/icons/react/SettingsFilled.tsx +10 -5
- package/src/icons/react/SettingsOff.tsx +10 -5
- package/src/icons/react/Share.tsx +10 -5
- package/src/icons/react/Shared.tsx +10 -5
- package/src/icons/react/ShieldKeyhole.tsx +10 -5
- package/src/icons/react/ShowAuthor.tsx +10 -5
- package/src/icons/react/Sidebar.tsx +10 -5
- package/src/icons/react/SidebarFields.tsx +10 -5
- package/src/icons/react/SidebarFieldsOpened.tsx +10 -5
- package/src/icons/react/SimpleCompass.tsx +10 -5
- package/src/icons/react/Slack.tsx +10 -5
- package/src/icons/react/SlackIcon.tsx +10 -5
- package/src/icons/react/SlideMenu.tsx +10 -5
- package/src/icons/react/SlideMenuClose.tsx +10 -5
- package/src/icons/react/SlideMenuFilled.tsx +10 -5
- package/src/icons/react/SlideMenuOpen.tsx +10 -5
- package/src/icons/react/SmartFolder.tsx +10 -5
- package/src/icons/react/Sort.tsx +10 -5
- package/src/icons/react/SortOnBottom.tsx +10 -5
- package/src/icons/react/SortOnTop.tsx +10 -5
- package/src/icons/react/SpaceApp.tsx +10 -5
- package/src/icons/react/SpaceGenerate.tsx +10 -5
- package/src/icons/react/SpaceList.tsx +10 -5
- package/src/icons/react/SpaceScratch.tsx +10 -5
- package/src/icons/react/SpaceTemplate.tsx +10 -5
- package/src/icons/react/Spinner.tsx +10 -5
- package/src/icons/react/Success.tsx +10 -5
- package/src/icons/react/SuggestIntegration.tsx +10 -5
- package/src/icons/react/SwitchToMention.tsx +10 -5
- package/src/icons/react/SwitchToText.tsx +10 -5
- package/src/icons/react/SwitchToWidget.tsx +10 -5
- package/src/icons/react/TableLayout.tsx +10 -5
- package/src/icons/react/Template.tsx +10 -5
- package/src/icons/react/Templates.tsx +10 -5
- package/src/icons/react/TemplatesFilled.tsx +10 -5
- package/src/icons/react/Terminal.tsx +10 -5
- package/src/icons/react/TextNoWrap.tsx +10 -5
- package/src/icons/react/TextToolAlignBottom.tsx +10 -5
- package/src/icons/react/TextToolAlignMiddle.tsx +10 -5
- package/src/icons/react/TextToolAlignTop.tsx +10 -5
- package/src/icons/react/TextWrap.tsx +10 -5
- package/src/icons/react/ThumbsDown.tsx +10 -5
- package/src/icons/react/ThumbsUp.tsx +10 -5
- package/src/icons/react/Toc.tsx +18 -0
- package/src/icons/react/Twitter.tsx +10 -5
- package/src/icons/react/TypeBoolean.tsx +10 -5
- package/src/icons/react/TypeButton.tsx +10 -5
- package/src/icons/react/TypeCheckbox.tsx +10 -5
- package/src/icons/react/TypeDate.tsx +10 -5
- package/src/icons/react/TypeEmail.tsx +10 -5
- package/src/icons/react/TypeEmoji.tsx +10 -5
- package/src/icons/react/TypeFormula.tsx +10 -5
- package/src/icons/react/TypeFunction.tsx +10 -5
- package/src/icons/react/TypeId.tsx +10 -5
- package/src/icons/react/TypeLocation.tsx +10 -5
- package/src/icons/react/TypeLookup.tsx +10 -5
- package/src/icons/react/TypeMoney.tsx +10 -5
- package/src/icons/react/TypeMultiSelect.tsx +10 -5
- package/src/icons/react/TypeNumber.tsx +10 -5
- package/src/icons/react/TypePercent.tsx +10 -5
- package/src/icons/react/TypePhone.tsx +10 -5
- package/src/icons/react/TypeRelation.tsx +10 -5
- package/src/icons/react/TypeRichText.tsx +10 -5
- package/src/icons/react/TypeRule.tsx +10 -5
- package/src/icons/react/TypeSingleSelect.tsx +10 -5
- package/src/icons/react/TypeText.tsx +10 -5
- package/src/icons/react/TypeUrl.tsx +10 -5
- package/src/icons/react/UnitsAvatar.tsx +10 -5
- package/src/icons/react/UnitsCollection.tsx +10 -5
- package/src/icons/react/UnitsCounter.tsx +10 -5
- package/src/icons/react/UnitsDate.tsx +10 -5
- package/src/icons/react/UnitsDbBadgeAbbr.tsx +10 -5
- package/src/icons/react/UnitsDbBadgeFull.tsx +10 -5
- package/src/icons/react/UnitsDbIcon.tsx +10 -5
- package/src/icons/react/UnitsField.tsx +10 -5
- package/src/icons/react/UnitsFieldIconButton.tsx +10 -5
- package/src/icons/react/UnitsInput.tsx +10 -5
- package/src/icons/react/UnitsProgressBar.tsx +10 -5
- package/src/icons/react/UnitsRichText.tsx +10 -5
- package/src/icons/react/UnitsSnippet.tsx +10 -5
- package/src/icons/react/Unlink.tsx +10 -5
- package/src/icons/react/UnlockFilled.tsx +10 -5
- package/src/icons/react/UnlockOutline.tsx +10 -5
- package/src/icons/react/Upgrade.tsx +10 -5
- package/src/icons/react/UsbFlashDrive.tsx +10 -5
- package/src/icons/react/UserCheck.tsx +10 -5
- package/src/icons/react/UserGroup.tsx +10 -5
- package/src/icons/react/UserGroupRemove.tsx +10 -5
- package/src/icons/react/UserRole.tsx +10 -5
- package/src/icons/react/UserX.tsx +10 -5
- package/src/icons/react/ValueEdit.tsx +10 -5
- package/src/icons/react/ViewAi.tsx +10 -5
- package/src/icons/react/ViewBoard.tsx +10 -5
- package/src/icons/react/ViewCalendar.tsx +10 -5
- package/src/icons/react/ViewCanvas.tsx +10 -5
- package/src/icons/react/ViewChart.tsx +10 -5
- package/src/icons/react/ViewDashboard.tsx +10 -5
- package/src/icons/react/ViewDetails.tsx +10 -5
- package/src/icons/react/ViewDocument.tsx +10 -5
- package/src/icons/react/ViewEmbed.tsx +18 -0
- package/src/icons/react/ViewFeed.tsx +10 -5
- package/src/icons/react/ViewForm.tsx +10 -5
- package/src/icons/react/ViewGallery.tsx +10 -5
- package/src/icons/react/ViewGantt.tsx +10 -5
- package/src/icons/react/ViewList.tsx +10 -5
- package/src/icons/react/ViewMap.tsx +10 -5
- package/src/icons/react/ViewPage.tsx +10 -5
- package/src/icons/react/ViewTable.tsx +10 -5
- package/src/icons/react/ViewTimeline.tsx +10 -5
- package/src/icons/react/Views.tsx +10 -5
- package/src/icons/react/Warning.tsx +10 -5
- package/src/icons/react/WarningTriangle.tsx +10 -5
- package/src/icons/react/WarningTriangleFilled.tsx +10 -5
- package/src/icons/react/Webhooks.tsx +18 -0
- package/src/icons/react/Windows.tsx +10 -5
- package/src/icons/react/WorkspaceMap.tsx +10 -5
- package/src/icons/react/Youtube.tsx +10 -5
- package/src/icons/react/ZoomIn.tsx +10 -5
- package/src/icons/react/ZoomOut.tsx +10 -5
- package/src/icons/react/index.tsx +453 -441
- package/src/icons/svg/arrow-bar-down.svg +4 -0
- package/src/icons/svg/arrow-bar-up.svg +4 -0
- package/src/icons/svg/folder-favorite.svg +3 -0
- package/src/icons/svg/intercom.svg +3 -0
- package/src/icons/svg/richeditor/list/indent.svg +7 -2
- package/src/icons/svg/richeditor/list/unindent.svg +7 -2
- package/src/icons/svg/richeditor/mark/underline.svg +2 -2
- package/src/icons/svg/toc.svg +5 -0
- package/src/icons/svg/view-embed.svg +3 -0
- package/src/icons/svg/webhooks.svg +5 -0
- package/src/icons/types.ts +2 -0
- package/src/images-gallery/images-gallery.tsx +67 -16
- package/src/images-gallery/slide-buttons.tsx +5 -9
- package/src/integration-compact-info-button.tsx +10 -6
- package/src/loaders.tsx +2 -2
- package/src/loading-sausage.tsx +4 -4
- package/src/mobile-keyboard-aware-popup.tsx +1 -1
- package/src/modal-menu/modal-menu-content.tsx +1 -1
- package/src/modal-menu/modal-menu-separator.tsx +1 -1
- package/src/modal-menu/modal-submenu-content.tsx +3 -1
- package/src/new-badge.tsx +2 -2
- package/src/number-input/edit-unit-styles.ts +3 -3
- package/src/online-users.tsx +8 -8
- package/src/open-popover-tracker.tsx +73 -0
- package/src/palette-generator.test.ts +145 -147
- package/src/palette-generator.ts +24 -34
- package/src/palettes/_.test.ts +226 -0
- package/src/palettes/_.ts +66 -23
- package/src/palettes/diff-colors.ts +253 -0
- package/src/palettes/inspect.canvas-colors.test.ts +257 -0
- package/src/palettes/inspect.defs.colors.neutral-arch.test.ts +2291 -0
- package/src/palettes/inspect.defs.colors.neutral-user.test.ts +2291 -0
- package/src/palettes/inspect.defs.colors.warm-arch.test.ts +2291 -0
- package/src/palettes/inspect.defs.colors.warm-user.test.ts +2291 -0
- package/src/palettes/inspect.neutral-arch.test.ts +191 -0
- package/src/palettes/inspect.neutral-user.test.ts +191 -0
- package/src/palettes/inspect.warm-arch.test.ts +191 -0
- package/src/palettes/inspect.warm-user.test.ts +191 -0
- package/src/palettes/neutral-arch.ts +37 -0
- package/src/palettes/neutral-user.ts +37 -0
- package/src/palettes/{slate-arch.ts → neutral.ts} +19 -33
- package/src/palettes/warm-arch.ts +2 -187
- package/src/palettes/warm-user.ts +2 -187
- package/src/palettes/warm.ts +157 -0
- package/src/popover/index.tsx +34 -10
- package/src/popover/mobile-popover.tsx +4 -2
- package/src/popover/popup-modifiers-context.ts +4 -4
- package/src/preference-setting.test.ts +223 -0
- package/src/preference-setting.ts +71 -0
- package/src/pretty-size.test.ts +18 -0
- package/src/pretty-size.ts +23 -0
- package/src/reactions/reaction-button.tsx +4 -4
- package/src/reactions/reaction-picker.tsx +2 -2
- package/src/rich-text-embed-error.tsx +3 -1
- package/src/root-theme-provider.test.tsx +25 -20
- package/src/select/components/group-heading.tsx +1 -1
- package/src/select/index.tsx +9 -5
- package/src/select/select.tsx +1 -0
- package/src/select/styles.ts +1 -1
- package/src/static-palettes.ts +3 -5
- package/src/tab-nav/tab-nav.tsx +61 -17
- package/src/thematic-color-picker.tsx +158 -234
- package/src/thematic-constants.tsx +0 -1
- package/src/thematic-controls.tsx +118 -9
- package/src/thematic-scales.tsx +66 -86
- package/src/thematic-state.ts +61 -44
- package/src/thematic.tsx +379 -244
- package/src/theme-provider.test.tsx +70 -67
- package/src/theme-provider.tsx +44 -39
- package/src/theme-settings.ts +12 -44
- package/src/theme-styles.ts +34 -28
- package/src/themed-ink.tsx +26 -0
- package/src/toast/toast-action.tsx +2 -2
- package/src/toggle-button/round-toggle-button.tsx +2 -1
- package/src/toggle-button/toggle-button.tsx +3 -3
- package/src/toggle-on-off.tsx +7 -7
- package/src/tooltip-if-overflown.tsx +3 -3
- package/src/tree-utils.ts +1 -1
- package/src/type-badge-box.tsx +2 -2
- package/src/type-badge.tsx +9 -10
- package/src/unit/maybe-unit-value.tsx +1 -1
- package/src/unit/types.ts +1 -1
- package/src/workflow-progress-icon.tsx +1 -1
- package/.oxlintrc.json +0 -24
- package/src/actions-menu/actions-menu-open-state-tracker.tsx +0 -66
- package/src/design-system/alpha.test.ts +0 -59
- package/src/design-system.test.ts +0 -48
- package/src/error-alert/error-alert-action.tsx +0 -12
- package/src/error-alert/error-alert.tsx +0 -71
- package/src/palettes/slate-arch.colors-snapshot.test.ts +0 -1689
- package/src/palettes/slate-user.colors-snapshot.test.ts +0 -1689
- package/src/palettes/slate-user.ts +0 -187
- package/src/palettes/warm-arch.colors-snapshot.test.ts +0 -1689
- package/src/palettes/warm-user.colors-snapshot.test.ts +0 -1689
- package/src/popover/popover-old.tsx +0 -113
- /package/src/number-input/{decimal.test.js → decimal.test.ts} +0 -0
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import {Color} from "culori";
|
|
2
|
+
import {hslFrom, oklchFrom, rgbFrom, serializeHexVariadic} from "./color-utils";
|
|
3
|
+
import memoize from "lodash/memoize";
|
|
4
|
+
|
|
5
|
+
export type ColorDef = [light: string, dark: string];
|
|
6
|
+
export type CanvasColorRole = "bg" | "sticker" | "section" | "fg" | "ui";
|
|
7
|
+
|
|
8
|
+
/** @deprecated sacrifice in favor of oklch-canvas */
|
|
9
|
+
export const backgrounds: ColorDef[] = [
|
|
10
|
+
["#1E1E1E", "#FDFDFD"],
|
|
11
|
+
["#6E7A83", "#A4AAAF"],
|
|
12
|
+
["#F24822", "#C05437"],
|
|
13
|
+
["#FFA629", "#DF9E53"],
|
|
14
|
+
["#FFCD29", "#E5C55E"],
|
|
15
|
+
["#14AE5C", "#568B5C"],
|
|
16
|
+
["#0D99FF", "#5288DB"],
|
|
17
|
+
["#9747FF", "#7742E3"],
|
|
18
|
+
["#FF7ED9", "#CE6DB2"],
|
|
19
|
+
["#FDFDFD", "#1E1E1E"], //"#FAFAFB",
|
|
20
|
+
["#C1C8CD", "#D8E1E8"],
|
|
21
|
+
["#E5E8EB", "#F1F2F4"],
|
|
22
|
+
["#FFC7C2", "#F3D8D4"],
|
|
23
|
+
["#FCD19C", "#F5E0CD"],
|
|
24
|
+
["#FFE8A3", "#F3E7AF"],
|
|
25
|
+
["#AFF4C6", "#CFF0DD"],
|
|
26
|
+
["#BDE3FF", "#D3DFF9"],
|
|
27
|
+
["#E4CCFF", "#DDD8F7"],
|
|
28
|
+
["#FFD7F3", "#F0D4E9"],
|
|
29
|
+
];
|
|
30
|
+
|
|
31
|
+
/** @deprecated sacrifice in favor of oklch-canvas */
|
|
32
|
+
export const stickers: ColorDef[] = [
|
|
33
|
+
["#AFBCCF", "#8E9AAA"],
|
|
34
|
+
["#FFAFA3", "#D78C80"],
|
|
35
|
+
["#FFC470", "#DDA75B"],
|
|
36
|
+
["#FFD966", "#D4B755"],
|
|
37
|
+
["#85E0A3", "#6FB888"],
|
|
38
|
+
["#80CAFF", "#66AEDD"],
|
|
39
|
+
["#D9B8FF", "#B292D4"],
|
|
40
|
+
["#FFBDF2", "#D89FC3"],
|
|
41
|
+
["#F1F2F4", "#C9CBCE"],
|
|
42
|
+
["#FFE5E2", "#D8B5B2"],
|
|
43
|
+
["#FFE9CF", "#D6C0A3"],
|
|
44
|
+
["#FEF2CE", "#D3C8A5"],
|
|
45
|
+
["#D7FFE5", "#A9D1B6"],
|
|
46
|
+
["#DAEFFF", "#AFC9DD"],
|
|
47
|
+
["#F0E3FF", "#C2B0D4"],
|
|
48
|
+
["#FFE4F7", "#D8B7CF"],
|
|
49
|
+
];
|
|
50
|
+
|
|
51
|
+
/** @deprecated kill in favor of oklch-canvas */
|
|
52
|
+
export const sections: ColorDef[] = [
|
|
53
|
+
["#DDDDDD", "#2E2E2E"],
|
|
54
|
+
["#EAEAEA", "#3B3B3B"],
|
|
55
|
+
["#FFE2E0", "#8C4B48"],
|
|
56
|
+
["#FFEAD6", "#8C6B48"],
|
|
57
|
+
["#FFF3D6", "#8C7D48"],
|
|
58
|
+
["#DDF8E2", "#488C60"],
|
|
59
|
+
["#DBF0FF", "#48678C"],
|
|
60
|
+
["#EAE1FF", "#5A488C"],
|
|
61
|
+
["#FFD6F2", "#8C4874"],
|
|
62
|
+
["#FFFFFF", "#FFFFFF"],
|
|
63
|
+
["#F4F4F4", "#353535"],
|
|
64
|
+
["#F9F9F9", "#4C4C4C"],
|
|
65
|
+
["#FFF5F5", "#5E3530"],
|
|
66
|
+
["#FFF7F0", "#543B29"],
|
|
67
|
+
["#FFFBF0", "#554D2D"],
|
|
68
|
+
["#EBFFEE", "#21462F"],
|
|
69
|
+
["#F5FBFF", "#434E5D"],
|
|
70
|
+
["#F8F5FF", "#3F3B4C"],
|
|
71
|
+
["#FFF0FA", "#392630"],
|
|
72
|
+
];
|
|
73
|
+
|
|
74
|
+
const fmt = (color: Color): string => serializeHexVariadic(rgbFrom(color));
|
|
75
|
+
|
|
76
|
+
export let darkFromLight = (light: string, role: CanvasColorRole): string => {
|
|
77
|
+
const lch = oklchFrom(light)!;
|
|
78
|
+
const hsl = hslFrom(light)!;
|
|
79
|
+
const c = lch.c ?? 0;
|
|
80
|
+
const isAchromatic = c < 0.008;
|
|
81
|
+
|
|
82
|
+
const {alpha} = lch;
|
|
83
|
+
|
|
84
|
+
switch (role) {
|
|
85
|
+
case "bg":
|
|
86
|
+
if (c < 0.03) {
|
|
87
|
+
if (lch.l < 0.3) {
|
|
88
|
+
return fmt({mode: "oklch", l: 0.99, c: 0, h: undefined, alpha});
|
|
89
|
+
}
|
|
90
|
+
if (lch.l > 0.97) {
|
|
91
|
+
return fmt({mode: "oklch", l: 0.24, c: 0, h: undefined, alpha});
|
|
92
|
+
}
|
|
93
|
+
return fmt({mode: "oklch", l: lch.l + (0.98 - lch.l) * 0.5, c: c * 0.5, h: lch.h, alpha});
|
|
94
|
+
}
|
|
95
|
+
if (c > 0.1) {
|
|
96
|
+
return fmt({mode: "oklch", l: lch.l - 0.06, c: c * 0.74, h: lch.h, alpha});
|
|
97
|
+
}
|
|
98
|
+
return fmt({mode: "oklch", l: lch.l, c: c * 0.55, h: lch.h, alpha});
|
|
99
|
+
|
|
100
|
+
case "sticker":
|
|
101
|
+
if (isAchromatic) {
|
|
102
|
+
return fmt({mode: "oklch", l: lch.l - 0.13, c: 0, h: undefined, alpha});
|
|
103
|
+
}
|
|
104
|
+
if (c > 0.06) {
|
|
105
|
+
return fmt({mode: "oklch", l: lch.l - 0.11, c: c * 0.9, h: lch.h, alpha});
|
|
106
|
+
}
|
|
107
|
+
return fmt({mode: "oklch", l: lch.l - 0.13, c: c * 1.2, h: lch.h, alpha});
|
|
108
|
+
|
|
109
|
+
case "section":
|
|
110
|
+
if (isAchromatic) {
|
|
111
|
+
if (lch.l > 0.999) {
|
|
112
|
+
return light;
|
|
113
|
+
}
|
|
114
|
+
return fmt({mode: "oklch", l: lch.l * 0.35, c: 0, h: undefined, alpha});
|
|
115
|
+
}
|
|
116
|
+
if ((hsl.l ?? 0) < 0.95) {
|
|
117
|
+
return fmt({mode: "hsl", h: hsl.h, s: 0.32, l: 0.42, alpha});
|
|
118
|
+
}
|
|
119
|
+
return fmt({mode: "oklch", l: 0.37, c: 0.045, h: lch.h, alpha});
|
|
120
|
+
|
|
121
|
+
case "fg":
|
|
122
|
+
// Dark text (#1E1E1E) on light bg → light text on dark bg.
|
|
123
|
+
// Invert lightness in oklch: dark becomes light, light stays capped.
|
|
124
|
+
return fmt({mode: "oklch", l: Math.min(1 - lch.l + 0.15, 0.95), c: c * 0.85, h: lch.h, alpha});
|
|
125
|
+
|
|
126
|
+
case "ui":
|
|
127
|
+
return light;
|
|
128
|
+
|
|
129
|
+
default:
|
|
130
|
+
throw new Error(role);
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
darkFromLight = memoize(darkFromLight, (fg, r) => fg.toUpperCase() + r);
|
package/src/card-container.tsx
CHANGED
|
@@ -407,7 +407,7 @@ const compactCardContainerClassName = css`
|
|
|
407
407
|
type CompactCardContainerProps = {
|
|
408
408
|
title: ReactNode;
|
|
409
409
|
floating?: ReactNode;
|
|
410
|
-
backgroundColors?: string[];
|
|
410
|
+
backgroundColors?: string[] | null;
|
|
411
411
|
};
|
|
412
412
|
|
|
413
413
|
export const CompactCardContainer = ({title, floating, backgroundColors}: CompactCardContainerProps) => {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {useTheme} from "./theme-provider";
|
|
2
1
|
import {css} from "@linaria/core";
|
|
3
2
|
import {FC} from "react";
|
|
4
3
|
import {Checkbox} from "./checkbox";
|
|
5
|
-
import {layout, space, textStyles,
|
|
4
|
+
import {layout, space, textStyles, Theme} from "./design-system";
|
|
5
|
+
import {useTheme} from "./theme-provider";
|
|
6
6
|
|
|
7
7
|
const labelStyle = css`
|
|
8
8
|
${textStyles.regular}
|
|
@@ -35,7 +35,7 @@ type Option = {
|
|
|
35
35
|
};
|
|
36
36
|
|
|
37
37
|
interface CheckboxMultiSelectProps {
|
|
38
|
-
theme:
|
|
38
|
+
theme: Theme;
|
|
39
39
|
color?: string;
|
|
40
40
|
options: Option[];
|
|
41
41
|
}
|
|
@@ -55,7 +55,7 @@ export const CheckboxMultiSelect: FC<CheckboxMultiSelectProps> = ({options, colo
|
|
|
55
55
|
checked={checked}
|
|
56
56
|
onChange={onToggle}
|
|
57
57
|
disabled={disabled}
|
|
58
|
-
color={optionColor || color ||
|
|
58
|
+
color={optionColor || color || theme.colors.colorAccent}
|
|
59
59
|
/>
|
|
60
60
|
<div className={labelStyle}>{label}</div>
|
|
61
61
|
</label>
|
package/src/checkbox.tsx
CHANGED
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
useEffect,
|
|
13
13
|
useRef,
|
|
14
14
|
} from "react";
|
|
15
|
-
import {alpha, getDarkenColor, layout, space, textStyles,
|
|
15
|
+
import {alpha, getDarkenColor, layout, space, textStyles, Theme, themeVars} from "./design-system";
|
|
16
16
|
import {smallHtmlStylesClass} from "./html-styles";
|
|
17
17
|
import {mobileRootSelector} from "./mobile-styles";
|
|
18
18
|
|
|
@@ -33,7 +33,9 @@ const backgroundStyle = css`
|
|
|
33
33
|
width: ${layout.checkboxSize}px;
|
|
34
34
|
height: ${layout.checkboxSize}px;
|
|
35
35
|
border-radius: ${space.s3}px;
|
|
36
|
-
transition:
|
|
36
|
+
transition:
|
|
37
|
+
background-color 0.2s,
|
|
38
|
+
box-shadow 0.2s;
|
|
37
39
|
box-shadow: 0 0 0 1.5px ${borderColorVar};
|
|
38
40
|
background-color: ${themeVars.panelBg};
|
|
39
41
|
|
|
@@ -81,16 +83,24 @@ const checkboxRootStyle = css`
|
|
|
81
83
|
|
|
82
84
|
&:hover input[type="checkbox"]:checked:focus:not(:disabled) + .${backgroundStyle} {
|
|
83
85
|
background-color: ${darkenColorVar};
|
|
84
|
-
box-shadow:
|
|
86
|
+
box-shadow:
|
|
87
|
+
0 0 0 1.5px ${darkenColorVar},
|
|
88
|
+
0 0 0 4px ${focusColorVar};
|
|
85
89
|
${mobileRootSelector} & {
|
|
86
|
-
box-shadow:
|
|
90
|
+
box-shadow:
|
|
91
|
+
0 0 0 1.6px ${darkenColorVar},
|
|
92
|
+
0 0 0 4px ${focusColorVar};
|
|
87
93
|
}
|
|
88
94
|
}
|
|
89
95
|
|
|
90
96
|
& input[type="checkbox"]:focus + .${backgroundStyle} {
|
|
91
|
-
box-shadow:
|
|
97
|
+
box-shadow:
|
|
98
|
+
0 0 0 1.5px ${checkboxColorVar},
|
|
99
|
+
0 0 0 4px ${focusColorVar};
|
|
92
100
|
${mobileRootSelector} & {
|
|
93
|
-
box-shadow:
|
|
101
|
+
box-shadow:
|
|
102
|
+
0 0 0 1.6px ${checkboxColorVar},
|
|
103
|
+
0 0 0 4px ${focusColorVar};
|
|
94
104
|
}
|
|
95
105
|
}
|
|
96
106
|
|
|
@@ -125,7 +135,9 @@ const checkmarkStyle = css`
|
|
|
125
135
|
top: 50%;
|
|
126
136
|
transform: translate(-50%, -50%) scale(0);
|
|
127
137
|
opacity: 0;
|
|
128
|
-
transition:
|
|
138
|
+
transition:
|
|
139
|
+
transform 0.2s,
|
|
140
|
+
opacity 0.2s;
|
|
129
141
|
pointer-events: none;
|
|
130
142
|
color: ${themeVars.whiteColor};
|
|
131
143
|
width: ${layout.checkboxSize}px;
|
|
@@ -144,7 +156,7 @@ const checkmarkStyle = css`
|
|
|
144
156
|
|
|
145
157
|
type CheckboxComponentProps = ComponentProps<"input"> & {
|
|
146
158
|
color?: string;
|
|
147
|
-
theme:
|
|
159
|
+
theme: Theme;
|
|
148
160
|
};
|
|
149
161
|
|
|
150
162
|
const CheckboxComponent = memo(
|
|
@@ -153,7 +165,7 @@ const CheckboxComponent = memo(
|
|
|
153
165
|
|
|
154
166
|
const indeterminate = checked === null;
|
|
155
167
|
const defaultIndeterminate = defaultChecked === null;
|
|
156
|
-
const cColor = color || theme.
|
|
168
|
+
const cColor = color || theme.colors.colorAccent;
|
|
157
169
|
const fColor = alpha(cColor, 0.25);
|
|
158
170
|
const hColor = alpha(cColor, 0.1);
|
|
159
171
|
const dColor = getDarkenColor(cColor);
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import {cssFromFilter, makeColorFilter} from "./color-filter";
|
|
2
|
+
import {cardTypeColors} from "./design-system/colors";
|
|
3
|
+
|
|
4
|
+
describe("makeColorFilter alpha preservation", () => {
|
|
5
|
+
const input = "rgba(255, 0, 0, 0.5)";
|
|
6
|
+
const expectAlpha = (filter: ReturnType<typeof makeColorFilter>) => {
|
|
7
|
+
expect(filter(input)).toMatch(/,\s*0\.5\)$/);
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
it("sepia + oklchL", () => {
|
|
11
|
+
expectAlpha(makeColorFilter({sepia: 0.3, oklchL: 0.97}));
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it("brightness", () => {
|
|
15
|
+
expectAlpha(makeColorFilter({brightness: 1.2}));
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
it("contrast", () => {
|
|
19
|
+
expectAlpha(makeColorFilter({contrast: 0.8}));
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
it("saturate", () => {
|
|
23
|
+
expectAlpha(makeColorFilter({saturate: 1.5}));
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
it("hueRotate", () => {
|
|
27
|
+
expectAlpha(makeColorFilter({hueRotate: 45}));
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
it("grayscale", () => {
|
|
31
|
+
expectAlpha(makeColorFilter({grayscale: 0.5}));
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
it("invert", () => {
|
|
35
|
+
expectAlpha(makeColorFilter({invert: 1}));
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
it("oklchC", () => {
|
|
39
|
+
expectAlpha(makeColorFilter({oklchC: 0.8}));
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
it("hueShift", () => {
|
|
43
|
+
expectAlpha(makeColorFilter({hueShift: {targetHue: 120, amount: 0.5}}));
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
it("all filters combined", () => {
|
|
47
|
+
expectAlpha(
|
|
48
|
+
makeColorFilter({
|
|
49
|
+
sepia: 0.3,
|
|
50
|
+
oklchL: 0.97,
|
|
51
|
+
oklchC: 0.8,
|
|
52
|
+
brightness: 1.1,
|
|
53
|
+
contrast: 0.9,
|
|
54
|
+
saturate: 1.2,
|
|
55
|
+
hueRotate: 10,
|
|
56
|
+
grayscale: 0.1,
|
|
57
|
+
invert: 0.05,
|
|
58
|
+
hueShift: {targetHue: 200, amount: 0.3},
|
|
59
|
+
})
|
|
60
|
+
);
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
describe("makeColorFilter identity", () => {
|
|
65
|
+
it("returns identity when spec is undefined", () => {
|
|
66
|
+
const filter = makeColorFilter(undefined);
|
|
67
|
+
expect(filter("#ff0000")).toBe("#ff0000");
|
|
68
|
+
expect(filter("rgb(0, 128, 255)")).toBe("rgb(0, 128, 255)");
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
describe("makeColorFilter null/empty color", () => {
|
|
73
|
+
const filter = makeColorFilter({sepia: 0.3, oklchL: 0.97});
|
|
74
|
+
|
|
75
|
+
it("does not throw on null color", () => {
|
|
76
|
+
expect(filter(null as unknown as string)).toBeNull();
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
it("does not throw on undefined color", () => {
|
|
80
|
+
expect(filter(undefined as unknown as string)).toBeUndefined();
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
it("returns empty string for empty string", () => {
|
|
84
|
+
expect(filter("")).toBe("");
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
describe("makeColorFilter warm deneutralize (sepia + oklchL)", () => {
|
|
89
|
+
const warmFilter = makeColorFilter({sepia: 0.3, oklchL: 0.97});
|
|
90
|
+
|
|
91
|
+
it("transforms cardTypeColors snapshot", () => {
|
|
92
|
+
const transformed = Object.fromEntries(cardTypeColors.map((c) => [c, warmFilter(c)]));
|
|
93
|
+
expect(transformed).toMatchInlineSnapshot(`
|
|
94
|
+
{
|
|
95
|
+
"#159789": "rgb(44, 139, 121)",
|
|
96
|
+
"#199EE3": "rgb(53, 149, 188)",
|
|
97
|
+
"#1FBED3": "rgb(60, 177, 181)",
|
|
98
|
+
"#2978FB": "rgb(69, 119, 202)",
|
|
99
|
+
"#3E53B4": "rgb(76, 86, 147)",
|
|
100
|
+
"#4A4A4A": "rgb(78, 75, 69)",
|
|
101
|
+
"#4FAF54": "rgb(102, 164, 90)",
|
|
102
|
+
"#673DB6": "rgb(104, 70, 148)",
|
|
103
|
+
"#6A849B": "rgb(120, 133, 139)",
|
|
104
|
+
"#8EC351": "rgb(158, 188, 95)",
|
|
105
|
+
"#99A2AB": "rgb(165, 164, 158)",
|
|
106
|
+
"#9C2BAF": "rgb(142, 58, 144)",
|
|
107
|
+
"#B04E31": "rgb(159, 86, 58)",
|
|
108
|
+
"#D40915": "rgb(167, 13, 24)",
|
|
109
|
+
"#E72065": "rgb(193, 46, 92)",
|
|
110
|
+
"#FBA32F": "rgb(237, 168, 71)",
|
|
111
|
+
"#FC551F": "rgb(219, 97, 47)",
|
|
112
|
+
}
|
|
113
|
+
`);
|
|
114
|
+
});
|
|
115
|
+
|
|
116
|
+
it("is a no-op for unparseable values (CSS vars)", () => {
|
|
117
|
+
expect(warmFilter("var(--some-color)")).toBe("var(--some-color)");
|
|
118
|
+
});
|
|
119
|
+
|
|
120
|
+
it("preserves pure black and white approximately", () => {
|
|
121
|
+
const black = warmFilter("#000000");
|
|
122
|
+
const white = warmFilter("#ffffff");
|
|
123
|
+
expect(black).toMatchInlineSnapshot(`"rgb(0, 0, 0)"`);
|
|
124
|
+
expect(white).toMatchInlineSnapshot(`"rgb(255, 255, 255)"`);
|
|
125
|
+
});
|
|
126
|
+
});
|
|
127
|
+
|
|
128
|
+
describe("makeColorFilter double-deneutralize guard", () => {
|
|
129
|
+
it("warns when applying filter to an already-filtered output", () => {
|
|
130
|
+
const warnSpy = jest.spyOn(console, "warn").mockImplementation(() => {});
|
|
131
|
+
const filter = makeColorFilter({sepia: 0.3, oklchL: 0.97});
|
|
132
|
+
|
|
133
|
+
const first = filter("#D40915");
|
|
134
|
+
filter(first);
|
|
135
|
+
|
|
136
|
+
expect(warnSpy).toHaveBeenCalledWith(expect.stringContaining("double-deneutralize detected"));
|
|
137
|
+
warnSpy.mockRestore();
|
|
138
|
+
});
|
|
139
|
+
|
|
140
|
+
it("does not warn on first application", () => {
|
|
141
|
+
const warnSpy = jest.spyOn(console, "warn").mockImplementation(() => {});
|
|
142
|
+
const filter = makeColorFilter({sepia: 0.1});
|
|
143
|
+
|
|
144
|
+
filter("#00ff00");
|
|
145
|
+
|
|
146
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
147
|
+
warnSpy.mockRestore();
|
|
148
|
+
});
|
|
149
|
+
});
|
|
150
|
+
|
|
151
|
+
describe("cssFromFilter", () => {
|
|
152
|
+
it("approximates oklchL via brightness", () => {
|
|
153
|
+
expect(cssFromFilter({brightness: 0.5, oklchL: 0.97})).toEqual("brightness(0.485)");
|
|
154
|
+
});
|
|
155
|
+
});
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import {
|
|
2
|
+
filterBrightness,
|
|
3
|
+
filterContrast,
|
|
4
|
+
filterGrayscale,
|
|
5
|
+
filterHueRotate,
|
|
6
|
+
filterInvert,
|
|
7
|
+
filterSaturate,
|
|
8
|
+
filterSepia,
|
|
9
|
+
Rgb,
|
|
10
|
+
} from "culori";
|
|
11
|
+
import {cssFromColor, oklchFrom, rgbFrom} from "./color-utils";
|
|
12
|
+
import {shiftHueTowards} from "./palette-generator";
|
|
13
|
+
import memoize from "lodash/memoize";
|
|
14
|
+
|
|
15
|
+
export type ColorFilterSpec = {
|
|
16
|
+
hueShift?: {targetHue: number; amount: number};
|
|
17
|
+
oklchL?: number;
|
|
18
|
+
oklchC?: number;
|
|
19
|
+
brightness?: number;
|
|
20
|
+
contrast?: number;
|
|
21
|
+
saturate?: number;
|
|
22
|
+
hueRotate?: number;
|
|
23
|
+
sepia?: number;
|
|
24
|
+
grayscale?: number;
|
|
25
|
+
invert?: number;
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
const MODE = "rgb" as const;
|
|
29
|
+
type T = Rgb;
|
|
30
|
+
const from = rgbFrom;
|
|
31
|
+
|
|
32
|
+
export function cssFromFilter(spec?: ColorFilterSpec): string | undefined {
|
|
33
|
+
if (!spec) {
|
|
34
|
+
return undefined;
|
|
35
|
+
}
|
|
36
|
+
if (process.env.NODE_ENV !== "production") {
|
|
37
|
+
const unsupported: string[] = [];
|
|
38
|
+
if (spec.oklchC !== undefined) {
|
|
39
|
+
unsupported.push("oklchC (no CSS equivalent for chroma adjustment)");
|
|
40
|
+
}
|
|
41
|
+
if (spec.hueShift) {
|
|
42
|
+
unsupported.push("hueShift (CSS hue-rotate is uniform, hueShift targets a specific hue)");
|
|
43
|
+
}
|
|
44
|
+
if (unsupported.length > 0) {
|
|
45
|
+
// oxlint-disable-next-line no-console
|
|
46
|
+
console.warn(
|
|
47
|
+
`[cssFilterFromSpec] ColorFilterSpec contains fields without CSS filter equivalents: ${unsupported.join(", ")}. ` +
|
|
48
|
+
`The color picker CSS filter will not match the JS transform exactly.`
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
const parts: string[] = [];
|
|
53
|
+
if (spec.sepia !== undefined) {
|
|
54
|
+
parts.push(`sepia(${spec.sepia})`);
|
|
55
|
+
}
|
|
56
|
+
let brightness = 1;
|
|
57
|
+
if (spec.brightness !== undefined) {
|
|
58
|
+
brightness *= spec.brightness;
|
|
59
|
+
}
|
|
60
|
+
if (spec.oklchL !== undefined) {
|
|
61
|
+
brightness *= spec.oklchL;
|
|
62
|
+
}
|
|
63
|
+
if (brightness !== 1) {
|
|
64
|
+
parts.push(`brightness(${brightness})`);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
if (spec.contrast !== undefined) {
|
|
68
|
+
parts.push(`contrast(${spec.contrast})`);
|
|
69
|
+
}
|
|
70
|
+
if (spec.saturate !== undefined) {
|
|
71
|
+
parts.push(`saturate(${spec.saturate})`);
|
|
72
|
+
}
|
|
73
|
+
if (spec.hueRotate !== undefined) {
|
|
74
|
+
parts.push(`hue-rotate(${spec.hueRotate}deg)`);
|
|
75
|
+
}
|
|
76
|
+
if (spec.grayscale !== undefined) {
|
|
77
|
+
parts.push(`grayscale(${spec.grayscale})`);
|
|
78
|
+
}
|
|
79
|
+
if (spec.invert !== undefined) {
|
|
80
|
+
parts.push(`invert(${spec.invert})`);
|
|
81
|
+
}
|
|
82
|
+
return parts.length > 0 ? parts.join(" ") : undefined;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
type ColorFilter = (color: string, format?: (color: T) => string) => string;
|
|
86
|
+
|
|
87
|
+
export function makeColorFilter(spec?: ColorFilterSpec): ColorFilter {
|
|
88
|
+
if (!spec) {
|
|
89
|
+
return (x) => x;
|
|
90
|
+
}
|
|
91
|
+
type ColorToSameColorMapper = ReturnType<typeof filterBrightness>;
|
|
92
|
+
const filters: ColorToSameColorMapper[] = [];
|
|
93
|
+
if (spec.brightness !== undefined) {
|
|
94
|
+
filters.push(filterBrightness(spec.brightness, MODE));
|
|
95
|
+
}
|
|
96
|
+
if (spec.contrast !== undefined) {
|
|
97
|
+
filters.push(filterContrast(spec.contrast, MODE));
|
|
98
|
+
}
|
|
99
|
+
if (spec.saturate !== undefined) {
|
|
100
|
+
filters.push(filterSaturate(spec.saturate, MODE));
|
|
101
|
+
}
|
|
102
|
+
if (spec.hueRotate !== undefined) {
|
|
103
|
+
filters.push(filterHueRotate(spec.hueRotate, MODE));
|
|
104
|
+
}
|
|
105
|
+
if (spec.sepia !== undefined) {
|
|
106
|
+
filters.push(filterSepia(spec.sepia, MODE));
|
|
107
|
+
}
|
|
108
|
+
if (spec.grayscale !== undefined) {
|
|
109
|
+
filters.push(filterGrayscale(spec.grayscale, MODE));
|
|
110
|
+
}
|
|
111
|
+
if (spec.invert !== undefined) {
|
|
112
|
+
filters.push(filterInvert(spec.invert, MODE));
|
|
113
|
+
}
|
|
114
|
+
const __outputs = process.env.NODE_ENV !== "production" ? new Set<string>() : undefined;
|
|
115
|
+
|
|
116
|
+
return memoize(
|
|
117
|
+
(color: string, format: (color: T) => string = cssFromColor) => {
|
|
118
|
+
if (!color) {
|
|
119
|
+
return color;
|
|
120
|
+
}
|
|
121
|
+
if (__outputs?.has(color)) {
|
|
122
|
+
// oxlint-disable-next-line no-console
|
|
123
|
+
console.warn(
|
|
124
|
+
`[deneutralize] double-deneutralize detected: "${color}" is already a deneutralize output. ` +
|
|
125
|
+
`This likely means a color is being transformed twice — check the call site.`
|
|
126
|
+
);
|
|
127
|
+
}
|
|
128
|
+
const parsed = from(color);
|
|
129
|
+
if (!parsed) {
|
|
130
|
+
return color;
|
|
131
|
+
}
|
|
132
|
+
let t: T = parsed;
|
|
133
|
+
if (spec.hueShift || spec.oklchL !== undefined || spec.oklchC !== undefined) {
|
|
134
|
+
const oklch = oklchFrom(t);
|
|
135
|
+
if (spec.hueShift) {
|
|
136
|
+
oklch.h = shiftHueTowards(oklch.h ?? 0, spec.hueShift.targetHue, spec.hueShift.amount);
|
|
137
|
+
}
|
|
138
|
+
if (spec.oklchL !== undefined) {
|
|
139
|
+
oklch.l = (oklch.l ?? 0) * spec.oklchL;
|
|
140
|
+
}
|
|
141
|
+
if (spec.oklchC !== undefined) {
|
|
142
|
+
oklch.c = (oklch.c ?? 0) * spec.oklchC;
|
|
143
|
+
}
|
|
144
|
+
t = from(oklch);
|
|
145
|
+
}
|
|
146
|
+
for (const filter of filters) {
|
|
147
|
+
t = filter(t);
|
|
148
|
+
}
|
|
149
|
+
const result = format(t);
|
|
150
|
+
__outputs?.add(result);
|
|
151
|
+
return result;
|
|
152
|
+
},
|
|
153
|
+
(color: string, format?: (color: T) => string) =>
|
|
154
|
+
format === cssFromColor || format === undefined ? color : `${color}\0${format?.name || format.toString()}`
|
|
155
|
+
);
|
|
156
|
+
}
|
|
@@ -6,7 +6,7 @@ const colorPickerLoaderStyle = css`
|
|
|
6
6
|
${{
|
|
7
7
|
backgroundColor: themeVars.inversedTextColor,
|
|
8
8
|
borderRadius: border.radius4,
|
|
9
|
-
boxShadow:
|
|
9
|
+
boxShadow: themeVars.shadowPopup,
|
|
10
10
|
padding: space.s12,
|
|
11
11
|
}}
|
|
12
12
|
`;
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import {css} from "@linaria/core";
|
|
2
|
+
import {border, themeVars} from "../design-system";
|
|
2
3
|
const sliderPointerStyle = css`
|
|
3
4
|
${{
|
|
4
5
|
width: 10,
|
|
5
6
|
height: 10,
|
|
6
|
-
borderRadius:
|
|
7
|
+
borderRadius: border.radiusFull,
|
|
7
8
|
border: "2px solid white",
|
|
8
9
|
transform: "translate(-7px, 1px)",
|
|
9
10
|
backgroundColor: "transparent",
|
|
10
|
-
boxShadow:
|
|
11
|
+
boxShadow: themeVars.shadow100,
|
|
11
12
|
}}
|
|
12
13
|
`;
|
|
13
14
|
|
|
@@ -6,7 +6,9 @@ import {border, space, textStyles, themeVars} from "../design-system";
|
|
|
6
6
|
import {SliderPointer} from "./SliderPointer";
|
|
7
7
|
import {Swatch} from "./swatch";
|
|
8
8
|
|
|
9
|
-
const pickerWrapperCss = css
|
|
9
|
+
const pickerWrapperCss = css`
|
|
10
|
+
filter: ${themeVars.colorPickerCssFilter};
|
|
11
|
+
`;
|
|
10
12
|
|
|
11
13
|
const colorSwatchContainerCss = css`
|
|
12
14
|
display: grid;
|
|
@@ -38,7 +40,7 @@ const SliderPicker = ColorWrap(
|
|
|
38
40
|
const [isExpanded, setIsExpanded] = useState(false);
|
|
39
41
|
|
|
40
42
|
const isCustomSwatchSelected = (idxSelectedColor === -1 && hasSelectedColor) || isExpanded;
|
|
41
|
-
const getColorOverride = getColorOverrideFn
|
|
43
|
+
const getColorOverride = getColorOverrideFn ?? ((color) => color);
|
|
42
44
|
|
|
43
45
|
return (
|
|
44
46
|
<CollapsibleRoot open={isCustomSwatchSelected} onOpenChange={setIsExpanded} className={pickerWrapperCss}>
|
|
@@ -47,6 +49,7 @@ const SliderPicker = ColorWrap(
|
|
|
47
49
|
{colors.map((color, idx) => (
|
|
48
50
|
<Swatch
|
|
49
51
|
key={color}
|
|
52
|
+
data-testid={`color-swatch-${idx}`}
|
|
50
53
|
getHoverColor={getSwatchHoverColor}
|
|
51
54
|
onClick={() => {
|
|
52
55
|
setIsExpanded(false);
|
|
@@ -62,7 +65,7 @@ const SliderPicker = ColorWrap(
|
|
|
62
65
|
getHoverColor={getSwatchHoverColor}
|
|
63
66
|
onClick={() => setIsExpanded(!isExpanded)}
|
|
64
67
|
selected={isCustomSwatchSelected}
|
|
65
|
-
color={isCustomSwatchSelected ? rest.hex : undefined}
|
|
68
|
+
color={isCustomSwatchSelected ? getColorOverride(rest.hex) : undefined}
|
|
66
69
|
/>
|
|
67
70
|
</CollapsibleTrigger>
|
|
68
71
|
</div>
|
|
@@ -102,7 +105,7 @@ const SliderPicker = ColorWrap(
|
|
|
102
105
|
export const ColorPicker = ({
|
|
103
106
|
color,
|
|
104
107
|
getSwatchHoverColor,
|
|
105
|
-
getColorOverrideFn
|
|
108
|
+
getColorOverrideFn,
|
|
106
109
|
colors,
|
|
107
110
|
onChangeComplete,
|
|
108
111
|
containerClassName = colorSwatchContainerCss,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {css, CSSProperties, cx} from "@linaria/core";
|
|
2
2
|
import {forwardRef} from "react";
|
|
3
3
|
import {IconButton, IconButtonProps} from "../button/icon-button";
|
|
4
|
-
import {themeVars} from "../design-system";
|
|
4
|
+
import {border, themeVars} from "../design-system";
|
|
5
5
|
|
|
6
6
|
const swatchColorVar = "--fibery-swatch-color";
|
|
7
7
|
const swatchHoverColorVar = "--fibery-swatch-hover-color";
|
|
@@ -16,7 +16,7 @@ const swatchContainerCss = css`
|
|
|
16
16
|
|
|
17
17
|
const swatchCss = css`
|
|
18
18
|
position: relative;
|
|
19
|
-
border-radius:
|
|
19
|
+
border-radius: ${border.radiusFull};
|
|
20
20
|
width: var(${swatchIconSizeVar});
|
|
21
21
|
height: var(${swatchIconSizeVar});
|
|
22
22
|
border: 1px solid ${themeVars.colorPickerSwatchBorder};
|
|
@@ -30,7 +30,7 @@ const selectedCss = css`
|
|
|
30
30
|
display: block;
|
|
31
31
|
width: calc(var(${swatchIconSizeVar}) - 4px);
|
|
32
32
|
height: calc(var(${swatchIconSizeVar}) - 4px);
|
|
33
|
-
border-radius:
|
|
33
|
+
border-radius: ${border.radiusFull};
|
|
34
34
|
top: 1px;
|
|
35
35
|
left: 1px;
|
|
36
36
|
border: 1.5px solid ${themeVars.whiteColor};
|
|
@@ -38,7 +38,8 @@ const selectedCss = css`
|
|
|
38
38
|
`;
|
|
39
39
|
|
|
40
40
|
const customCss = css`
|
|
41
|
-
background:
|
|
41
|
+
background:
|
|
42
|
+
radial-gradient(50% 50% at 50% 50%, #ffffff 0%, transparent 100%),
|
|
42
43
|
conic-gradient(
|
|
43
44
|
from 0deg at 50% 50%,
|
|
44
45
|
#ff0000 0deg,
|