@_linked/cli 1.11.1 → 1.13.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 (84) hide show
  1. package/CHANGELOG.md +84 -0
  2. package/README.md +48 -0
  3. package/defaults/app-react-native/README.md +56 -0
  4. package/defaults/app-react-native/apps/mobile/App.tsx +26 -0
  5. package/defaults/app-react-native/apps/mobile/__tests__/linkedDefaults.test.tsx +65 -0
  6. package/defaults/app-react-native/apps/mobile/__tests__/shapes.test.ts +27 -0
  7. package/defaults/app-react-native/apps/mobile/app.json +14 -0
  8. package/defaults/app-react-native/apps/mobile/gitignore.template +41 -0
  9. package/defaults/app-react-native/apps/mobile/index.ts +8 -0
  10. package/defaults/app-react-native/apps/mobile/metro.config.js +17 -0
  11. package/defaults/app-react-native/apps/mobile/package.json +41 -0
  12. package/defaults/app-react-native/apps/mobile/src/shell/linkedDefaults.tsx +10 -0
  13. package/defaults/app-react-native/apps/mobile/tsconfig.json +8 -0
  14. package/defaults/app-react-native/gitignore.template +6 -0
  15. package/defaults/app-react-native/package.json +14 -0
  16. package/defaults/app-react-native/packages/app-shapes/package.json +10 -0
  17. package/defaults/app-react-native/packages/app-shapes/src/index.ts +2 -0
  18. package/defaults/app-react-native/packages/app-shapes/src/package.ts +10 -0
  19. package/defaults/app-react-native/packages/app-shapes/src/shapes/Example.ts +17 -0
  20. package/defaults/app-react-native/packages/app-shapes/tsconfig.json +12 -0
  21. package/defaults/app-react-native/services/api/README.md +4 -0
  22. package/defaults/app-react-native/services/api/package.json +5 -0
  23. package/defaults/package/npmignore.template +6 -0
  24. package/defaults/package/src/backend.ts +5 -0
  25. package/defaults/package/src/data/example-ontology.json +10 -0
  26. package/defaults/package/src/data/example-ontology.json.d.ts +1 -0
  27. package/defaults/package/src/index.ts +8 -0
  28. package/defaults/package/src/ontologies/example-ontology.ts +42 -0
  29. package/defaults/package/src/package.ts +16 -0
  30. package/defaults/package/src/shapes/index.ts +5 -0
  31. package/defaults/package/src/types.ts +4 -0
  32. package/defaults/package/tsconfig.json +17 -0
  33. package/defaults/setup-publish/dual-branch/github/workflows/publish.yml +29 -15
  34. package/lib/esm/cli-methods.d.ts +39 -0
  35. package/lib/esm/cli-methods.d.ts.map +1 -1
  36. package/lib/esm/cli-methods.js +303 -60
  37. package/lib/esm/cli-methods.js.map +1 -1
  38. package/lib/esm/cli.d.ts.map +1 -1
  39. package/lib/esm/cli.js +11 -2
  40. package/lib/esm/cli.js.map +1 -1
  41. package/lib/esm/commands/setup-publish.js +23 -2
  42. package/lib/esm/commands/setup-publish.js.map +1 -1
  43. package/lib/esm/commands/start.d.ts +33 -0
  44. package/lib/esm/commands/start.d.ts.map +1 -1
  45. package/lib/esm/commands/start.js +90 -48
  46. package/lib/esm/commands/start.js.map +1 -1
  47. package/lib/esm/interfaces.d.ts +7 -0
  48. package/lib/esm/interfaces.d.ts.map +1 -1
  49. package/lib/esm/utils/esmSpecifiers.d.ts +3 -0
  50. package/lib/esm/utils/esmSpecifiers.d.ts.map +1 -0
  51. package/lib/esm/utils/esmSpecifiers.js +95 -0
  52. package/lib/esm/utils/esmSpecifiers.js.map +1 -0
  53. package/lib/esm/utils/packageSetup.d.ts +19 -0
  54. package/lib/esm/utils/packageSetup.d.ts.map +1 -0
  55. package/lib/esm/utils/packageSetup.js +23 -0
  56. package/lib/esm/utils/packageSetup.js.map +1 -0
  57. package/lib/esm/utils/shippedDotfiles.d.ts +2 -0
  58. package/lib/esm/utils/shippedDotfiles.d.ts.map +1 -0
  59. package/lib/esm/utils/shippedDotfiles.js +21 -0
  60. package/lib/esm/utils/shippedDotfiles.js.map +1 -0
  61. package/lib/esm/vite-config.d.ts +56 -0
  62. package/lib/esm/vite-config.d.ts.map +1 -1
  63. package/lib/esm/vite-config.js +185 -34
  64. package/lib/esm/vite-config.js.map +1 -1
  65. package/package.json +9 -1
  66. package/.changeset/README.md +0 -20
  67. package/.changeset/config.json +0 -14
  68. package/.github/workflows/changeset-check.yml +0 -44
  69. package/.github/workflows/ci.yml +0 -51
  70. package/.github/workflows/publish.yml +0 -77
  71. package/.prettierignore +0 -4
  72. package/.prettierrc.json +0 -24
  73. package/babel.config.cjs +0 -11
  74. package/docs/architecture/vite-runtime-config.md +0 -57
  75. package/jest.config.cjs +0 -33
  76. package/lib-template/cjs/package.json +0 -3
  77. package/lib-template/esm/package.json +0 -3
  78. package/test-results/.last-run.json +0 -6
  79. package/test-results/create-app-Person-fixture-add-/342/206/222-edit-/342/206/222-delete-round-trip/error-context.md +0 -16
  80. package/test-results/create-app-Person-fixture-add-/342/206/222-edit-/342/206/222-delete-round-trip/trace.zip +0 -0
  81. package/tests/e2e/create-app.spec.ts +0 -157
  82. package/tests/unit/safeYarn.test.ts +0 -55
  83. package/tsconfig-cjs.json +0 -10
  84. package/tsconfig-esm.json +0 -10
@@ -0,0 +1,42 @@
1
+ import type {NodeReferenceValue} from '@_linked/core/utils/NodeReference';
2
+ import {createNameSpace} from '@_linked/core/utils/NameSpace';
3
+ import {linkedOntology} from '../package.js';
4
+ //import all the exports of this file as one variable called _this (we need this at the end)
5
+ import * as _this from './${hyphen_name}.js';
6
+
7
+ /**
8
+ * Load the data of this ontology into memory, thus adding the properties of the entities of this ontology to the local graph.
9
+ */
10
+ export var loadData = () => {
11
+ if (typeof module !== 'undefined' && typeof exports !== 'undefined') {
12
+ // CommonJS import
13
+ return import('../data/${hyphen_name}.json');
14
+ } else {
15
+ // ESM import
16
+ //@ts-ignore
17
+ return import('../data/${hyphen_name}.json',{ with: { type: "json" } }).then((data) => data.defauilt);
18
+ }
19
+ };
20
+
21
+ /**
22
+ * The namespace of this ontology, which can be used to create NamedNodes with IRIs not listed in this file
23
+ */
24
+ export var ns = createNameSpace('${uri_base}');
25
+
26
+ /**
27
+ * A reference to the ontology itself.
28
+ */
29
+ export var _self: NodeReferenceValue = ns('');
30
+
31
+ //Every class and property of this ontology, each exported as a node reference.
32
+ // export var ExampleClass: NodeReferenceValue = ns('ExampleClass');
33
+ // export var exampleProperty: NodeReferenceValue = ns('exampleProperty');
34
+
35
+ //An extra grouping object so all the entities can be accessed from the prefix/name
36
+ export const ${camel_name} = {
37
+ // ExampleClass,
38
+ // exampleProperty,
39
+ };
40
+
41
+ //Registers this ontology to LINCD.JS, so that data loading can be automated amongst other things
42
+ linkedOntology(_this, ns, '${hyphen_name}', loadData, '../data/${hyphen_name}.json');
@@ -0,0 +1,16 @@
1
+ import {linkedPackage} from '@_linked/core/utils/Package';
2
+
3
+ // `linkedComponent` is deliberately not destructured here: it is not part of core's
4
+ // `LinkedPackageObject`. Component binding lives in `@_linked/react` — import
5
+ // `linkedComponent` from `@_linked/react/utils/LinkedComponent` in a package that needs it,
6
+ // so a package with no UI does not depend on React to declare its shapes.
7
+ export const {
8
+ linkedShape,
9
+ linkedUtil,
10
+ linkedOntology,
11
+ registerPackageExport,
12
+ packageExports,
13
+ packageName,
14
+ getPackageShape
15
+
16
+ } = linkedPackage('${package_name}');
@@ -0,0 +1,5 @@
1
+ // Shape registry — every shape in this package is imported here so its @linkedShape
2
+ // decorator runs and the shape registers on BOTH boot paths: the backend entry
3
+ // (src/backend.ts, which materializes shapes into app-data on boot) and the frontend
4
+ // entry. `linked create-shape` maintains the list below.
5
+ //SHAPES
@@ -0,0 +1,4 @@
1
+ declare module '*.module.css' {
2
+ const classes: {[key: string]: string};
3
+ export default classes;
4
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "compilerOptions": {
3
+ "sourceMap": true,
4
+ "declaration": true,
5
+ "experimentalDecorators": true,
6
+ "emitDecoratorMetadata": true,
7
+ "downlevelIteration": true,
8
+ "resolveJsonModule": true,
9
+ "esModuleInterop": true,
10
+ "pretty": true,
11
+ "jsx": "react",
12
+ "types": ["node"]
13
+ },
14
+ "files": [
15
+ "./src/types.ts","./src/index.ts"],
16
+ "include": ["./src/backend.ts"]
17
+ }
@@ -136,8 +136,8 @@ jobs:
136
136
  gh pr merge "$pr" --auto --merge \
137
137
  || echo "Auto-merge unavailable (disabled or conflicts) — PR #$pr left open for manual merge."
138
138
 
139
- dev-release:
140
- name: Publish Dev Release
139
+ dev-build:
140
+ name: Verify Dev Build
141
141
  if: github.ref == 'refs/heads/dev'
142
142
  runs-on: ubuntu-latest
143
143
  permissions:
@@ -158,19 +158,33 @@ jobs:
158
158
  - name: Build
159
159
  run: npm run build
160
160
 
161
- - name: Publish next release
162
- run: |
163
- # Start from main's version so changesets apply on top of the latest stable
164
- git fetch origin main --depth=1
165
- MAIN_VERSION=$(git show origin/main:package.json | node -p "JSON.parse(require('fs').readFileSync(0,'utf8')).version")
166
- npm version "$MAIN_VERSION" --no-git-tag-version --allow-same-version
167
- # Apply pending changesets to get the next version
168
- npx changeset version
169
- NEXT_VERSION=$(node -p "require('./package.json').version")
170
- # Append dev prerelease identifier
171
- DEV_VERSION="${NEXT_VERSION}-next.$(date +%Y%m%d%H%M%S)"
172
- npm version "$DEV_VERSION" --no-git-tag-version
173
- npm publish --tag next
161
+ # Prerelease publishing is commented out, NOT deleted — the machinery is correct and
162
+ # the decision is reversible.
163
+ #
164
+ # It published `X.Y.Z-next.<timestamp>` under the `next` dist-tag on every push to `dev`.
165
+ # The org npm token is now stage-only, so `npm publish` cannot run at all; the nearest
166
+ # equivalent, `npm stage publish`, would queue a version for a maintainer's 2FA approval
167
+ # on EVERY push — an approval queue nobody can drain, mostly of artifacts nothing
168
+ # installs. A gate nobody keeps up with is a gate that gets skimmed, so the prerelease
169
+ # goes rather than the gate.
170
+ #
171
+ # To bring it back for a package that genuinely needs prereleases, uncomment and change
172
+ # the last line to `npm stage publish --tag next`. Better still, move this job to
173
+ # `workflow_dispatch` so a prerelease is cut deliberately rather than on every push.
174
+ #
175
+ # - name: Publish next release
176
+ # run: |
177
+ # # Start from main's version so changesets apply on top of the latest stable
178
+ # git fetch origin main --depth=1
179
+ # MAIN_VERSION=$(git show origin/main:package.json | node -p "JSON.parse(require('fs').readFileSync(0,'utf8')).version")
180
+ # npm version "$MAIN_VERSION" --no-git-tag-version --allow-same-version
181
+ # # Apply pending changesets to get the next version
182
+ # npx changeset version
183
+ # NEXT_VERSION=$(node -p "require('./package.json').version")
184
+ # # Append dev prerelease identifier
185
+ # DEV_VERSION="${NEXT_VERSION}-next.$(date +%Y%m%d%H%M%S)"
186
+ # npm version "$DEV_VERSION" --no-git-tag-version
187
+ # npm publish --tag next
174
188
  env:
175
189
  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
176
190
  NODE_AUTH_TOKEN: ${{ secrets.{{NPM_SECRET_NAME}} }}
@@ -8,18 +8,52 @@ import type { PackageDetails } from './interfaces.js';
8
8
  */
9
9
  import { ensureEnvironmentLoaded, loadBackendStorageConfig, getLincdPackages } from './lifecycle.js';
10
10
  export { ensureEnvironmentLoaded, loadBackendStorageConfig, getLincdPackages };
11
+ export type AppTemplate = 'web' | 'react-native';
12
+ type AppIdentity = {
13
+ appName: string;
14
+ appPrefix: string;
15
+ appDomain: string;
16
+ hyphenName: string;
17
+ };
11
18
  export declare const createApp: (name: any, basePath?: string, options?: {
12
19
  appName?: string;
13
20
  appPrefix?: string;
14
21
  appDomain?: string;
15
22
  skipInstall?: boolean;
23
+ template?: AppTemplate;
16
24
  }) => Promise<void>;
25
+ /**
26
+ * iOS bundle identifier from the app domain and prefix:
27
+ * ('formaestudios.com', 'formae') -> 'com.formaestudios.formae'.
28
+ */
29
+ export declare function reactNativeBundleId(appDomain: string, appPrefix: string): string;
30
+ /**
31
+ * The prefix becomes a directory, an npm package name, a bundle-ID label and a
32
+ * literal inside a Jest regex; this form is valid in all four unescaped.
33
+ */
34
+ export declare const RN_PREFIX_PATTERN: RegExp;
35
+ /** Placeholder name of the shapes package in defaults/app-react-native. */
36
+ export declare const RN_SHAPES_TOKEN = "app-shapes";
37
+ /**
38
+ * Scaffold the React Native monorepo from defaults/app-react-native.
39
+ * Identity is stamped into named fields only; the global ${...} substitution
40
+ * (replaceVariablesInFolder) is never used, so template literals in TypeScript
41
+ * sources stay intact.
42
+ */
43
+ export declare function scaffoldReactNativeApp(targetFolder: string, id: AppIdentity, options?: {
44
+ skipInstall?: boolean;
45
+ templateDir?: string;
46
+ }): Promise<void>;
47
+ export declare const reactNativeInternals: {
48
+ scaffoldReactNativeApp: typeof scaffoldReactNativeApp;
49
+ };
17
50
  export declare function warn(...messages: any[]): void;
18
51
  export declare function logError(...errors: any[]): void;
19
52
  export declare function developPackage(target: any, mode: any): void;
20
53
  export declare function runOnPackagesGroupedByDependencies(lincdPackages: any, onBuildStack: (packageGroup: any, dependencies: any) => (pkg: PackageDetails) => Promise<any>, onStackEnd: any, sync?: boolean): Promise<void>;
21
54
  export declare function buildAll(options: any): void;
22
55
  export declare const createOntology: (prefix: any, uriBase?: any, basePath?: string) => Promise<void>;
56
+ export declare const addShapeToBarrel: (shapeHyphenName: string, root?: string) => string;
23
57
  export declare const addLineToIndex: (line: any, insertMatchString: string, root?: string, insertAtStart?: boolean) => string;
24
58
  export declare const setNameVariables: (name: any) => {
25
59
  hyphenName: any;
@@ -55,6 +89,11 @@ export declare const upgradePackages: () => Promise<void>;
55
89
  export declare const createPackage: (name: any, uriBase?: any, basePath?: string) => Promise<void>;
56
90
  export declare const register: (registryURL: any) => Promise<void>;
57
91
  export declare const buildPackage: (target: any, target2: any, packagePath?: string, logResults?: boolean) => Promise<any>;
92
+ type BuildStep = {
93
+ name: string;
94
+ apply: () => Promise<unknown>;
95
+ };
96
+ export declare const planBuildSteps: (pkgJson: any, packagePath: string) => BuildStep[];
58
97
  export declare const compilePackage: (packagePath?: string) => Promise<void>;
59
98
  export declare const compilePackageESM: (packagePath?: string) => Promise<boolean>;
60
99
  export declare const compilePackageCJS: (packagePath?: string) => Promise<boolean | {
@@ -1 +1 @@
1
- {"version":3,"file":"cli-methods.d.ts","sourceRoot":"","sources":["../../src/cli-methods.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-methods.d.ts","sourceRoot":"","sources":["../../src/cli-methods.ts"],"names":[],"mappings":"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"}