atomic-server icon indicating copy to clipboard operation
atomic-server copied to clipboard

Svelte Lib subresources return string and not array or other iterable

Open AlexMikhalev opened this issue 1 year ago • 4 comments

I am trying

<script lang="ts">
  import { store } from '@tomic/svelte';
  import { getResource, getValue } from '@tomic/svelte';
  import { urls } from '@tomic/lib';
  
  const resource = $store.getResourceLoading('link_to_folder');
  const resource1 = getResource('link_to_folder');

  const name = getValue<string>(resource1, urls.properties.name);
  // this returns a string instead of an array
  var borrower_names = getValue<string[]>(resource1, urls.properties.subResources);
  for (b_name in borrower_names.split(",")) {
    console.log(b_name);
  }

AlexMikhalev avatar Jan 08 '24 15:01 AlexMikhalev

Do you mean it returns subject strings instead of resources? In that case, that's correct.

joepio avatar Jan 15 '24 09:01 joepio

Example above needs then

    let borrower_names=fetchBorrowers("atomic_url_folder").then(y => borrowers = y);
    console.log("Borrowers", borrower_names);

AlexMikhalev avatar Jan 15 '24 19:01 AlexMikhalev

And best way is to use folder (for folder) from:

 const folder = await store.getResourceAsync<DataBrowser.Folder>(subject);
console.log(folder);

Can be closed with small documentation update.

AlexMikhalev avatar Jan 15 '24 19:01 AlexMikhalev

Not sure I understand, sorry. What should be updated in the docs? And do you mean the @tomic/svelte docs or @tomic/lib?

joepio avatar Jan 17 '24 12:01 joepio