-
Notifications
You must be signed in to change notification settings - Fork 5.5k
Clockify - new components #18989
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
base: master
Are you sure you want to change the base?
Clockify - new components #18989
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 2 Skipped Deployments
|
WalkthroughAdds multiple read-only Clockify actions and a report action, extends the Clockify app with new propDefinitions and list/report client methods, bumps component/package versions, and updates a few existing action versions. No behavioral changes in the bumped actions. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant Action as List Action
participant App as Clockify App
participant API as Clockify API
User->>Action: Invoke action with props (workspaceId, filters, page)
Action->>App: listProjects/listTasks/listTimeEntries(params)
App->>App: Build request params & resolve options (tasks/tags) if needed
App->>API: HTTP request (GET/POST) to Clockify endpoint
API-->>App: Return data array / report
App->>Action: Return response
Action->>User: Export summary and response
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes
Suggested reviewers
Pre-merge checks and finishing touches❌ Failed checks (2 inconclusive)
✅ Passed checks (3 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 4
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
⛔ Files ignored due to path filters (1)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (9)
components/clockify/actions/add-members-to-project/add-members-to-project.mjs(1 hunks)components/clockify/actions/add-task-to-project/add-task-to-project.mjs(1 hunks)components/clockify/actions/create-project/create-project.mjs(1 hunks)components/clockify/actions/get-time-entry-report/get-time-entry-report.mjs(1 hunks)components/clockify/actions/list-projects/list-projects.mjs(1 hunks)components/clockify/actions/list-tasks/list-tasks.mjs(1 hunks)components/clockify/actions/list-time-entries/list-time-entries.mjs(1 hunks)components/clockify/clockify.app.mjs(3 hunks)components/clockify/package.json(2 hunks)
🧰 Additional context used
🧠 Learnings (3)
📚 Learning: 2025-08-19T09:02:18.222Z
Learnt from: nurul3101
Repo: PipedreamHQ/pipedream PR: 18092
File: components/prisma_management_api/README.md:24-31
Timestamp: 2025-08-19T09:02:18.222Z
Learning: In Prisma Management API documentation, the "Create Database" section title is intentional and should not be changed to "Create Project", even though the action technically creates a complete project with database. This naming choice follows user-facing terminology preferences.
Applied to files:
components/clockify/actions/create-project/create-project.mjs
📚 Learning: 2024-12-12T19:23:09.039Z
Learnt from: jcortes
Repo: PipedreamHQ/pipedream PR: 14935
File: components/sailpoint/package.json:15-18
Timestamp: 2024-12-12T19:23:09.039Z
Learning: When developing Pipedream components, do not add built-in Node.js modules like `fs` to `package.json` dependencies, as they are native modules provided by the Node.js runtime.
Applied to files:
components/clockify/package.json
📚 Learning: 2025-09-12T07:49:36.125Z
Learnt from: matyascimbulka
Repo: PipedreamHQ/pipedream PR: 18308
File: components/apify/actions/run-task-synchronously/run-task-synchronously.mjs:70-0
Timestamp: 2025-09-12T07:49:36.125Z
Learning: The Apify Task object always contains the `options` field according to the official API documentation, making nested destructuring like `options: { build }` safe to use without additional checks.
Applied to files:
components/clockify/clockify.app.mjs
🧬 Code graph analysis (4)
components/clockify/actions/list-time-entries/list-time-entries.mjs (3)
components/clockify/actions/get-time-entry-report/get-time-entry-report.mjs (1)
response(90-137)components/clockify/actions/list-projects/list-projects.mjs (1)
response(162-184)components/clockify/actions/list-tasks/list-tasks.mjs (1)
response(79-92)
components/clockify/actions/get-time-entry-report/get-time-entry-report.mjs (2)
components/clockify/actions/list-tasks/list-tasks.mjs (1)
response(79-92)components/clockify/actions/list-time-entries/list-time-entries.mjs (1)
response(121-139)
components/clockify/actions/list-tasks/list-tasks.mjs (3)
components/clockify/actions/get-time-entry-report/get-time-entry-report.mjs (1)
response(90-137)components/clockify/actions/list-projects/list-projects.mjs (1)
response(162-184)components/clockify/actions/list-time-entries/list-time-entries.mjs (1)
response(121-139)
components/clockify/actions/list-projects/list-projects.mjs (2)
components/clockify/actions/list-tasks/list-tasks.mjs (1)
response(79-92)components/clockify/actions/list-time-entries/list-time-entries.mjs (1)
response(121-139)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
- GitHub Check: Publish TypeScript components
- GitHub Check: Verify TypeScript components
- GitHub Check: Lint Code Base
🔇 Additional comments (13)
components/clockify/actions/create-project/create-project.mjs (1)
7-7: Version bump is consistent with the release train.Thanks for keeping the action metadata in sync with the rest of the Clockify package update.
components/clockify/package.json (1)
3-16: Package metadata bump looks good.Version and platform dependency updates are aligned with the new component functionality.
components/clockify/actions/add-task-to-project/add-task-to-project.mjs (1)
7-7: Action version sync confirmed.Appreciate the consistent version bump across related Clockify actions.
components/clockify/actions/add-members-to-project/add-members-to-project.mjs (1)
7-7: Version alignment acknowledged.Keeping the metadata consistent makes release tracking easier.
components/clockify/clockify.app.mjs (1)
153-166: Confirm dashed query param names for pagination.Clockify’s REST API expects pagination parameters to use hyphenated keys (e.g.,
page-size). Please double-check that any actions consuming these newpage/pageSizeprop definitions translatepageSizeinto the dashed form before sending requests; otherwise the API ignores the value.(clockify.me)components/clockify/actions/list-tasks/list-tasks.mjs (2)
3-13: LGTM!The action metadata and annotations are correctly configured for a read-only list operation.
14-77: LGTM!The props configuration correctly uses propDefinitions and properly handles dynamic dependencies for the projectId prop.
components/clockify/actions/list-projects/list-projects.mjs (2)
3-13: LGTM!The action metadata and annotations are correctly configured for a read-only list operation.
14-160: LGTM!The props provide comprehensive filtering capabilities with proper type definitions and dynamic dependencies. The array type overrides for
clientsandusersare appropriate.components/clockify/actions/get-time-entry-report/get-time-entry-report.mjs (2)
3-13: LGTM!The action metadata and annotations are correctly configured for a read-only report action.
14-88: LGTM!The props are well-defined with appropriate types and dynamic dependencies.
components/clockify/actions/list-time-entries/list-time-entries.mjs (2)
3-13: LGTM!The action metadata and annotations are correctly configured for a read-only list operation.
14-119: LGTM!The props are well-structured with appropriate types, descriptions, and dynamic dependencies. The userId being required makes sense for this endpoint.
components/clockify/actions/get-time-entry-report/get-time-entry-report.mjs
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (1)
components/clockify/actions/get-time-entry-report/get-time-entry-report.mjs(1 hunks)
🧰 Additional context used
🧬 Code graph analysis (1)
components/clockify/actions/get-time-entry-report/get-time-entry-report.mjs (1)
components/clockify/actions/list-time-entries/list-time-entries.mjs (1)
response(121-139)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
- GitHub Check: Lint Code Base
- GitHub Check: Verify TypeScript components
- GitHub Check: Publish TypeScript components
🔇 Additional comments (1)
components/clockify/actions/get-time-entry-report/get-time-entry-report.mjs (1)
108-116: Previous issue has been resolved.The previously reported issue regarding
this.projectIdsvsthis.projectIdhas been fixed. The code now correctly references the singularthis.projectIdprop and wraps it in an array for the API call.
components/clockify/actions/get-time-entry-report/get-time-entry-report.mjs
Show resolved
Hide resolved
components/clockify/actions/get-time-entry-report/get-time-entry-report.mjs
Show resolved
Hide resolved
components/clockify/actions/get-time-entry-report/get-time-entry-report.mjs
Show resolved
Hide resolved
GTFalcao
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Resolves #18914
Summary by CodeRabbit
New Features
Chores