@microsoft/rayfin-guide 1.34.0-alpha.1225 → 1.34.0-alpha.1270
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.
|
@@ -104,7 +104,7 @@ Pass a relative or absolute path to `-t`/`--template` when the template is alrea
|
|
|
104
104
|
npx rayfin init my-app -t ./my-template
|
|
105
105
|
```
|
|
106
106
|
|
|
107
|
-
Local templates use the same `rayfin-template.yml` file format as git-backed templates for
|
|
107
|
+
Local templates use the same `rayfin-template.yml` file format as git-backed templates, including grouped entries for nested navigation.
|
|
108
108
|
|
|
109
109
|
> **Bare names resolve as template names, not paths.**
|
|
110
110
|
> Use `./`, `../`, or an absolute path when pointing at a local directory:
|
|
@@ -343,8 +343,7 @@ entries:
|
|
|
343
343
|
path: ./templates/fullstack
|
|
344
344
|
```
|
|
345
345
|
|
|
346
|
-
|
|
347
|
-
Grouped nested navigation is available for git-backed template sources.
|
|
346
|
+
Local and git-backed template sources both support grouped nested navigation.
|
|
348
347
|
|
|
349
348
|
### Group entries for nested navigation
|
|
350
349
|
|
|
@@ -197,24 +197,13 @@ The regeneration step updates tables, relationships, and permissions so subseque
|
|
|
197
197
|
Rayfin uses class-level role decorators to generate Data API Builder (DAB) permissions.
|
|
198
198
|
Use `@role()` directly, or the `@anonymous()` and `@authenticated()` shorthands.
|
|
199
199
|
|
|
200
|
-
> **Anonymous data access is not currently supported on Fabric.**
|
|
201
|
-
> Both `@anonymous(...)` and `@role('anonymous', …)` are accepted at compile time, but `rayfin dev` and `rayfin up`, along with any sub-command that involves creating, updating, or applying data schema, reject any DAB configuration that grants the `anonymous` role. Remove the `@anonymous(...)` decorator (or `@role('anonymous', …)`) from your entities; all access then goes through the `authenticated` role.
|
|
202
|
-
>
|
|
203
|
-
> The `@anonymous()` shorthand is published from the experimental subpath as a preview of the future supported syntax:
|
|
204
|
-
>
|
|
205
|
-
> ```typescript
|
|
206
|
-
> import { anonymous } from '@microsoft/rayfin-core/experimental';
|
|
207
|
-
> ```
|
|
208
|
-
>
|
|
209
|
-
> The `@role('anonymous', …)` form is also importable from `@microsoft/rayfin-core/experimental` and behaves identically.
|
|
210
|
-
|
|
211
200
|
### Public read, authenticated write
|
|
212
201
|
|
|
213
|
-
|
|
202
|
+
Grant unauthenticated callers read access with `@anonymous('read')` while
|
|
203
|
+
keeping writes restricted to the owning authenticated user.
|
|
214
204
|
|
|
215
205
|
```typescript
|
|
216
|
-
import { entity, authenticated, uuid, text } from '@microsoft/rayfin-core';
|
|
217
|
-
import { anonymous } from '@microsoft/rayfin-core/experimental';
|
|
206
|
+
import { entity, anonymous, authenticated, uuid, text } from '@microsoft/rayfin-core';
|
|
218
207
|
|
|
219
208
|
@entity()
|
|
220
209
|
@anonymous('read')
|
|
@@ -253,6 +242,7 @@ export class Document {
|
|
|
253
242
|
- `@role()` applies to classes.
|
|
254
243
|
Field visibility is configured through role options.
|
|
255
244
|
- Only the built-in roles are supported today: `anonymous` and `authenticated`.
|
|
245
|
+
- To use anonymous data with Microsoft Fabric, please reach out to your tenant admin to enable the tenant admin switch "Enable anonymous data access for Fabric Apps"
|
|
256
246
|
|
|
257
247
|
## Best practices
|
|
258
248
|
|
|
@@ -27,10 +27,10 @@ Visit and ensure you can view the Timestamp Tracker.
|
|
|
27
27
|
Add a `message` field to the **Timestamp** entity in `rayfin/data/Timestamp.ts`.
|
|
28
28
|
|
|
29
29
|
```typescript
|
|
30
|
-
import { entity,
|
|
30
|
+
import { entity, anonymous, uuid, text, date } from '@microsoft/rayfin-core';
|
|
31
31
|
|
|
32
32
|
@entity()
|
|
33
|
-
@
|
|
33
|
+
@anonymous()
|
|
34
34
|
export class Timestamp {
|
|
35
35
|
@uuid() id!: string;
|
|
36
36
|
@date() timestamp!: Date;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@microsoft/rayfin-guide",
|
|
3
|
-
"version": "1.34.0-alpha.
|
|
3
|
+
"version": "1.34.0-alpha.1270",
|
|
4
4
|
"description": "Cross-cutting Builder guides for the Rayfin platform — discovered by `@microsoft/rayfin-docs` via the `rayfinDocs` package.json field convention.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|