Skip to content

Commit afe30a1

Browse files
authored
Merge pull request #6 from mayank1513/use-storage-event
Use-storage-event
2 parents 5a67184 + 7c0052e commit afe30a1

File tree

14 files changed

+89
-43
lines changed

14 files changed

+89
-43
lines changed

.github/workflows/publish.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,6 @@ jobs:
3535
run: pnpm build && pnpm publish-package
3636
env:
3737
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
38-
38+
TOKEN: ${{ secrets.GITHUB_TOKEN }}
39+
OWNER: ${{ github.event.repository.owner.login }}
40+
REPO: ${{ github.event.repository.name }}

.github/workflows/test.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ jobs:
2727
token: ${{ secrets.CODECOV_TOKEN }}
2828
flags: fork-me
2929
- uses: paambaati/[email protected]
30+
continue-on-error: true
3031
env:
3132
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
3233
with:

examples/nextjs/CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# nextjs-example
22

3+
## 1.0.3
4+
5+
### Patch Changes
6+
7+
- Updated dependencies
8+
9+
310
## 1.0.2
411

512
### Patch Changes

examples/nextjs/app/store.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,6 @@ export const useMyStore = create<MyStoreType>()(
2020
set(state => ({ ...state, _count }));
2121
},
2222
}),
23-
{ name: "example", exclude: ["_count"] },
23+
{ name: "example", exclude: ["_count"], storage: "cookies" },
2424
),
2525
);

examples/nextjs/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "nextjs-example",
3-
"version": "1.0.2",
3+
"version": "1.0.3",
44
"private": true,
55
"scripts": {
66
"dev": "next dev --port 3001",
@@ -13,12 +13,12 @@
1313
"persist-and-sync": "workspace:*",
1414
"react": "^18.2.0",
1515
"react-dom": "^18.2.0",
16-
"zustand": "^4.4.6"
16+
"zustand": "^4.4.7"
1717
},
1818
"devDependencies": {
1919
"@next/eslint-plugin-next": "^14.0.3",
20-
"@types/node": "^20.9.4",
21-
"@types/react": "^18.2.38",
20+
"@types/node": "^20.10.2",
21+
"@types/react": "^18.2.41",
2222
"@types/react-dom": "^18.2.17",
2323
"eslint-config-custom": "workspace:*",
2424
"tsconfig": "workspace:*",

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
"format": "prettier --write \"**/*.{ts,tsx,js,jsx,md,css,scss}\""
99
},
1010
"devDependencies": {
11-
"@changesets/cli": "^2.26.2",
12-
"eslint": "^8.54.0",
11+
"@changesets/cli": "^2.27.1",
12+
"eslint": "^8.55.0",
1313
"prettier": "^3.1.0",
1414
"tsconfig": "workspace:*",
1515
"turbo": "^1.10.16"

packages/persist-and-sync/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# persist-and-sync
22

3+
## 1.1.1
4+
5+
### Patch Changes
6+
7+
- Updated internal sync mechanism
8+
39
## 1.1.0
410

511
### Minor Changes

packages/persist-and-sync/__tests__/index.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { act, cleanup, renderHook } from "@testing-library/react";
22

33
import { afterEach, describe, test } from "vitest";
4-
import { useMyStore } from "./store";
4+
import { useCookieStore, useMyStore } from "./store";
55

66
describe.concurrent("Setting state", () => {
77
afterEach(cleanup);
@@ -11,7 +11,7 @@ describe.concurrent("Setting state", () => {
1111
});
1212

1313
test("test setting state", async ({ expect }) => {
14-
const { result } = renderHook(() => useMyStore());
14+
const { result } = renderHook(() => useCookieStore());
1515
act(() => result.current.setCount(5));
1616
expect(result.current.count).toBe(5);
1717
expect(localStorage.getItem("example")).toBe('{"count":5}');

packages/persist-and-sync/__tests__/store.ts

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { create } from "../vitest-setup";
1+
import { create } from "../vitest.setup";
22
import { persistNSync } from "../src";
33

44
type MyStoreType = {
@@ -16,6 +16,18 @@ export const useMyStore = create<MyStoreType>(
1616
setCount: count => set(state => ({ ...state, count })),
1717
set_Count: _count => set(state => ({ ...state, _count })),
1818
}),
19-
{ name: "example", regExpToIgnore: /^_/ },
19+
{ name: "example", exclude: [/^_/] },
20+
),
21+
);
22+
23+
export const useCookieStore = create<MyStoreType>(
24+
persistNSync(
25+
set => ({
26+
count: 0,
27+
_count: 0 /** skipped as it matches the regexp provided */,
28+
setCount: count => set(state => ({ ...state, count })),
29+
set_Count: _count => set(state => ({ ...state, _count })),
30+
}),
31+
{ name: "example", include: [/count/], exclude: [/^_/], storage: "cookies" },
2032
),
2133
);

packages/persist-and-sync/createPackageJSON.js

Lines changed: 34 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,42 @@
33
const fs = require("fs");
44
const path = require("path");
55
const packageJson = require(path.resolve(__dirname, "package.json"));
6+
if (process.env.TOKEN) {
7+
const { Octokit } = require("octokit");
8+
// Octokit.js
9+
// https://github.com/octokit/core.js#readme
10+
const octokit = new Octokit({
11+
auth: process.env.TOKEN,
12+
});
613

7-
const { devDependencies, scripts, ...newPackageJSON } = packageJson;
8-
newPackageJSON.main = packageJson.main.split("/")[1];
9-
newPackageJSON.types = packageJson.types.split("/")[1];
14+
const octoOptions = {
15+
owner: process.env.OWNER,
16+
repo: process.env.REPO,
17+
headers: {
18+
"X-GitHub-Api-Version": "2022-11-28",
19+
},
20+
};
21+
const tagName = `v${packageJson.version}`;
22+
const name = `Release ${tagName}`;
23+
/** Create a release */
24+
octokit.request("POST /repos/{owner}/{repo}/releases", {
25+
...octoOptions,
26+
tag_name: tagName,
27+
target_commitish: "main",
28+
name,
29+
draft: false,
30+
prerelease: false,
31+
generate_release_notes: true,
32+
headers: {
33+
"X-GitHub-Api-Version": "2022-11-28",
34+
},
35+
});
36+
}
37+
delete packageJson.scripts;
38+
packageJson.main = packageJson.main.split("/")[1];
39+
packageJson.types = packageJson.types.split("/")[1];
1040

1141
fs.writeFileSync(
1242
path.resolve(__dirname, "dist", "package.json"),
13-
JSON.stringify(newPackageJSON, null, 2),
43+
JSON.stringify(packageJson, null, 2),
1444
);

0 commit comments

Comments
 (0)