newcandies 0.1.53 → 0.1.56
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/dist/index.js +4 -7
- package/package.json +1 -1
- package/templates/boilerplate/subscribed/app-env.js +56 -0
- package/templates/boilerplate/subscribed/app-env.ts +19 -0
- package/templates/boilerplate/subscribed/app.config.ts +62 -0
- package/templates/boilerplate/subscribed/assets/adaptive-icon.png +0 -0
- package/templates/boilerplate/subscribed/assets/favicon.png +0 -0
- package/templates/boilerplate/subscribed/assets/icon.png +0 -0
- package/templates/boilerplate/subscribed/assets/images/empty-categories.png +0 -0
- package/templates/boilerplate/subscribed/assets/images/empty-subscriptions.png +0 -0
- package/templates/boilerplate/subscribed/assets/images/empty-upcoming-payments.png +0 -0
- package/templates/boilerplate/subscribed/assets/images/onboarding-hero.png +0 -0
- package/templates/boilerplate/subscribed/assets/subscribed.png +0 -0
- package/templates/boilerplate/subscribed/babel.config.js +7 -0
- package/templates/boilerplate/subscribed/bun.lock +2247 -0
- package/templates/boilerplate/subscribed/eas.json +1 -0
- package/templates/boilerplate/subscribed/eslint.config.mjs +111 -0
- package/templates/boilerplate/subscribed/global.css +173 -0
- package/templates/boilerplate/subscribed/metro.config.js +12 -0
- package/templates/boilerplate/subscribed/package.json +85 -0
- package/templates/boilerplate/subscribed/plugins/withIosDeploymentTarget.js +38 -0
- package/templates/boilerplate/subscribed/src/app/+not-found.tsx +16 -0
- package/templates/boilerplate/subscribed/src/app/_layout.tsx +7 -0
- package/templates/boilerplate/subscribed/src/app/index.tsx +9 -0
- package/templates/boilerplate/subscribed/src/config/theme.ts +54 -0
- package/templates/boilerplate/subscribed/src/data/static/index.ts +9 -0
- package/templates/boilerplate/subscribed/src/data/static/services.ts +450 -0
- package/templates/boilerplate/subscribed/src/data/static/subscription-detail.ts +11 -0
- package/templates/boilerplate/subscribed/src/data/static/subscription-stats.ts +37 -0
- package/templates/boilerplate/subscribed/src/data/static/subscriptions.ts +328 -0
- package/templates/boilerplate/subscribed/src/data/static/user.ts +13 -0
- package/templates/boilerplate/subscribed/src/lib/utils.ts +7 -0
- package/templates/boilerplate/subscribed/src/types/index.ts +98 -0
- package/templates/boilerplate/subscribed/src/types/uniwind.d.ts +10 -0
- package/templates/boilerplate/subscribed/tsconfig.json +11 -0
- package/templates/boilerplate/subscribed/uniwind-types.d.ts +10 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/app-env.js +58 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/app-env.ts +18 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/app.config.ts +52 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/assets/adaptive-icon.png +0 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/assets/favicon.png +0 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/assets/fiesta-transparent.png +0 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/assets/fiesta.png +0 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/assets/icon.png +0 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/assets/images/empty-categories.png +0 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/assets/images/empty-subscriptions.png +0 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/assets/images/empty-upcoming-payments.png +0 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/assets/images/onboarding-hero.png +0 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/babel.config.js +7 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/eas.json +21 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/eslint.config.mjs +111 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/global.css +60 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/metro.config.js +10 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/package.json +87 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/skia-stub.d.ts +3 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/app/(tabs)/_layout.tsx +40 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/app/(tabs)/index.tsx +28 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/app/(tabs)/widgets.tsx +13 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/app/+not-found.tsx +16 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/app/_layout.tsx +47 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/app/event/[id].tsx +177 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/buttons/back-button.tsx +44 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/buttons/button.tsx +175 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/buttons/icon-button.tsx +33 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/buttons/pressable.tsx +6 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/inputs/input.tsx +43 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/layout/card.tsx +25 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/layout/safe-area-view.tsx +6 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/layout/screen.tsx +23 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/layout/scroll-view.tsx +6 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/layout/squircle.tsx +8 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/layout/view.tsx +6 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/navigation/stack.tsx +18 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/ui/icon-symbol.tsx +131 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/ui/image.tsx +6 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/ui/loading.tsx +35 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/components/ui/text.tsx +44 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/config/theme.ts +54 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/data/fiesta-data.ts +14 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/features/home/celebration-card.tsx +84 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/features/home/today-hero.tsx +151 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/lib/celebrations.ts +167 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/lib/theme.ts +29 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/lib/utils.ts +7 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/types/index.ts +26 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/src/types/uniwind.d.ts +10 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/tsconfig.json +11 -0
- package/templates/mini-boilerplate/fiesta-widgets-mini/uniwind-types.d.ts +10 -0
- package/templates/registry.json +13 -0
package/dist/index.js
CHANGED
|
@@ -114,11 +114,7 @@ async function main() {
|
|
|
114
114
|
install: async () => {
|
|
115
115
|
return false;
|
|
116
116
|
},
|
|
117
|
-
pm: async (
|
|
118
|
-
const type = results.type;
|
|
119
|
-
if (type === "boilerplates" || type === "mini-boilerplates") {
|
|
120
|
-
return "pnpm";
|
|
121
|
-
}
|
|
117
|
+
pm: async () => {
|
|
122
118
|
return "bun";
|
|
123
119
|
}
|
|
124
120
|
},
|
|
@@ -269,12 +265,13 @@ async function main() {
|
|
|
269
265
|
}
|
|
270
266
|
}
|
|
271
267
|
const runCmd = (cmd) => ` ${project.pm} ${cmd}`;
|
|
268
|
+
const prebuildCmd = project.pm === "bun" ? "bunx expo prebuild --clean" : "pnpx expo prebuild --clean";
|
|
272
269
|
const nextSteps = [
|
|
273
270
|
pc.magenta("\u2726 Next steps:"),
|
|
274
271
|
` cd ${project.name}`,
|
|
275
272
|
` ${project.pm} install`,
|
|
276
|
-
|
|
277
|
-
runCmd("ios") +
|
|
273
|
+
` ${prebuildCmd}`,
|
|
274
|
+
runCmd("ios") + " or " + runCmd("android")
|
|
278
275
|
];
|
|
279
276
|
p.outro(nextSteps.filter(Boolean).join("\n") + "\n\n" + pc.dim("Happy coding! \u2362"));
|
|
280
277
|
}
|
package/package.json
CHANGED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment configuration for Subscribed.
|
|
3
|
+
* Supports: local | preview | production
|
|
4
|
+
*
|
|
5
|
+
* @type {'local' | 'preview' | 'production'}
|
|
6
|
+
*/
|
|
7
|
+
const APP_ENV = process.env.EXPO_PUBLIC_APP_ENV ?? "local";
|
|
8
|
+
|
|
9
|
+
const { version } = require("./package.json");
|
|
10
|
+
|
|
11
|
+
// Bundle IDs per environment
|
|
12
|
+
const BUNDLE_IDS = {
|
|
13
|
+
local: "com.subscribed.app.local",
|
|
14
|
+
preview: "com.subscribed.app.preview",
|
|
15
|
+
production: "com.subscribed.app",
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
// Android package names per environment
|
|
19
|
+
const PACKAGES = {
|
|
20
|
+
local: "com.subscribed.app.local",
|
|
21
|
+
preview: "com.subscribed.app.preview",
|
|
22
|
+
production: "com.subscribed.app",
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
// URL schemes per environment
|
|
26
|
+
const SCHEMES = {
|
|
27
|
+
local: "subscribed.local",
|
|
28
|
+
preview: "subscribed.preview",
|
|
29
|
+
production: "subscribed",
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
// App names per environment
|
|
33
|
+
const NAMES = {
|
|
34
|
+
local: "Subscribed (Local)",
|
|
35
|
+
preview: "Subscribed (Preview)",
|
|
36
|
+
production: "Subscribed",
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
// API URL per environment
|
|
40
|
+
const API_URLS = {
|
|
41
|
+
local: "https://subscribed-apis.onrender.com",
|
|
42
|
+
preview: "https://subscribed-apis.onrender.com",
|
|
43
|
+
production: "https://subscribed-apis.onrender.com",
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
const Env = {
|
|
47
|
+
APP_ENV,
|
|
48
|
+
NAME: NAMES[APP_ENV],
|
|
49
|
+
SCHEME: SCHEMES[APP_ENV],
|
|
50
|
+
BUNDLE_ID: BUNDLE_IDS[APP_ENV],
|
|
51
|
+
PACKAGE: PACKAGES[APP_ENV],
|
|
52
|
+
VERSION: version,
|
|
53
|
+
API_URL: process.env.EXPO_PUBLIC_API_URL ?? API_URLS[APP_ENV],
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
module.exports = Env;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type-safe re-export of app-env.js for use in src/ code.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
export type AppEnv = "local" | "preview" | "production";
|
|
6
|
+
|
|
7
|
+
interface EnvConfig {
|
|
8
|
+
APP_ENV: AppEnv;
|
|
9
|
+
NAME: string;
|
|
10
|
+
SCHEME: string;
|
|
11
|
+
BUNDLE_ID: string;
|
|
12
|
+
PACKAGE: string;
|
|
13
|
+
API_URL: string;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
17
|
+
const Env: EnvConfig = require("./app-env.js");
|
|
18
|
+
|
|
19
|
+
export default Env;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { ConfigContext, ExpoConfig } from "expo/config";
|
|
2
|
+
|
|
3
|
+
const Env = require("./app-env.js");
|
|
4
|
+
|
|
5
|
+
export default ({ config }: ConfigContext): ExpoConfig => ({
|
|
6
|
+
...config,
|
|
7
|
+
name: Env.NAME,
|
|
8
|
+
slug: "subscribed",
|
|
9
|
+
version: Env.VERSION,
|
|
10
|
+
orientation: "portrait",
|
|
11
|
+
icon: "./assets/icon.png",
|
|
12
|
+
scheme: Env.SCHEME,
|
|
13
|
+
userInterfaceStyle: "automatic",
|
|
14
|
+
ios: {
|
|
15
|
+
supportsTablet: true,
|
|
16
|
+
bundleIdentifier: Env.BUNDLE_ID,
|
|
17
|
+
infoPlist: {
|
|
18
|
+
NSAppTransportSecurity: {
|
|
19
|
+
NSAllowsArbitraryLoads: true,
|
|
20
|
+
NSAllowsLocalNetworking: true,
|
|
21
|
+
},
|
|
22
|
+
ITSAppUsesNonExemptEncryption: false,
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
android: {
|
|
26
|
+
adaptiveIcon: {
|
|
27
|
+
foregroundImage: "./assets/adaptive-icon.png",
|
|
28
|
+
backgroundColor: "#ffffff",
|
|
29
|
+
},
|
|
30
|
+
package: Env.PACKAGE,
|
|
31
|
+
},
|
|
32
|
+
web: {
|
|
33
|
+
bundler: "metro",
|
|
34
|
+
output: "static",
|
|
35
|
+
favicon: "./assets/favicon.png",
|
|
36
|
+
},
|
|
37
|
+
plugins: [
|
|
38
|
+
"expo-router",
|
|
39
|
+
"expo-image",
|
|
40
|
+
"expo-font",
|
|
41
|
+
[
|
|
42
|
+
"expo-build-properties",
|
|
43
|
+
{
|
|
44
|
+
ios: { deploymentTarget: "17.0" },
|
|
45
|
+
},
|
|
46
|
+
],
|
|
47
|
+
// Force iOS 17.0 for all targets (app + Voltra widget extension) so Swift APIs compile
|
|
48
|
+
"./plugins/withIosDeploymentTarget.js",
|
|
49
|
+
],
|
|
50
|
+
experiments: {
|
|
51
|
+
typedRoutes: true,
|
|
52
|
+
reactCompiler: true,
|
|
53
|
+
},
|
|
54
|
+
extra: {
|
|
55
|
+
APP_ENV: Env.APP_ENV,
|
|
56
|
+
API_URL: Env.API_URL,
|
|
57
|
+
router: {},
|
|
58
|
+
eas: {
|
|
59
|
+
projectId: "your-project-id-here",
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
});
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|