-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feat UIKit Hint #273
Merged
Merged
Feat UIKit Hint #273
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
commit 0efc40a Author: Kevin <[email protected]> Date: Wed Oct 9 15:07:36 2024 +0900 Remove duplicated balloons commit 962da31 Author: Kevin <[email protected]> Date: Wed Oct 9 15:06:42 2024 +0900 Delete スクリーンショット 2024-02-21 17.28.10.png commit f535373 Merge: 6333a45 a24e6ad Author: Kevin <[email protected]> Date: Wed Oct 9 15:02:23 2024 +0900 Merge branch 'main' into feat-swiftui-hint commit a24e6ad Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed Oct 9 13:43:19 2024 +0900 Bump @babel/runtime from 7.25.6 to 7.25.7 in /scripts/xcasset-gen (#268) Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.25.6 to 7.25.7. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.25.7/packages/babel-runtime) --- updated-dependencies: - dependency-name: "@babel/runtime" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit af55efc Author: Kevin <[email protected]> Date: Wed Oct 9 13:42:52 2024 +0900 Feat UIKit Balloon (#252) * Add Tooltip view * Refactor Tooltip style * Can adjust tooltip position * Add tooltip playground for testing * Refine layout tips logic * Refine layout logic * Update CharcoalTooltip.swift * Refine tooltip spacing * Add CharcoalIdentifiableOverlayView * Use Actor to prevent Data Race * Remove CharcoalIdentifiableOverlayView out * Clean code * Only update view when it is isPresenting * Clean access control * Add TooltipsView * Fix tooltipY layout logic * Use main actor and remove CharcoalContainerManagerKey * Fix access control on CharcoalContainerManager * Make viewID as @State * Use EnviromentObject to create CharcoalContainerManager for each container * Use ObservedObject on CharcoalContainerManager * Add use charcoal button as demo trigger * Add arrow logic on tooltip * Refine arrow logic * Refine arrow layout logic * Use StateObject to prevent unexpected reinit * Refactor TooltipBubbleShape * Fix edge layout logic * Add comment * Format code * Use new approach to remove adaptiveMaxWidth * Fix the tip bubble's position latency * Add dismiss when interaction * Reformat * Add initial Snackbar * Add thumbnail image * Add support for thumbnailImage and action * Clean code * Reformat code * Rename ActionContent * Replace thumbnailImage type * Add dismissOnTouchOutside control * Add comment on CharcoalIdentifiableOverlayView * Update CharcoalTooltip.swift * Add SnackBar demo * Replace thumbnail with charcoal logo * Use @ViewBuilder * Clean Code * Made code more readable * Update ToastsView.swift * Add auto dismiss logic * Fix dismiss comment * Add Identifiable to CharcoalIdentifiableOverlayView * Make all CharcoalPopupView identifiable * Move all control logic into CharcoalPopupView * Reformat * Refine CharcoalOverlayContainerChild logic of updating view * Rename to CharcoalOverlayUpdaterContainer * Add CharcoalToast * Refine toast control * Refine screen edge of toast * Refine comments * Rename CharcoalPopupProtocol * Refine isActuallyPresenting logic * Clean animation * Add animation configuration * Add custom animation * Add CharcoalToastProtocol * Makes CharcoalSnackBar adapt CharcoalToastProtocol * Remove time delay * Refine SnackBar Animation logic * Add CharcoalToastAnimationModifier * Reformat code * Update CharcoalPopupViewEdge of direction * Refine demo * Fix missing animation * Rename charcoalAnimatedToast to charcoalAnimatableToast * Rename CharcoalAnimatableToastProtocol * Rename for clean * Simplify protocols * Add drag control * Add Dismiss timer control logic * Refine drag damping logic * Add CharcoalToastDraggable * Use CharcoalToastDraggableModifier on CharcoalSnackBar * Format code * Add init structure * Add action button * Replace placeholder with ja text * Use CGPath union for iOS 16 * Update TooltipBubbleShape.swift * Update CharcoalTooltip.swift * Use GeometryReader on overlay * Use new path draw logic * Refine arrow width * Refine arrow width * Clean Code * Refine preview * Use timer instead of DispatchQueue * Refine layout logic * Refine arrow logic * Refine layout logic * Add missing charcoalOverlayContainer * Add Balloon to examples * Add default tutorials * Remove overlay when disappear * Refine charcoalOverlayContainer place * Refine * Update CharcoalSnackBar.swift * Init CharcoalTooltipView * Init Bubble shape * Refine tooltip preview * Rename as Charcoal Bubble Shape * Add Label to tooltip * Update text frame when traitCollection did change * Update CharcoalTooltipView.swift * Add CharcoalTooltip * Can debug show on method * Can layout point * Can redraw target point * Update CharcoalTooltip.swift * Refine tooltip display * Share the logic * Use interaction mode * Use CharcoalOverlayContainerView * Update CharcoalOverlay.swift * Refactor to ChacoalOverlayManager * Makes CharcoalIdentifiableOverlayView Identifiable * Refine layout logic * Add display(view: CharcoalIdentifiableOverlayView) * Add tooltip to uikit example * Update Tooltips.swift * Add CharcoalIdentifiableOverlayDelegate * Reformat * Update StringExtension.swift * Add to UIKitSample * Fix public requirements * Reformat * Use touch began to handle dismiss on touch * Update CharcoalIdentifiableOverlayView.swift * Add CharcoalToastView * change cornerRadius * Add CharcoalToast * Move show logic out * Reformat * Refine dismiss method * Update CharcoalToast.swift * Add ActionContent and ActionComplete callback * Update CharcoalToast.swift * Update CharcoalBubbleShape_UIKit.swift * Refine layout animation logic * Refine animation * Add dismiss * Add example * Reformat * Add toasts example * Add CharcoalSnackBarView * Update project.pbxproj * Clean code * Refine layout logic * Add CharcoalSnackBar * Update CharcoalSnackBar.swift * Update CharcoalSnackBar.swift * Refine layout logic * Refine toasts text * Update CharcoalToastDraggableModifier.swift * Add CharcoalRubberGesture * use id to notify did dismiss * Add rubber gesture * Refactor * Refactor * Fix memory leak * Format * Fix memory leak * Add example * Refine snackbar * Refine swift lint * Refactor CharcoalToastView * Refactor CharcoalSnackBarView * Reformat * Refine self logic * Add initial Balloon * Add line stroke * Refine radius * Fix the baseline alignment * Layout balloon elements * Clean * Add balloon view * Update layout logic * Refine balloon layout logic * Update CharcoalBalloonView.swift * Add demo * Add anchor view tracking * Move logics into updateConstraint * Update CharcoalBalloon.swift * Reformat code * reformat * Update formats and documents * Clean code * Refine documents * Update CharcoalBalloon.swift * Update CharcoalBalloon.swift * Reformat * Fix name * Fix geometry * Revert "Fix geometry" This reverts commit a89bf66. * Fix proxy name * Adjust unused text * Replace charcoal logo * Remove conditional modifier * Add default dismiss time to toasts * Reformat * Reformat * Fix logo image * Fix balloon name * Update Balloons.swift * Remove CharcoalRubberGesture * Remove unused UIColor Extension * Clean Code * Clean proxy usage * Update Package.resolved * Add example to dismiss balloons with view commit 5fdd8e9 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Sep 24 17:00:40 2024 +0900 Bump github.com/nicklockwood/swiftformat in /BuildTools (#267) Bumps [github.com/nicklockwood/swiftformat](https://github.com/nicklockwood/SwiftFormat) from 0.54.4 to 0.54.5. - [Release notes](https://github.com/nicklockwood/SwiftFormat/releases) - [Commits](nicklockwood/SwiftFormat@0.54.4...0.54.5) --- updated-dependencies: - dependency-name: github.com/nicklockwood/swiftformat dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 5ccd42a Author: Kevin <[email protected]> Date: Tue Sep 10 16:39:50 2024 +0900 Clean @warn_unqualified_access (#265) * clean warn_unqualified_access * Revert "clean warn_unqualified_access" This reverts commit 9613620. * Reformat commit f5c6710 Author: Kevin <[email protected]> Date: Tue Sep 10 15:49:51 2024 +0900 Revert "Clean Xcode 16 warning" This reverts commit 7168c65. commit 7168c65 Author: Kevin <[email protected]> Date: Tue Sep 10 15:46:16 2024 +0900 Clean Xcode 16 warning commit 3725d99 Author: Kevin <[email protected]> Date: Tue Sep 10 15:05:55 2024 +0900 Feat SwiftUI Balloon (#251) * Add Tooltip view * Refactor Tooltip style * Can adjust tooltip position * Add tooltip playground for testing * Refine layout tips logic * Refine layout logic * Update CharcoalTooltip.swift * Refine tooltip spacing * Add CharcoalIdentifiableOverlayView * Use Actor to prevent Data Race * Remove CharcoalIdentifiableOverlayView out * Clean code * Only update view when it is isPresenting * Clean access control * Add TooltipsView * Fix tooltipY layout logic * Use main actor and remove CharcoalContainerManagerKey * Fix access control on CharcoalContainerManager * Make viewID as @State * Use EnviromentObject to create CharcoalContainerManager for each container * Use ObservedObject on CharcoalContainerManager * Add use charcoal button as demo trigger * Add arrow logic on tooltip * Refine arrow logic * Refine arrow layout logic * Use StateObject to prevent unexpected reinit * Refactor TooltipBubbleShape * Fix edge layout logic * Add comment * Format code * Use new approach to remove adaptiveMaxWidth * Fix the tip bubble's position latency * Add dismiss when interaction * Reformat * Add initial Snackbar * Add thumbnail image * Add support for thumbnailImage and action * Clean code * Reformat code * Rename ActionContent * Replace thumbnailImage type * Add dismissOnTouchOutside control * Add comment on CharcoalIdentifiableOverlayView * Update CharcoalTooltip.swift * Add SnackBar demo * Replace thumbnail with charcoal logo * Use @ViewBuilder * Clean Code * Made code more readable * Update ToastsView.swift * Add auto dismiss logic * Fix dismiss comment * Add Identifiable to CharcoalIdentifiableOverlayView * Make all CharcoalPopupView identifiable * Move all control logic into CharcoalPopupView * Reformat * Refine CharcoalOverlayContainerChild logic of updating view * Rename to CharcoalOverlayUpdaterContainer * Add CharcoalToast * Refine toast control * Refine screen edge of toast * Refine comments * Rename CharcoalPopupProtocol * Refine isActuallyPresenting logic * Clean animation * Add animation configuration * Add custom animation * Add CharcoalToastProtocol * Makes CharcoalSnackBar adapt CharcoalToastProtocol * Remove time delay * Refine SnackBar Animation logic * Add CharcoalToastAnimationModifier * Reformat code * Update CharcoalPopupViewEdge of direction * Refine demo * Fix missing animation * Rename charcoalAnimatedToast to charcoalAnimatableToast * Rename CharcoalAnimatableToastProtocol * Rename for clean * Simplify protocols * Add drag control * Add Dismiss timer control logic * Refine drag damping logic * Add CharcoalToastDraggable * Use CharcoalToastDraggableModifier on CharcoalSnackBar * Format code * Add init structure * Add action button * Replace placeholder with ja text * Use CGPath union for iOS 16 * Update TooltipBubbleShape.swift * Update CharcoalTooltip.swift * Use GeometryReader on overlay * Use new path draw logic * Refine arrow width * Refine arrow width * Clean Code * Refine preview * Use timer instead of DispatchQueue * Refine layout logic * Refine arrow logic * Refine layout logic * Add missing charcoalOverlayContainer * Add Balloon to examples * Add default tutorials * Remove overlay when disappear * Refine charcoalOverlayContainer place * Refine * Update CharcoalSnackBar.swift * Init CharcoalTooltipView * Init Bubble shape * Refine tooltip preview * Rename as Charcoal Bubble Shape * Add Label to tooltip * Update text frame when traitCollection did change * Update CharcoalTooltipView.swift * Add CharcoalTooltip * Can debug show on method * Can layout point * Can redraw target point * Update CharcoalTooltip.swift * Refine tooltip display * Share the logic * Use interaction mode * Use CharcoalOverlayContainerView * Update CharcoalOverlay.swift * Refactor to ChacoalOverlayManager * Makes CharcoalIdentifiableOverlayView Identifiable * Refine layout logic * Add display(view: CharcoalIdentifiableOverlayView) * Add tooltip to uikit example * Update Tooltips.swift * Add CharcoalIdentifiableOverlayDelegate * Reformat * Update StringExtension.swift * Add to UIKitSample * Fix public requirements * Reformat * Use touch began to handle dismiss on touch * Update CharcoalIdentifiableOverlayView.swift * Add CharcoalToastView * change cornerRadius * Add CharcoalToast * Move show logic out * Reformat * Refine dismiss method * Update CharcoalToast.swift * Add ActionContent and ActionComplete callback * Update CharcoalToast.swift * Update CharcoalBubbleShape_UIKit.swift * Refine layout animation logic * Refine animation * Add dismiss * Add example * Reformat * Add toasts example * Add CharcoalSnackBarView * Update project.pbxproj * Clean code * Refine layout logic * Add CharcoalSnackBar * Update CharcoalSnackBar.swift * Update CharcoalSnackBar.swift * Refine layout logic * Refine toasts text * Update CharcoalToastDraggableModifier.swift * Add CharcoalRubberGesture * use id to notify did dismiss * Add rubber gesture * Refactor * Refactor * Fix memory leak * Format * Fix memory leak * Add example * Refine snackbar * Refine swift lint * Refactor CharcoalToastView * Refactor CharcoalSnackBarView * Reformat * Refine self logic * Reformat * Fix name * Fix geometry * Revert "Fix geometry" This reverts commit a89bf66. * Fix proxy name * Adjust unused text * Replace charcoal logo * Remove conditional modifier * Add default dismiss time to toasts * Reformat * Reformat * Fix logo image * Fix balloon name * Remove CharcoalRubberGesture * Remove unused UIColor Extension * Clean Code * Clean proxy usage * Update Package.resolved commit 40a982f Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Sep 10 14:54:24 2024 +0900 Bump github.com/nicklockwood/swiftformat in /BuildTools (#264) Bumps [github.com/nicklockwood/swiftformat](https://github.com/nicklockwood/SwiftFormat) from 0.54.3 to 0.54.4. - [Release notes](https://github.com/nicklockwood/SwiftFormat/releases) - [Commits](nicklockwood/SwiftFormat@0.54.3...0.54.4) --- updated-dependencies: - dependency-name: github.com/nicklockwood/swiftformat dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit f2990c9 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Sep 10 14:54:12 2024 +0900 Bump github.com/realm/swiftlint from 0.56.2 to 0.57.0 in /BuildTools (#263) Bumps [github.com/realm/swiftlint](https://github.com/realm/SwiftLint) from 0.56.2 to 0.57.0. - [Release notes](https://github.com/realm/SwiftLint/releases) - [Commits](realm/SwiftLint@0.56.2...0.57.0) --- updated-dependencies: - dependency-name: github.com/realm/swiftlint dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit e5f5932 Author: Kevin <[email protected]> Date: Wed Sep 4 14:56:00 2024 +0900 Fix dark mode support (#261) * Fix tooltip demo cell label dark mode * Fix dark mode enable logic * Use color to fix dynmaic color on iOS 17 * Fix iOS 17 cgColor manually update * Fix traitCollectionDidChange * Fix cgColorUsage * Clean code * Reformat code commit 1e0a061 Author: Kevin <[email protected]> Date: Tue Sep 3 16:23:31 2024 +0800 Refine auto dismiss to make it easier to test (#262) * Makes toast shows longer * Increase to 4 seconds commit 23b472b Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Sep 3 14:44:06 2024 +0900 Bump @babel/runtime from 7.25.4 to 7.25.6 in /scripts/xcasset-gen (#260) Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.25.4 to 7.25.6. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.25.6/packages/babel-runtime) --- updated-dependencies: - dependency-name: "@babel/runtime" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 55a9659 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Aug 30 15:54:02 2024 +0900 Bump micromatch from 4.0.5 to 4.0.8 in /scripts/xcasset-gen (#259) Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.5 to 4.0.8. - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](micromatch/micromatch@4.0.5...4.0.8) --- updated-dependencies: - dependency-name: micromatch dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 387fe92 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Aug 27 10:18:54 2024 +0800 Bump github.com/realm/swiftlint from 0.56.1 to 0.56.2 in /BuildTools (#258) Bumps [github.com/realm/swiftlint](https://github.com/realm/SwiftLint) from 0.56.1 to 0.56.2. - [Release notes](https://github.com/realm/SwiftLint/releases) - [Commits](realm/SwiftLint@0.56.1...0.56.2) --- updated-dependencies: - dependency-name: github.com/realm/swiftlint dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit b56f347 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Aug 27 10:18:44 2024 +0800 Bump @babel/runtime from 7.25.0 to 7.25.4 in /scripts/xcasset-gen (#257) Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.25.0 to 7.25.4. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.25.4/packages/babel-runtime) --- updated-dependencies: - dependency-name: "@babel/runtime" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 3ef31c3 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Aug 27 10:18:33 2024 +0800 Bump @octokit/rest from 21.0.1 to 21.0.2 in /scripts/create-pull-request (#256) Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 21.0.1 to 21.0.2. - [Release notes](https://github.com/octokit/rest.js/releases) - [Commits](octokit/rest.js@v21.0.1...v21.0.2) --- updated-dependencies: - dependency-name: "@octokit/rest" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit a4d9c27 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed Aug 14 13:49:31 2024 +0800 Bump github.com/realm/swiftlint from 0.55.1 to 0.56.1 in /BuildTools (#255) Bumps [github.com/realm/swiftlint](https://github.com/realm/SwiftLint) from 0.55.1 to 0.56.1. - [Release notes](https://github.com/realm/SwiftLint/releases) - [Commits](realm/SwiftLint@0.55.1...0.56.1) --- updated-dependencies: - dependency-name: github.com/realm/swiftlint dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit ce38d64 Author: Kevin <[email protected]> Date: Wed Aug 7 15:24:27 2024 +0800 Feat UIKit Toast (#250) * Add Tooltip view * Refactor Tooltip style * Can adjust tooltip position * Add tooltip playground for testing * Refine layout tips logic * Refine layout logic * Update CharcoalTooltip.swift * Refine tooltip spacing * Add CharcoalIdentifiableOverlayView * Use Actor to prevent Data Race * Remove CharcoalIdentifiableOverlayView out * Clean code * Only update view when it is isPresenting * Clean access control * Add TooltipsView * Fix tooltipY layout logic * Use main actor and remove CharcoalContainerManagerKey * Fix access control on CharcoalContainerManager * Make viewID as @State * Use EnviromentObject to create CharcoalContainerManager for each container * Use ObservedObject on CharcoalContainerManager * Add use charcoal button as demo trigger * Add arrow logic on tooltip * Refine arrow logic * Refine arrow layout logic * Use StateObject to prevent unexpected reinit * Refactor TooltipBubbleShape * Fix edge layout logic * Add comment * Format code * Use new approach to remove adaptiveMaxWidth * Fix the tip bubble's position latency * Add dismiss when interaction * Reformat * Add initial Snackbar * Add thumbnail image * Add support for thumbnailImage and action * Clean code * Reformat code * Rename ActionContent * Replace thumbnailImage type * Add dismissOnTouchOutside control * Add comment on CharcoalIdentifiableOverlayView * Update CharcoalTooltip.swift * Add SnackBar demo * Replace thumbnail with charcoal logo * Use @ViewBuilder * Clean Code * Made code more readable * Update ToastsView.swift * Add auto dismiss logic * Fix dismiss comment * Add Identifiable to CharcoalIdentifiableOverlayView * Make all CharcoalPopupView identifiable * Move all control logic into CharcoalPopupView * Reformat * Refine CharcoalOverlayContainerChild logic of updating view * Rename to CharcoalOverlayUpdaterContainer * Add CharcoalToast * Refine toast control * Refine screen edge of toast * Refine comments * Rename CharcoalPopupProtocol * Refine isActuallyPresenting logic * Clean animation * Add animation configuration * Add custom animation * Add CharcoalToastProtocol * Makes CharcoalSnackBar adapt CharcoalToastProtocol * Remove time delay * Refine SnackBar Animation logic * Add CharcoalToastAnimationModifier * Reformat code * Update CharcoalPopupViewEdge of direction * Refine demo * Fix missing animation * Rename charcoalAnimatedToast to charcoalAnimatableToast * Rename CharcoalAnimatableToastProtocol * Rename for clean * Simplify protocols * Add drag control * Add Dismiss timer control logic * Refine drag damping logic * Add CharcoalToastDraggable * Use CharcoalToastDraggableModifier on CharcoalSnackBar * Format code * Init CharcoalTooltipView * Init Bubble shape * Refine tooltip preview * Rename as Charcoal Bubble Shape * Add Label to tooltip * Update text frame when traitCollection did change * Update CharcoalTooltipView.swift * Add CharcoalTooltip * Can debug show on method * Can layout point * Can redraw target point * Update CharcoalTooltip.swift * Refine tooltip display * Share the logic * Use interaction mode * Use CharcoalOverlayContainerView * Update CharcoalOverlay.swift * Refactor to ChacoalOverlayManager * Makes CharcoalIdentifiableOverlayView Identifiable * Refine layout logic * Add display(view: CharcoalIdentifiableOverlayView) * Add tooltip to uikit example * Update Tooltips.swift * Add CharcoalIdentifiableOverlayDelegate * Reformat * Update StringExtension.swift * Add to UIKitSample * Fix public requirements * Reformat * Use touch began to handle dismiss on touch * Update CharcoalIdentifiableOverlayView.swift * Add CharcoalToastView * change cornerRadius * Add CharcoalToast * Move show logic out * Reformat * Refine dismiss method * Update CharcoalToast.swift * Add ActionContent and ActionComplete callback * Update CharcoalToast.swift * Update CharcoalBubbleShape_UIKit.swift * Refine layout animation logic * Refine animation * Add dismiss * Add example * Reformat * Add toasts example * Add CharcoalSnackBarView * Update project.pbxproj * Clean code * Refine layout logic * Add CharcoalSnackBar * Update CharcoalSnackBar.swift * Update CharcoalSnackBar.swift * Refine layout logic * Refine toasts text * Update CharcoalToastDraggableModifier.swift * Add CharcoalRubberGesture * use id to notify did dismiss * Add rubber gesture * Refactor * Refactor * Fix memory leak * Format * Fix memory leak * Add example * Refine snackbar * Refine swift lint * Refactor CharcoalToastView * Refactor CharcoalSnackBarView * Reformat * Refine self logic * Reformat * Fix name * Fix geometry * Revert "Fix geometry" This reverts commit a89bf66. * Fix proxy name * Adjust unused text * Replace charcoal logo * Remove conditional modifier * Add default dismiss time to toasts * Reformat * Fix logo image * Move imageWithColor out of shared * Refine toast with action callback * Clean code * Refine toasts looking * Reformat * Update CharcoalToast.swift * Refine gesture animator * Rename toast as snackbar * Remove deinit commit 5c0761b Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Aug 6 14:52:23 2024 +0800 Bump @babel/runtime from 7.24.8 to 7.25.0 in /scripts/xcasset-gen (#253) Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.24.8 to 7.25.0. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.25.0/packages/babel-runtime) --- updated-dependencies: - dependency-name: "@babel/runtime" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 5a64efd Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Aug 6 14:51:54 2024 +0800 Bump github.com/nicklockwood/swiftformat in /BuildTools (#254) Bumps [github.com/nicklockwood/swiftformat](https://github.com/nicklockwood/SwiftFormat) from 0.54.1 to 0.54.3. - [Release notes](https://github.com/nicklockwood/SwiftFormat/releases) - [Commits](nicklockwood/SwiftFormat@0.54.1...0.54.3) --- updated-dependencies: - dependency-name: github.com/nicklockwood/swiftformat dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit b238c37 Author: Kevin <[email protected]> Date: Wed Jul 24 14:03:52 2024 +0800 Feat SwiftUI Toast (#245) * Add Tooltip view * Refactor Tooltip style * Can adjust tooltip position * Add tooltip playground for testing * Refine layout tips logic * Refine layout logic * Update CharcoalTooltip.swift * Refine tooltip spacing * Add CharcoalIdentifiableOverlayView * Use Actor to prevent Data Race * Remove CharcoalIdentifiableOverlayView out * Clean code * Only update view when it is isPresenting * Clean access control * Add TooltipsView * Fix tooltipY layout logic * Use main actor and remove CharcoalContainerManagerKey * Fix access control on CharcoalContainerManager * Make viewID as @State * Use EnviromentObject to create CharcoalContainerManager for each container * Use ObservedObject on CharcoalContainerManager * Add use charcoal button as demo trigger * Add arrow logic on tooltip * Refine arrow logic * Refine arrow layout logic * Use StateObject to prevent unexpected reinit * Refactor TooltipBubbleShape * Fix edge layout logic * Add comment * Format code * Use new approach to remove adaptiveMaxWidth * Fix the tip bubble's position latency * Add dismiss when interaction * Reformat * Add initial Snackbar * Add thumbnail image * Add support for thumbnailImage and action * Clean code * Reformat code * Rename ActionContent * Replace thumbnailImage type * Add dismissOnTouchOutside control * Add comment on CharcoalIdentifiableOverlayView * Update CharcoalTooltip.swift * Add SnackBar demo * Replace thumbnail with charcoal logo * Use @ViewBuilder * Clean Code * Made code more readable * Update ToastsView.swift * Add auto dismiss logic * Fix dismiss comment * Add Identifiable to CharcoalIdentifiableOverlayView * Make all CharcoalPopupView identifiable * Move all control logic into CharcoalPopupView * Reformat * Refine CharcoalOverlayContainerChild logic of updating view * Rename to CharcoalOverlayUpdaterContainer * Add CharcoalToast * Refine toast control * Refine screen edge of toast * Refine comments * Rename CharcoalPopupProtocol * Refine isActuallyPresenting logic * Clean animation * Add animation configuration * Add custom animation * Add CharcoalToastProtocol * Makes CharcoalSnackBar adapt CharcoalToastProtocol * Remove time delay * Refine SnackBar Animation logic * Add CharcoalToastAnimationModifier * Reformat code * Update CharcoalPopupViewEdge of direction * Refine demo * Fix missing animation * Rename charcoalAnimatedToast to charcoalAnimatableToast * Rename CharcoalAnimatableToastProtocol * Rename for clean * Simplify protocols * Add drag control * Add Dismiss timer control logic * Refine drag damping logic * Add CharcoalToastDraggable * Use CharcoalToastDraggableModifier on CharcoalSnackBar * Format code * Init CharcoalTooltipView * Init Bubble shape * Refine tooltip preview * Rename as Charcoal Bubble Shape * Add Label to tooltip * Update text frame when traitCollection did change * Update CharcoalTooltipView.swift * Add CharcoalTooltip * Can debug show on method * Can layout point * Can redraw target point * Update CharcoalTooltip.swift * Refine tooltip display * Share the logic * Use interaction mode * Use CharcoalOverlayContainerView * Update CharcoalOverlay.swift * Refactor to ChacoalOverlayManager * Makes CharcoalIdentifiableOverlayView Identifiable * Refine layout logic * Add display(view: CharcoalIdentifiableOverlayView) * Add tooltip to uikit example * Update Tooltips.swift * Add CharcoalIdentifiableOverlayDelegate * Reformat * Update StringExtension.swift * Add to UIKitSample * Fix public requirements * Reformat * Use touch began to handle dismiss on touch * Update CharcoalIdentifiableOverlayView.swift * Move show logic out * Reformat * Refine dismiss method * Add ActionContent and ActionComplete callback * Update CharcoalBubbleShape_UIKit.swift * Reformat * Fix name * Fix geometry * Revert "Fix geometry" This reverts commit a89bf66. * Fix proxy name * Adjust unused text * Replace charcoal logo * Remove conditional modifier * Add default dismiss time to toasts * Reformat commit 5cfd721 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jul 23 12:41:23 2024 +0800 Bump @octokit/rest from 21.0.0 to 21.0.1 in /scripts/create-pull-request (#249) Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 21.0.0 to 21.0.1. - [Release notes](https://github.com/octokit/rest.js/releases) - [Commits](octokit/rest.js@v21.0.0...v21.0.1) --- updated-dependencies: - dependency-name: "@octokit/rest" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 9e3a42d Author: Kevin <[email protected]> Date: Tue Jul 23 13:41:03 2024 +0900 Feat tooltip unit test (#246) * Add tooltip unit test * Reformat commit dc8b1de Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jul 16 13:10:22 2024 +0800 Bump github.com/nicklockwood/swiftformat in /BuildTools (#248) Bumps [github.com/nicklockwood/swiftformat](https://github.com/nicklockwood/SwiftFormat) from 0.54.0 to 0.54.1. - [Release notes](https://github.com/nicklockwood/SwiftFormat/releases) - [Commits](nicklockwood/SwiftFormat@0.54.0...0.54.1) --- updated-dependencies: - dependency-name: github.com/nicklockwood/swiftformat dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit d79cae7 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jul 16 13:10:11 2024 +0800 Bump @babel/runtime from 7.24.7 to 7.24.8 in /scripts/xcasset-gen (#247) Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.24.7 to 7.24.8. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.24.8/packages/babel-runtime) --- updated-dependencies: - dependency-name: "@babel/runtime" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit babc0d4 Author: Kevin <[email protected]> Date: Wed Jul 10 16:43:29 2024 +0900 Feat UIKit Tooltip (#232) * Add Tooltip view * Refactor Tooltip style * Can adjust tooltip position * Add tooltip playground for testing * Refine layout tips logic * Refine layout logic * Update CharcoalTooltip.swift * Refine tooltip spacing * Add CharcoalIdentifiableOverlayView * Use Actor to prevent Data Race * Remove CharcoalIdentifiableOverlayView out * Clean code * Only update view when it is isPresenting * Clean access control * Add TooltipsView * Fix tooltipY layout logic * Use main actor and remove CharcoalContainerManagerKey * Fix access control on CharcoalContainerManager * Make viewID as @State * Use EnviromentObject to create CharcoalContainerManager for each container * Use ObservedObject on CharcoalContainerManager * Add use charcoal button as demo trigger * Add arrow logic on tooltip * Refine arrow logic * Refine arrow layout logic * Use StateObject to prevent unexpected reinit * Refactor TooltipBubbleShape * Fix edge layout logic * Add comment * Format code * Use new approach to remove adaptiveMaxWidth * Fix the tip bubble's position latency * Add dismiss when interaction * Reformat * Init CharcoalTooltipView * Init Bubble shape * Refine tooltip preview * Rename as Charcoal Bubble Shape * Add Label to tooltip * Update text frame when traitCollection did change * Update CharcoalTooltipView.swift * Add CharcoalTooltip * Can debug show on method * Can layout point * Can redraw target point * Update CharcoalTooltip.swift * Refine tooltip display * Share the logic * Use interaction mode * Use CharcoalOverlayContainerView * Update CharcoalOverlay.swift * Refactor to ChacoalOverlayManager * Makes CharcoalIdentifiableOverlayView Identifiable * Refine layout logic * Add display(view: CharcoalIdentifiableOverlayView) * Add tooltip to uikit example * Update Tooltips.swift * Add CharcoalIdentifiableOverlayDelegate * Reformat * Update StringExtension.swift * Add to UIKitSample * Fix public requirements * Reformat * Use touch began to handle dismiss on touch * Update CharcoalIdentifiableOverlayView.swift * Move show logic out * Reformat * Refine dismiss method * Add ActionContent and ActionComplete callback * Update CharcoalBubbleShape_UIKit.swift * Make use of Autolayout logic * Reformat * Refine deinit * Move config cell to TooltipTableViewCell * guard backgroundView == nil * Remove public of ChacoalOverlayManager * Make tooltipXY private * Reformat * refactor backgroundView commit 5da0586 Author: Kevin <[email protected]> Date: Tue Jul 9 15:45:14 2024 +0900 Update swiftlint from kwzr (#244) commit 7f77d3f Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed Jul 3 16:48:37 2024 +0900 Bump globby from 14.0.1 to 14.0.2 in /scripts/xcasset-gen (#242) Bumps [globby](https://github.com/sindresorhus/globby) from 14.0.1 to 14.0.2. - [Release notes](https://github.com/sindresorhus/globby/releases) - [Commits](sindresorhus/globby@v14.0.1...v14.0.2) --- updated-dependencies: - dependency-name: globby dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 4f48445 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jun 25 14:39:18 2024 +0900 Bump @octokit/rest from 20.1.1 to 21.0.0 in /scripts/create-pull-request (#241) Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 20.1.1 to 21.0.0. - [Release notes](https://github.com/octokit/rest.js/releases) - [Commits](octokit/rest.js@v20.1.1...v21.0.0) --- updated-dependencies: - dependency-name: "@octokit/rest" dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 9e41204 Author: Kevin <[email protected]> Date: Tue Jun 25 14:08:01 2024 +0900 Feat SwiftUI Tooltip (#231) * Add Tooltip view * Refactor Tooltip style * Can adjust tooltip position * Add tooltip playground for testing * Refine layout tips logic * Refine layout logic * Update CharcoalTooltip.swift * Refine tooltip spacing * Add CharcoalIdentifiableOverlayView * Use Actor to prevent Data Race * Remove CharcoalIdentifiableOverlayView out * Clean code * Only update view when it is isPresenting * Clean access control * Add TooltipsView * Fix tooltipY layout logic * Use main actor and remove CharcoalContainerManagerKey * Fix access control on CharcoalContainerManager * Make viewID as @State * Use EnviromentObject to create CharcoalContainerManager for each container * Use ObservedObject on CharcoalContainerManager * Add use charcoal button as demo trigger * Add arrow logic on tooltip * Refine arrow logic * Refine arrow layout logic * Use StateObject to prevent unexpected reinit * Refactor TooltipBubbleShape * Fix edge layout logic * Add comment * Format code * Use new approach to remove adaptiveMaxWidth * Fix the tip bubble's position latency * Add dismiss when interaction * Reformat * Fix public requirements * Rename all as proxy commit 8ca7890 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jun 18 17:32:19 2024 +0900 Bump github.com/nicklockwood/swiftformat in /BuildTools (#239) Bumps [github.com/nicklockwood/swiftformat](https://github.com/nicklockwood/SwiftFormat) from 0.53.10 to 0.54.0. - [Release notes](https://github.com/nicklockwood/SwiftFormat/releases) - [Commits](nicklockwood/SwiftFormat@0.53.10...0.54.0) --- updated-dependencies: - dependency-name: github.com/nicklockwood/swiftformat dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 09d369d Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jun 18 14:39:42 2024 +0900 Bump @babel/runtime from 7.24.6 to 7.24.7 in /scripts/xcasset-gen (#240) Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.24.6 to 7.24.7. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.24.7/packages/babel-runtime) --- updated-dependencies: - dependency-name: "@babel/runtime" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit b7b97a9 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jun 18 14:39:11 2024 +0900 Bump braces from 3.0.2 to 3.0.3 in /scripts/xcasset-gen (#235) Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3. - [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md) - [Commits](micromatch/braces@3.0.2...3.0.3) --- updated-dependencies: - dependency-name: braces dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit fd813f4 Author: Kevin <[email protected]> Date: Tue Jun 18 14:38:45 2024 +0900 override overrideUserInterfaceStyle (#236) commit 5f670ca Author: Kevin <[email protected]> Date: Wed Jun 12 21:13:25 2024 +0900 Revert "Bump @babel/runtime from 7.24.6 to 7.24.7 in /scripts/xcasset-gen (#234)" This reverts commit ab74d37. commit ab74d37 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed Jun 12 15:37:37 2024 +0900 Bump @babel/runtime from 7.24.6 to 7.24.7 in /scripts/xcasset-gen (#234) Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.24.6 to 7.24.7. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.24.7/packages/babel-runtime) --- updated-dependencies: - dependency-name: "@babel/runtime" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit e4b6a2c Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jun 4 14:05:48 2024 +0900 Bump quicktype-core from 23.0.168 to 23.0.170 in /scripts/foundation-gen (#233) Bumps [quicktype-core](https://github.com/quicktype/quicktype) from 23.0.168 to 23.0.170. - [Commits](https://github.com/quicktype/quicktype/commits) --- updated-dependencies: - dependency-name: quicktype-core dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
kvvzr
requested changes
Oct 22, 2024
Sources/CharcoalSwiftUI/Extensions/ConditionalViewModifier.swift
Outdated
Show resolved
Hide resolved
kvvzr
approved these changes
Oct 22, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
解決したいこと
UIKitバージョンのHint Component
スクリーンショット
動作確認環境
iOS 15 - iOS 17