@feedclip/sdk 0.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.
Files changed (43) hide show
  1. package/COMMERCIAL-LICENSE.md +32 -0
  2. package/COMPLIANCE.md +110 -0
  3. package/LICENSE +21 -0
  4. package/README.md +676 -0
  5. package/dist/FeedClip-BmVeLeSY.cjs +6 -0
  6. package/dist/FeedClip-Czdkvwzl.js +1176 -0
  7. package/dist/angular.cjs +1 -0
  8. package/dist/angular.js +42 -0
  9. package/dist/feedclip.cjs +2 -0
  10. package/dist/feedclip.css +3 -0
  11. package/dist/feedclip.js +133 -0
  12. package/dist/types/ai.d.ts +2 -0
  13. package/dist/types/angular.d.ts +15 -0
  14. package/dist/types/atom.d.ts +9 -0
  15. package/dist/types/components/Alert.d.ts +8 -0
  16. package/dist/types/components/Controls.d.ts +10 -0
  17. package/dist/types/components/FeedClip.d.ts +11 -0
  18. package/dist/types/components/FeedbackDetails.d.ts +14 -0
  19. package/dist/types/components/FeedbackResult.d.ts +7 -0
  20. package/dist/types/components/HandleUpload.d.ts +21 -0
  21. package/dist/types/components/PauseRecording.d.ts +8 -0
  22. package/dist/types/components/Reset.d.ts +11 -0
  23. package/dist/types/components/StartRecording.d.ts +15 -0
  24. package/dist/types/components/StopRecording.d.ts +7 -0
  25. package/dist/types/components/TrimControls.d.ts +10 -0
  26. package/dist/types/components/Video.d.ts +8 -0
  27. package/dist/types/configuration-context.d.ts +2 -0
  28. package/dist/types/configuration.d.ts +22 -0
  29. package/dist/types/entitlements.d.ts +6 -0
  30. package/dist/types/feedback.d.ts +55 -0
  31. package/dist/types/i18n.d.ts +33 -0
  32. package/dist/types/index.d.ts +17 -0
  33. package/dist/types/indexed-db-store.d.ts +11 -0
  34. package/dist/types/license.d.ts +30 -0
  35. package/dist/types/transport.d.ts +7 -0
  36. package/dist/types/uploaders.d.ts +14 -0
  37. package/dist/types/utils.d.ts +6 -0
  38. package/dist/types/vue.d.ts +18 -0
  39. package/dist/vue.cjs +1 -0
  40. package/dist/vue.js +23 -0
  41. package/package.json +118 -0
  42. package/scripts/generate-license-keypair.mjs +25 -0
  43. package/scripts/issue-license.mjs +69 -0
@@ -0,0 +1,32 @@
1
+ # FeedClip Paid Commercial License
2
+
3
+ The `@feedclip/sdk` core SDK remains available under the MIT license. This
4
+ commercial license applies only to the implemented FeedClip Paid feature
5
+ gates. It does not restrict rights granted by the MIT license for core
6
+ repository files.
7
+
8
+ ## Paid Features
9
+
10
+ The currently sold Paid version enables:
11
+
12
+ - removal of FeedClip branding;
13
+ - thumbnails, trimming, and upload progress;
14
+ - Supabase and S3 uploader helpers;
15
+
16
+ Screen recording, diagnostics, privacy redaction, resumable uploads, managed
17
+ storage, hosted AI, issue integrations, dashboards, SSO, RBAC, audit logs, data
18
+ residency, and SLA products are roadmap items and are not included in the
19
+ current purchase.
20
+
21
+ Official Paid capabilities require a valid project-bound FeedClip license
22
+ token. Tokens are signed by the FeedClip licensing service and may not be
23
+ shared between projects or customers.
24
+
25
+ ## Pricing
26
+
27
+ The current Indie license is a one-time USD 49 purchase valid for one year. It
28
+ does not renew automatically and does not include third-party storage or AI
29
+ provider usage.
30
+
31
+ Unauthorized activation of the implemented FeedClip Paid feature gates is
32
+ prohibited.
package/COMPLIANCE.md ADDED
@@ -0,0 +1,110 @@
1
+ # FeedClip Compliance Guide
2
+
3
+ This document describes product controls and deployment responsibilities. It
4
+ is not legal advice or a certification of compliance.
5
+
6
+ ## Data inventory
7
+
8
+ Depending on configuration, FeedClip processes:
9
+
10
+ - video and voice supplied by the user;
11
+ - an optional screenshot and written description;
12
+ - page origin and path, title, user agent, locale, viewport, and timezone;
13
+ - optional query strings and referrer when explicitly enabled;
14
+ - application-defined custom context;
15
+ - generated transcript, summary, labels, sentiment, and priority;
16
+ - operational identifiers, timestamps, request IP data in rate-limit memory,
17
+ and server logs.
18
+
19
+ Video, voice, screenshots, URLs, identifiers, and free-form text can contain
20
+ personal data or sensitive data. Do not send passwords, payment card data,
21
+ authentication tokens, health data, biometric identification data, or other
22
+ regulated data without a reviewed use case and appropriate controls.
23
+
24
+ ## Roles and lawful basis
25
+
26
+ For a self-hosted deployment, the integrating organization normally determines
27
+ the purpose and means of processing and is the controller. Infrastructure and
28
+ AI providers may act as processors or subprocessors under their contracts.
29
+
30
+ The integrating organization must select and document an applicable lawful
31
+ basis. Do not treat browser camera or microphone permission as privacy consent.
32
+ When consent is used, it must be informed, specific, demonstrable, and
33
+ withdrawable. Use `privacyNotice` to link the widget to the product's notice.
34
+
35
+ ## Data minimization
36
+
37
+ - Query strings, URL fragments, credentials, and referrers are excluded by
38
+ default.
39
+ - Keep `includeQueryString` and `includeReferrer` disabled unless necessary.
40
+ - Allowlist fields returned by `getContext`; do not pass whole user or session
41
+ objects.
42
+ - Avoid recording unrelated applications, people, notifications, or secrets.
43
+ - Redact sensitive screenshot and video regions before upload where required.
44
+
45
+ ## Retention and deletion
46
+
47
+ The reference API defaults to a 30-day retention period through
48
+ `FEEDCLIP_RETENTION_DAYS`. It deletes expired local records at startup and every
49
+ 24 hours. `DELETE /v1/submissions/:feedbackId` removes one API record.
50
+
51
+ The IndexedDB adapter exposes `delete(feedbackId)` and `clear()`. The
52
+ integrating product must also apply deletion to backups, object storage, logs,
53
+ analytics, queues, generated issues, and every downstream processor.
54
+
55
+ ## Data subject requests
56
+
57
+ Maintain an authenticated workflow to:
58
+
59
+ - locate records using an internal mapping between the user and feedback ID;
60
+ - export the original submission and generated analysis;
61
+ - correct associated metadata where applicable;
62
+ - delete the record and downstream copies;
63
+ - record request receipt and completion deadlines.
64
+
65
+ Do not expose the project key or allow a feedback ID alone to authorize access.
66
+
67
+ ## AI processing and international transfers
68
+
69
+ Transcription and analysis send the recording and feedback context to the
70
+ configured AI provider. Before enabling AI:
71
+
72
+ - list the provider in the privacy notice and subprocessor register;
73
+ - execute the required DPA and transfer mechanism;
74
+ - review provider retention, abuse monitoring, and data residency settings;
75
+ - disable optional provider data sharing;
76
+ - confirm that submitted data is permitted by the provider agreement.
77
+
78
+ ## Accessibility
79
+
80
+ The widget includes labeled controls, alert semantics, live recording status,
81
+ and progressbar semantics. The integrating product should test the complete
82
+ flow against WCAG 2.2 AA with keyboard-only use and screen readers.
83
+
84
+ Recorded media containing speech may require transcripts or captions when it
85
+ is later presented as content. Generated transcripts should be reviewable
86
+ because automated transcription can be inaccurate.
87
+
88
+ ## Security and incident response
89
+
90
+ Use short-lived, scoped credentials or an authenticated backend proxy. Encrypt
91
+ stored data and backups, restrict operator access, audit access, rotate
92
+ credentials, and maintain breach detection and notification procedures.
93
+
94
+ The local filesystem store and in-process worker are development references,
95
+ not a production compliance architecture.
96
+
97
+ ## Licensing and release records
98
+
99
+ The SDK is MIT-licensed. Preserve its license and copyright notice when
100
+ redistributing it. Production dependencies currently use permissive licenses.
101
+ MPL-2.0 packages observed in the API lockfile belong to development tooling and
102
+ are not present in the production dependency tree.
103
+
104
+ For each release, archive:
105
+
106
+ - dependency lockfiles, vulnerability audit results, and an SBOM;
107
+ - third-party license notices;
108
+ - privacy and security review evidence;
109
+ - retention, deletion, access-control, and recovery test results;
110
+ - current subprocessors and signed DPAs.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Andrey Shedko
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.