@arcgis/coding-components 4.29.0-beta.93 → 4.29.0-beta.94

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 (160) hide show
  1. package/dist/arcgis-coding-components/arcgis-coding-components.esm.js +6 -1
  2. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.ar.json +466 -26
  3. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.bg.json +466 -26
  4. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.bs.json +466 -26
  5. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.ca.json +466 -26
  6. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.cs.json +466 -26
  7. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.da.json +466 -26
  8. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.de.json +466 -26
  9. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.el.json +466 -26
  10. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.en.json +466 -26
  11. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.es.json +466 -26
  12. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.et.json +466 -26
  13. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.fi.json +466 -26
  14. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.fr.json +466 -26
  15. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.he.json +466 -26
  16. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.hr.json +466 -26
  17. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.hu.json +466 -26
  18. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.id.json +466 -26
  19. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.it.json +466 -26
  20. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.ja.json +466 -26
  21. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.ko.json +466 -26
  22. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.lt.json +466 -26
  23. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.lv.json +466 -26
  24. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.nb.json +466 -26
  25. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.nl.json +466 -26
  26. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.pl.json +466 -26
  27. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.pt-BR.json +466 -26
  28. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.pt-PT.json +466 -26
  29. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.ro.json +466 -26
  30. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.ru.json +466 -26
  31. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.sk.json +466 -26
  32. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.sl.json +466 -26
  33. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.sr.json +466 -26
  34. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.sv.json +466 -26
  35. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.th.json +466 -26
  36. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.tr.json +466 -26
  37. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.uk.json +466 -26
  38. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.vi.json +466 -26
  39. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.zh-CN.json +466 -26
  40. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.zh-HK.json +466 -26
  41. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.zh-TW.json +466 -26
  42. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.ar.json +9 -2
  43. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.bg.json +9 -2
  44. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.bs.json +9 -2
  45. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.ca.json +9 -2
  46. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.cs.json +9 -2
  47. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.da.json +9 -2
  48. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.de.json +9 -2
  49. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.el.json +9 -2
  50. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.en.json +9 -2
  51. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.es.json +9 -2
  52. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.et.json +9 -2
  53. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.fi.json +9 -2
  54. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.fr.json +9 -2
  55. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.he.json +9 -2
  56. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.hr.json +9 -2
  57. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.hu.json +9 -2
  58. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.id.json +9 -2
  59. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.it.json +9 -2
  60. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.ja.json +9 -2
  61. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.ko.json +9 -2
  62. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.lt.json +9 -2
  63. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.lv.json +9 -2
  64. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.nb.json +9 -2
  65. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.nl.json +9 -2
  66. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.pl.json +9 -2
  67. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.pt-BR.json +9 -2
  68. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.pt-PT.json +9 -2
  69. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.ro.json +9 -2
  70. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.ru.json +9 -2
  71. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.sk.json +9 -2
  72. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.sl.json +9 -2
  73. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.sr.json +9 -2
  74. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.sv.json +9 -2
  75. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.th.json +9 -2
  76. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.tr.json +9 -2
  77. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.uk.json +9 -2
  78. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.vi.json +9 -2
  79. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.zh-CN.json +9 -2
  80. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.zh-HK.json +9 -2
  81. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.zh-TW.json +9 -2
  82. package/dist/arcgis-coding-components/assets/code-editor/arcade.worker.js +1 -1
  83. package/dist/arcgis-coding-components/index.esm.js +6 -1
  84. package/dist/arcgis-coding-components/{p-a1a4f5fc.js → p-06b7a85d.js} +6 -1
  85. package/dist/arcgis-coding-components/{p-4c959bce.js → p-22837217.js} +15 -10
  86. package/dist/arcgis-coding-components/{p-ccafed7f.js → p-2b1aca7c.js} +5 -0
  87. package/dist/arcgis-coding-components/{p-75ae922a.js → p-4c4149bc.js} +6 -1
  88. package/dist/arcgis-coding-components/{p-79707082.js → p-5fb23065.js} +6 -1
  89. package/dist/arcgis-coding-components/{p-009eaccf.js → p-8f020f20.js} +5 -0
  90. package/dist/arcgis-coding-components/p-a051ec0a.entry.js +6 -0
  91. package/dist/arcgis-coding-components/{p-cdfe57a1.js → p-a17571b6.js} +6 -1
  92. package/dist/arcgis-coding-components/{p-1d062d47.js → p-a6429039.js} +6 -1
  93. package/dist/arcgis-coding-components/{p-590b795b.js → p-c2344fd6.js} +6 -1
  94. package/dist/arcgis-coding-components/{p-ca7059d4.js → p-d37fa51c.js} +6 -1
  95. package/dist/arcgis-coding-components/p-db60fe10.js +6 -0
  96. package/dist/cjs/{arcade-defaults-7faf4d5f.js → arcade-defaults-042fbece.js} +487 -362
  97. package/dist/cjs/{arcade-mode-26b8bc7a.js → arcade-mode-b495cb6f.js} +24 -20
  98. package/dist/cjs/arcgis-arcade-api_6.cjs.entry.js +176 -112
  99. package/dist/cjs/arcgis-coding-components.cjs.js +6 -1
  100. package/dist/cjs/{css-eb1c8e5c.js → css-19093b80.js} +5 -0
  101. package/dist/cjs/{cssMode-90f06d02.js → cssMode-ce70c012.js} +7 -2
  102. package/dist/cjs/{html-1aa8e458.js → html-04cbd899.js} +7 -2
  103. package/dist/cjs/{htmlMode-d3283acc.js → htmlMode-5e973c6f.js} +7 -2
  104. package/dist/cjs/{index-aaf14a3e.js → index-30445be8.js} +5 -0
  105. package/dist/cjs/index.cjs.js +7 -2
  106. package/dist/cjs/{javascript-7a4d9023.js → javascript-8717f18b.js} +8 -3
  107. package/dist/cjs/{jsonMode-73be73dc.js → jsonMode-b93b2667.js} +7 -2
  108. package/dist/cjs/loader.cjs.js +6 -1
  109. package/dist/cjs/{tsMode-95a699e0.js → tsMode-73e2fe2f.js} +7 -2
  110. package/dist/cjs/{typescript-588df930.js → typescript-a75c0ef4.js} +7 -2
  111. package/dist/components/arcade-api.js +11 -6
  112. package/dist/components/arcade-contribution.js +16 -6
  113. package/dist/components/arcade-defaults.js +243 -118
  114. package/dist/components/arcade-mode.js +22 -18
  115. package/dist/components/arcade-results.js +137 -85
  116. package/dist/components/arcade-suggestions.js +9 -4
  117. package/dist/components/arcade-variables.js +10 -5
  118. package/dist/components/arcgis-arcade-api.js +5 -0
  119. package/dist/components/arcgis-arcade-editor.js +20 -8
  120. package/dist/components/arcgis-arcade-results.js +5 -0
  121. package/dist/components/arcgis-arcade-suggestions.js +5 -0
  122. package/dist/components/arcgis-arcade-variables.js +5 -0
  123. package/dist/components/arcgis-code-editor.js +5 -0
  124. package/dist/components/code-editor.js +9 -4
  125. package/dist/components/fields.js +5 -0
  126. package/dist/components/functional-components.js +5 -0
  127. package/dist/components/index.js +5 -0
  128. package/dist/components/index2.js +7 -2
  129. package/dist/components/markdown.js +5 -0
  130. package/dist/components/utilities.js +7 -2
  131. package/dist/esm/{arcade-defaults-0bc49d1c.js → arcade-defaults-106e7abf.js} +479 -354
  132. package/dist/esm/{arcade-mode-01365fb8.js → arcade-mode-a890a073.js} +24 -20
  133. package/dist/esm/arcgis-arcade-api_6.entry.js +176 -112
  134. package/dist/esm/arcgis-coding-components.js +7 -2
  135. package/dist/esm/{css-aade9167.js → css-5029659c.js} +5 -0
  136. package/dist/esm/{cssMode-edce5a89.js → cssMode-c3ebc40a.js} +7 -2
  137. package/dist/esm/{html-00b724af.js → html-13c9342a.js} +7 -2
  138. package/dist/esm/{htmlMode-ad3459b7.js → htmlMode-053279f0.js} +7 -2
  139. package/dist/esm/{index-3732acb8.js → index-c845e955.js} +5 -0
  140. package/dist/esm/index.js +7 -2
  141. package/dist/esm/{javascript-bdd52d83.js → javascript-c580af02.js} +8 -3
  142. package/dist/esm/{jsonMode-7b4c07fb.js → jsonMode-cd51566e.js} +7 -2
  143. package/dist/esm/loader.js +7 -2
  144. package/dist/esm/{tsMode-0bd06180.js → tsMode-c0164816.js} +7 -2
  145. package/dist/esm/{typescript-dfdad07a.js → typescript-7e6d57f4.js} +7 -2
  146. package/dist/loader/cdn.js +5 -1
  147. package/dist/loader/index.cjs.js +5 -1
  148. package/dist/loader/index.es2017.js +5 -1
  149. package/dist/loader/index.js +5 -1
  150. package/dist/types/components/arcade-editor/arcade-editor.d.ts +1 -1
  151. package/dist/types/components/arcade-results/arcade-results.d.ts +0 -5
  152. package/dist/types/components.d.ts +3 -3
  153. package/dist/types/utils/arcade-executor.d.ts +12 -4
  154. package/dist/types/utils/arcade-monaco/arcade.worker.d.ts +6 -4
  155. package/dist/types/utils/profile/editor-profile.d.ts +10 -5
  156. package/dist/types/utils/profile/types.d.ts +3 -3
  157. package/dist/types/utils/profile/utils.d.ts +4 -0
  158. package/package.json +10 -10
  159. package/dist/arcgis-coding-components/p-86772125.js +0 -1
  160. package/dist/arcgis-coding-components/p-ac769046.entry.js +0 -1
@@ -398,6 +398,31 @@
398
398
  "max": 1
399
399
  }
400
400
  },
401
+ {
402
+ "type": "function",
403
+ "name": "hasvalue",
404
+ "bundle": "core",
405
+ "sinceVersion": "1.20",
406
+ "link": "https://developers.arcgis.com/arcade/function-reference/feature_functions/#hasvalue",
407
+ "description": "Indicates whether a feature has a given field and if that field has a value.",
408
+ "examples": "\n##### Exemple\n\nReturn false if feature attribute does not exist or is empty\n\n```arcade\nif(HasValue($feature, \"population\")){\n return $feature.population / AreaGeodetic($feature)\n}\n// Returns the population density if population is available\n```\n\n",
409
+ "completion": {
410
+ "label": "HasValue",
411
+ "detail": "HasValue(inputFeature, fieldName) -> Boolean",
412
+ "insertText": "HasValue(${1:inputFeature_}, ${2:fieldName_})$0",
413
+ "insertTextMode": 2,
414
+ "insertTextFormat": 2,
415
+ "kind": 3,
416
+ "documentation": {
417
+ "kind": "markdown",
418
+ "value": "**[A partir de la versió 1.20](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nIndicates whether a feature has a given field and if that field has a value.\n\n**Paràmetres**\n\n- **inputFeature**: [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - The feature to check.\n- **fieldName**: [Text](https://developers.arcgis.com/arcade/guide/types/#text) - The field name to check.\n\n**Valor de retorn**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean)"
419
+ }
420
+ },
421
+ "parametersInfo": {
422
+ "min": 2,
423
+ "max": 2
424
+ }
425
+ },
401
426
  {
402
427
  "type": "function",
403
428
  "name": "schema",
@@ -1668,6 +1693,57 @@
1668
1693
  "id": "dictionary_functions",
1669
1694
  "title": "Funcions de diccionari",
1670
1695
  "items": [
1696
+ [
1697
+ {
1698
+ "type": "function",
1699
+ "name": "defaultvalue",
1700
+ "bundle": "core",
1701
+ "sinceVersion": "1.26",
1702
+ "link": "https://developers.arcgis.com/arcade/function-reference/dictionary_functions/#defaultvalue1",
1703
+ "description": "Returns a specified default value if a key in a dictionary does not exist or the value at the specified key is `null` or an empty text value.",
1704
+ "examples": "\n##### Exemples\n\nDefaultValue returns a defined value\n\n```arcade\nvar data = {\n time: Date(2024, 0, 24, 12),\n weather: {\n precipitation: {\n type: \"rain\",\n value: 0.4,\n unit: \"inches\"\n },\n temperature: {\n value: 50,\n unit: \"f\"\n },\n conditions: {\n description: \"Overcast\"\n }\n }\n}\n\nDefaultValue(data, \"time\", \"No time logged\")\n// value of data.time is defined, so it is returned\n// returns Jan 24, 2024, 12:00:00 PM system time\n```\n\nDefaultValue returns a default if there is no value at the specified key.\n\n```arcade\nvar data = {\n time: '',\n weather: {\n precipitation: {\n type: \"rain\",\n value: 0.4,\n unit: \"inches\"\n },\n temperature: {\n value: 50,\n unit: \"f\"\n },\n conditions: {\n description: \"Overcast\"\n }\n }\n}\n\nDefaultValue(data, \"time\", \"No time logged\")\n// value of data.time is empty, so the default is returned\n// returns \"No time logged\"\n```\n\nDefaultValue returns a default if the key does not exist.\n\n```arcade\nvar data = {\n time: ''\n}\n\nDefaultValue(data, \"conditions\", \"n/a\")\n// the conditions key does not exist, so the default is returned\n// returns \"n/a\"\n```\n\n",
1705
+ "completion": {
1706
+ "label": "DefaultValue",
1707
+ "detail": "DefaultValue(container, key, defaultValue) -> Any",
1708
+ "insertText": "DefaultValue(${1:container_}, ${2:key_}, ${3:defaultValue_})$0",
1709
+ "insertTextMode": 2,
1710
+ "insertTextFormat": 2,
1711
+ "kind": 3,
1712
+ "documentation": {
1713
+ "kind": "markdown",
1714
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nReturns a specified default value if a key in a dictionary does not exist or the value at the specified key is `null` or an empty text value.\n\n**Paràmetres**\n\n- **container**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) - The input dictionary to check.\n- **key**: [Text](https://developers.arcgis.com/arcade/guide/types/#text) - The key to check.\n- **defaultValue**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - This value is returned if the key does not exist or the value at the specified key is `null` or an empty text value.\n\n**Valor de retorn**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) \nReturns the value at the specified key if defined. Otherwise, returns the value specified in `defaultValue`."
1715
+ }
1716
+ },
1717
+ "parametersInfo": {
1718
+ "min": 3,
1719
+ "max": 3
1720
+ }
1721
+ },
1722
+ {
1723
+ "type": "function",
1724
+ "name": "defaultvalue",
1725
+ "bundle": "core",
1726
+ "link": "https://developers.arcgis.com/arcade/function-reference/dictionary_functions/#defaultvalue2",
1727
+ "description": "Returns a specified default value if at least one of the keys in a nested dictionary does not exist or the value at the specified key is `null` or an empty text value.",
1728
+ "examples": "\n##### Exemples\n\nDefaultValue returns a defined value\n\n```arcade\nvar data = {\n time: Date(2024, 0, 24, 12),\n weather: {\n precipitation: {\n type: \"rain\",\n value: 0.4,\n unit: \"inches\"\n },\n temperature: {\n value: 50,\n unit: \"f\"\n },\n conditions: {\n description: \"Overcast\"\n }\n }\n}\n\nDefaultValue(data, [\"weather\", \"precipitation\", \"value\"], \"No time logged\")\n// value of data.weather.precipitation.value is defined, so it is returned\n// returns 0.4\n```\n\nDefaultValue returns a default if there is no value at the specified key.\n\n```arcade\nvar data = {\n time: Date(2024, 0, 24, 12),\n weather: {\n precipitation: {\n type: \"rain\",\n value: null,\n unit: \"inches\"\n },\n temperature: {\n value: 50,\n unit: \"f\"\n },\n conditions: {\n description: \"Overcast\"\n }\n }\n}\n\nDefaultValue(data, [\"weather\", \"precipitation\", \"value\"], 0)\n// value of data.weather.precipitation.value is null, so the default is returned\n// returns 0\n```\n\nDefaultValue returns a default if the key does not exist.\n\n```arcade\nvar data = {\n time: Date(2024, 0, 24, 12),\n weather: {\n precipitation: {\n type: \"rain\",\n value: null,\n unit: \"inches\"\n },\n temperature: {\n value: 50,\n unit: \"f\"\n },\n conditions: {\n description: \"Overcast\"\n }\n }\n}\n\nDefaultValue(data, [\"weather\", \"wind\", \"value\"], \"n/a\")\n// the data.weather.wind key does not exist, so the default is returned\n// returns \"n/a\"\n```\n\nCheck null value in an array within a dictionary with key that exists\n\n```arcade\nvar data = {\n time: Date(2024, 0, 24, 12),\n interval: 1,\n intervalUnit: \"days\",\n weather: {\n precipitation: {\n type: \"rain\",\n values: [0.4, 0, 0, null, 0.1, 0.8, 1],\n unit: \"inches\"\n },\n temperature: {\n values: [50, 50, 51, 52, 55, 49, 51],\n unit: \"f\"\n },\n }\n}\n\nDefaultValue(data, [\"weather\", \"precipitation\", \"values\", 3], 0)\n// the value data.weather.precipitation.values[3] is null, so the default is returned\n// returns 0\n```\n\n",
1729
+ "completion": {
1730
+ "label": "DefaultValue",
1731
+ "detail": "DefaultValue(container, keys, defaultValue) -> Any",
1732
+ "insertText": "DefaultValue(${1:container_}, ${2:keys_}, ${3:defaultValue_})$0",
1733
+ "insertTextMode": 2,
1734
+ "insertTextFormat": 2,
1735
+ "kind": 3,
1736
+ "documentation": {
1737
+ "kind": "markdown",
1738
+ "value": "Returns a specified default value if at least one of the keys in a nested dictionary does not exist or the value at the specified key is `null` or an empty text value.\n\n**Paràmetres**\n\n- **container**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) - The input dictionary to check.\n- **keys**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Number](https://developers.arcgis.com/arcade/guide/types/#number) \\| [Text](https://developers.arcgis.com/arcade/guide/types/#text)> - An array of the keys or indexes to check in each level of the container's structure.\n- **defaultValue**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - This value is returned if at least one of the keys or indices does not exist or the value at the specified key is `null` or an empty text value.\n\n**Valor de retorn**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) \nReturns the value at the specified key or index if defined. Otherwise, returns the value specified in `defaultValue`."
1739
+ }
1740
+ },
1741
+ "parametersInfo": {
1742
+ "min": 3,
1743
+ "max": 3
1744
+ }
1745
+ }
1746
+ ],
1671
1747
  [
1672
1748
  {
1673
1749
  "type": "function",
@@ -1843,31 +1919,58 @@
1843
1919
  "max": 2
1844
1920
  }
1845
1921
  },
1846
- {
1847
- "type": "function",
1848
- "name": "hasvalue",
1849
- "bundle": "core",
1850
- "sinceVersion": "1.20",
1851
- "link": "https://developers.arcgis.com/arcade/function-reference/dictionary_functions/#hasvalue",
1852
- "description": "Indica si un diccionari té una clau determinada i si aquesta clau té un valor.",
1853
- "examples": "\n##### Exemples\n\nDiccionari amb una clau que un valor\n\n```arcade\nvar d = Dictionary('Port Hope', 16214, 'Grafton', '<1000', 'Cobourg', 18519);\nHasValue(d, 'Cobourg');\n// returns true\n```\n\nDiccionari amb una clau que no té cap valor\n\n```arcade\nvar d = Dictionary('Port Hope', 16214, 'Grafton', '<1000', 'Cobourg', null);\nHasValue(d, 'Cobourg');\n// returns false\n```\n\nDiccionari amb la clau proporcionada\n\n```arcade\nvar d = Dictionary('Port Hope', 16214, 'Grafton', '<1000');\nHasValue(d, 'Cobourg');\n// returns false\n```\n\nDiccionari amb la clau proporcionada\n\n```arcade\nif ( HasValue( Schema($feature).fields[0], \"domain\" ) ) {\n // Do something with the value if true\n}\n```\n\n",
1854
- "completion": {
1855
- "label": "HasValue",
1856
- "detail": "HasValue(inputDictionary, key) -> Boolean",
1857
- "insertText": "HasValue(${1:inputDictionary_}, ${2:key_})$0",
1858
- "insertTextMode": 2,
1859
- "insertTextFormat": 2,
1860
- "kind": 3,
1861
- "documentation": {
1862
- "kind": "markdown",
1863
- "value": "**[A partir de la versió 1.20](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nIndica si un diccionari té una clau determinada i si aquesta clau té un valor.\n\n**Paràmetres**\n\n- **inputDictionary**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) \\| [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - Diccionari o entitat que es comprovarà.\n- **key**: [Text](https://developers.arcgis.com/arcade/guide/types/#text) - Nom del camp o la clau que es comprovarà.\n\n**Valor de retorn**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean)"
1922
+ [
1923
+ {
1924
+ "type": "function",
1925
+ "name": "hasvalue",
1926
+ "bundle": "core",
1927
+ "sinceVersion": "1.20",
1928
+ "link": "https://developers.arcgis.com/arcade/function-reference/dictionary_functions/#hasvalue1",
1929
+ "description": "Indicates whether a dictionary has a given key and if that key has a value.",
1930
+ "examples": "\n##### Exemples\n\nDictionary with key that has a value\n\n```arcade\nvar d = Dictionary('Port Hope', 16214, 'Grafton', '<1000', 'Cobourg', 18519);\nHasValue(d, 'Cobourg');\n// returns true\n```\n\nDictionary with key that does not have a value\n\n```arcade\nvar d = Dictionary('Port Hope', 16214, 'Grafton', '<1000', 'Cobourg', null);\nHasValue(d, 'Cobourg');\n// returns false\n```\n\nDictionary without the provided key\n\n```arcade\nvar d = Dictionary('Port Hope', 16214, 'Grafton', '<1000');\nHasValue(d, 'Cobourg');\n// returns false\n```\n\nDictionary without the provided key\n\n```arcade\nif ( HasValue( Schema($feature).fields[0], \"domain\" ) ) {\n // Do something with the value if true\n}\n```\n\n",
1931
+ "completion": {
1932
+ "label": "HasValue",
1933
+ "detail": "HasValue(inputDictionary, key) -> Boolean",
1934
+ "insertText": "HasValue(${1:inputDictionary_}, ${2:key_})$0",
1935
+ "insertTextMode": 2,
1936
+ "insertTextFormat": 2,
1937
+ "kind": 3,
1938
+ "documentation": {
1939
+ "kind": "markdown",
1940
+ "value": "**[A partir de la versió 1.20](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nIndicates whether a dictionary has a given key and if that key has a value.\n\n**Paràmetres**\n\n- **inputDictionary**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) - The dictionary to check.\n- **key**: [Text](https://developers.arcgis.com/arcade/guide/types/#text) - The key or field name to check.\n\n**Valor de retorn**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean)"
1941
+ }
1942
+ },
1943
+ "parametersInfo": {
1944
+ "min": 2,
1945
+ "max": 2
1864
1946
  }
1865
1947
  },
1866
- "parametersInfo": {
1867
- "min": 2,
1868
- "max": 2
1948
+ {
1949
+ "type": "function",
1950
+ "name": "hasvalue",
1951
+ "bundle": "core",
1952
+ "sinceVersion": "1.26",
1953
+ "link": "https://developers.arcgis.com/arcade/function-reference/dictionary_functions/#hasvalue2",
1954
+ "description": "Checks whether a property nested several levels deep in a dictionary has a value. This allows you to drill into a nested structure in one step rather than check values at each level. Returns `true` if the keys and indexes at each level of the structure exist and include a non-null value.",
1955
+ "examples": "\n##### Exemples\n\nCheck dictionary with key that has a nested value\n\n```arcade\nvar data = {\n time: Date(2024, 0, 24, 12),\n weather: {\n precipitation: {\n type: \"rain\",\n value: 0.4,\n unit: \"inches\"\n },\n temperature: {\n value: 50,\n unit: \"f\"\n },\n conditions: {\n description: \"Overcast\"\n }\n }\n}\n\nif(HasValue(data, [\"weather\",\"precipitation\",\"value\"])){\n // if() evaluates to true, thus executing the return\n return data.weather.precipitation.value;\n}\n```\n\nCheck value in a dictionary with key that does not exist\n\n```arcade\nvar data = {\n time: Date(2024, 0, 24, 12),\n weather: {\n precipitation: {\n type: \"rain\",\n value: 0.4,\n unit: \"inches\"\n },\n temperature: {\n value: 50,\n unit: \"f\"\n },\n conditions: {\n description: \"Overcast\"\n }\n }\n}\n\nif(HasValue(data, [\"weather\",\"precipitation\",\"values\", 0])){\n // if() evaluates to false (\"values\" does not exist), thus avoiding the block\n return data.weather.precipitation.values;\n}\n```\n\nCheck value in an array within a dictionary with key that does exist\n\n```arcade\nvar data = {\n time: Date(2024, 0, 24, 12),\n interval: 1,\n intervalUnit: \"days\",\n weather: {\n precipitation: {\n type: \"rain\",\n values: [0.4, 0, 0, null, 0.1, 0.8, 1],\n unit: \"inches\"\n },\n temperature: {\n values: [50, 50, 51, 52, 55, 49, 51],\n unit: \"f\"\n },\n }\n}\n\nif(HasValue(data, [\"weather\",\"precipitation\",\"values\", 6])){\n // if() evaluates to true, thus executing the return\n return data.weather.precipitation.values[6];\n}\n```\n\n",
1956
+ "completion": {
1957
+ "label": "HasValue",
1958
+ "detail": "HasValue(inputDictionary, keys) -> Boolean",
1959
+ "insertText": "HasValue(${1:inputDictionary_}, ${2:keys_})$0",
1960
+ "insertTextMode": 2,
1961
+ "insertTextFormat": 2,
1962
+ "kind": 3,
1963
+ "documentation": {
1964
+ "kind": "markdown",
1965
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nChecks whether a property nested several levels deep in a dictionary has a value. This allows you to drill into a nested structure in one step rather than check values at each level. Returns `true` if the keys and indexes at each level of the structure exist and include a non-null value.\n\n**Paràmetres**\n\n- **inputDictionary**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) - The dictionary to check.\n- **keys**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)&lt;[Number](https://developers.arcgis.com/arcade/guide/types/#number) \\| [Text](https://developers.arcgis.com/arcade/guide/types/#text)&gt; - An array of the keys or indexes to check in each level of the structure.\n\n**Valor de retorn**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean)"
1966
+ }
1967
+ },
1968
+ "parametersInfo": {
1969
+ "min": 2,
1970
+ "max": 2
1971
+ }
1869
1972
  }
1870
- }
1973
+ ]
1871
1974
  ]
1872
1975
  },
1873
1976
  {
@@ -2632,7 +2735,7 @@
2632
2735
  "sinceVersion": "1.14",
2633
2736
  "link": "https://developers.arcgis.com/arcade/function-reference/featureset_functions/#length3d",
2634
2737
  "description": "Retorna la longitud plana (és a dir, cartesiana) de la geometria o FeatureSet d'entrada tenint en compte l'altura o la informació Z. La geometria proporcionada a aquesta funció ha de tenir assignat un sistema de coordenades projectades. Si la referència espacial no proporciona un valor per a les unitats Z, el resultat es retornarà en metres. Recordeu que no tots els clients (com ara la sèrie 3.x de l'ArcGIS API for JavaScript) admeten la sol·licitud de valors Z, encara que les dades continguin informació de Z.\n\n_Les geometries d'entitat dels perfils de visualització i etiquetatge es generalitzen en funció de la resolució de l'escala de la visualització per millorar el rendiment del dibuix. Per tant, en utilitzar la geometria d'una entitat (és a dir, `$feature`) com a entrada per a qualsevol funció de geometria en aquests contextos es retornaran resultats diferents a cada nivell de l'escala. Altres perfils, com ara el de finestra emergent, proporcionen la geometria de resolució completa._",
2635
- "examples": "\n##### Exemple\n\nRetorna la longitud 3D de les entitats de la capa en metres.\n\n```arcade\nLength($layer, 'meters')\n```\n\n",
2738
+ "examples": "\n##### Exemple\n\nRetorna la longitud 3D de les entitats de la capa en metres.\n\n```arcade\nLength3D($layer, 'meters')\n```\n\n",
2636
2739
  "completion": {
2637
2740
  "label": "Length3D",
2638
2741
  "detail": "Length3D(features, unit?) -> Number",
@@ -3407,6 +3510,57 @@
3407
3510
  "max": 2
3408
3511
  }
3409
3512
  },
3513
+ [
3514
+ {
3515
+ "type": "function",
3516
+ "name": "defaultvalue",
3517
+ "bundle": "core",
3518
+ "sinceVersion": "1.26",
3519
+ "link": "https://developers.arcgis.com/arcade/function-reference/geometry_functions/#defaultvalue1",
3520
+ "description": "Returns a specified default value if a key in a geometry does not exist or the value at the specified key is `null` or an empty text value.",
3521
+ "examples": "\n##### Exemples\n\nPoint that has a z-value\n\n```arcade\nDefaultValue(Geometry($feature), \"z\", 1000)\n// Geometry($feature).hasZ is true\n// returns the value of Geometry($feature).z\n```\n\nPoint that does not have a z-value\n\n```arcade\nDefaultValue(Geometry($feature), \"z\", 1000)\n// Geometry($feature).hasZ is false\n// returns 1000\n```\n\n",
3522
+ "completion": {
3523
+ "label": "DefaultValue",
3524
+ "detail": "DefaultValue(container, key, defaultValue) -> Any",
3525
+ "insertText": "DefaultValue(${1:container_}, ${2:key_}, ${3:defaultValue_})$0",
3526
+ "insertTextMode": 2,
3527
+ "insertTextFormat": 2,
3528
+ "kind": 3,
3529
+ "documentation": {
3530
+ "kind": "markdown",
3531
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nReturns a specified default value if a key in a geometry does not exist or the value at the specified key is `null` or an empty text value.\n\n**Paràmetres**\n\n- **container**: [Geometry](https://developers.arcgis.com/arcade/guide/types/#geometry) - The input geometry to check.\n- **key**: [Text](https://developers.arcgis.com/arcade/guide/types/#text) - The key to check.\n- **defaultValue**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - This value is returned if the key does not exist or the value at the specified key is `null` or an empty text value.\n\n**Valor de retorn**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) \nReturns the value at the specified key if defined. Otherwise, returns the value specified in `defaultValue`."
3532
+ }
3533
+ },
3534
+ "parametersInfo": {
3535
+ "min": 3,
3536
+ "max": 3
3537
+ }
3538
+ },
3539
+ {
3540
+ "type": "function",
3541
+ "name": "defaultvalue",
3542
+ "bundle": "core",
3543
+ "link": "https://developers.arcgis.com/arcade/function-reference/geometry_functions/#defaultvalue2",
3544
+ "description": "Returns a specified default value if at least one of the keys in a geometry's nested properties does not exist or the value at the specified key is `null` or an empty text value.",
3545
+ "examples": "\n##### Exemples\n\nRing, coordinate, and x value all exist and have a value\n\n```arcade\n// polygon with one ring\nvar shape = Polygon({\n rings: [[\n Point({ x: -97.06138, y: 32.837, z: 100, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06133, y: 32.836, z: 50, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06124, y: 32.834, z: 20, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06127, y: 32.832, z: 0, hasZ: true, spatialReference: { wkid: 102100 } })\n ]],\n hasZ: true,\n spatialReference: { wkid: 102100 }\n});\n\nreturn DefaultValue(shape, [\"rings\",0,0,\"z\"], 1000)\n// returns 100\n```\n\nRing does not exist\n\n```arcade\n// polygon with one ring\nvar shape = Polygon({\n rings: [[\n Point({ x: -97.06138, y: 32.837, z: 100, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06133, y: 32.836, z: 50, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06124, y: 32.834, z: 20, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06127, y: 32.832, z: 0, hasZ: true, spatialReference: { wkid: 102100 } })\n ]],\n hasZ: true,\n spatialReference: { wkid: 102100 }\n});\n\nreturn DefaultValue(shape, [\"rings\",2,0,\"z\"], 1000)\n// returns 1000\n```\n\nRing and coordinate exist, but m-value does not exist\n\n```arcade\n// polygon with one ring\nvar shape = Polygon({\n rings: [[\n Point({ x: -97.06138, y: 32.837, z: 100, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06133, y: 32.836, z: 50, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06124, y: 32.834, z: 20, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06127, y: 32.832, z: 0, hasZ: true, spatialReference: { wkid: 102100 } })\n ]],\n hasZ: true,\n spatialReference: { wkid: 102100 }\n});\n\nreturn DefaultValue(shape, [\"rings\",0,0,\"m\"], 100)\n// returns 100\n```\n\n",
3546
+ "completion": {
3547
+ "label": "DefaultValue",
3548
+ "detail": "DefaultValue(container, keys, defaultValue) -> Any",
3549
+ "insertText": "DefaultValue(${1:container_}, ${2:keys_}, ${3:defaultValue_})$0",
3550
+ "insertTextMode": 2,
3551
+ "insertTextFormat": 2,
3552
+ "kind": 3,
3553
+ "documentation": {
3554
+ "kind": "markdown",
3555
+ "value": "Returns a specified default value if at least one of the keys in a geometry's nested properties does not exist or the value at the specified key is `null` or an empty text value.\n\n**Paràmetres**\n\n- **container**: [Geometry](https://developers.arcgis.com/arcade/guide/types/#geometry) - The input geometry to check.\n- **keys**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)&lt;[Number](https://developers.arcgis.com/arcade/guide/types/#number) \\| [Text](https://developers.arcgis.com/arcade/guide/types/#text)&gt; - An array of the keys or indexes to check in each level of the container's structure.\n- **defaultValue**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - This value is returned if at least one of the keys or indices does not exist or the value at the specified key is `null` or an empty text value.\n\n**Valor de retorn**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) \nReturns the value at the specified key or index if defined. Otherwise, returns the value specified in `defaultValue`."
3556
+ }
3557
+ },
3558
+ "parametersInfo": {
3559
+ "min": 3,
3560
+ "max": 3
3561
+ }
3562
+ }
3563
+ ],
3410
3564
  {
3411
3565
  "type": "function",
3412
3566
  "name": "densify",
@@ -3557,6 +3711,31 @@
3557
3711
  "max": 3
3558
3712
  }
3559
3713
  },
3714
+ {
3715
+ "type": "function",
3716
+ "name": "distancetocoordinate",
3717
+ "bundle": "geometry",
3718
+ "sinceVersion": "1.26",
3719
+ "link": "https://developers.arcgis.com/arcade/function-reference/geometry_functions/#distancetocoordinate",
3720
+ "description": "Returns a coordinate along an input line based on a given distance. If the distance is not found along the input line, then the result will be `null`.\n\n_Feature geometries in the visualization and labeling profiles are generalized according to the view's scale resolution to improve drawing performance. Therefore, using a feature's geometry (i.e. `$feature`) as input to any geometry function in these contexts will return different results at each scale level. Other profiles, such as popup, provide the full resolution geometry._",
3721
+ "examples": "\n##### Exemple\n\nReturns the coordinate of the input polyline based on the given distance value\n\n```arcade\nvar result = DistanceToCoordinate(Geometry($feature), 1038);\n\nreturn result.coordinate;\n```\n\n",
3722
+ "completion": {
3723
+ "label": "DistanceToCoordinate",
3724
+ "detail": "DistanceToCoordinate(inputLine, inputDistance) -> Dictionary",
3725
+ "insertText": "DistanceToCoordinate(${1:inputLine_}, ${2:inputDistance_})$0",
3726
+ "insertTextMode": 2,
3727
+ "insertTextFormat": 2,
3728
+ "kind": 3,
3729
+ "documentation": {
3730
+ "kind": "markdown",
3731
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nReturns a coordinate along an input line based on a given distance. If the distance is not found along the input line, then the result will be `null`.\n\n_Feature geometries in the visualization and labeling profiles are generalized according to the view's scale resolution to improve drawing performance. Therefore, using a feature's geometry (i.e. `$feature`) as input to any geometry function in these contexts will return different results at each scale level. Other profiles, such as popup, provide the full resolution geometry._\n\n**Paràmetres**\n\n- **inputLine**: [Polyline](https://developers.arcgis.com/arcade/guide/types/#polyline) \\| [Array](https://developers.arcgis.com/arcade/guide/types/#array)&lt;[Point](https://developers.arcgis.com/arcade/guide/types/#point)&gt; \\| [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - The line or path from which to find a coordinate. When using a Feature as input, the feature's geometry must be a polyline.\n- **inputDistance**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - The distance used to find the coordinate along `inputLine` from the start of the line.\n\n**Valor de retorn**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) \nReturns a dictionary with the following properties. If the distance is not found along the input line, then the result will be `null`.\n\n- **coordinate**: [Point](https://developers.arcgis.com/arcade/guide/types/#point) - The coordinates of a point along `inputLine` based on the given distance value. The `searchPoint` must have `hasZ` equal to `true` for the resulting `coordinate` to include a z value.\n- **distanceAlong**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - The planar distance from the start of the `inputLine` measured along the line to the `coordinate`.\n- **partId**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - In the case of a polyline input, the index of the path to which the `coordinate` belongs.\n- **segmentId**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - The index (relative to the path) of the line segment to which the `coordinate` belongs. If `coordinate` represents a vertex of the input line, then `segmentId` will return the index of the previous vertex. If `coordinate` is the first vertex of `inputLine`, then the value of `segmentId` will be `0`."
3732
+ }
3733
+ },
3734
+ "parametersInfo": {
3735
+ "min": 2,
3736
+ "max": 2
3737
+ }
3738
+ },
3560
3739
  {
3561
3740
  "type": "function",
3562
3741
  "name": "envelopeintersects",
@@ -3730,6 +3909,58 @@
3730
3909
  "max": 1
3731
3910
  }
3732
3911
  },
3912
+ [
3913
+ {
3914
+ "type": "function",
3915
+ "name": "hasvalue",
3916
+ "bundle": "core",
3917
+ "sinceVersion": "1.26",
3918
+ "link": "https://developers.arcgis.com/arcade/function-reference/geometry_functions/#hasvalue1",
3919
+ "description": "Indicates whether a geometry has a value at a given key or index.",
3920
+ "examples": "\n##### Exemples\n\nPoint that has a z value\n\n```arcade\nif( TypeOf(Geometry($feature)) == \"Point\"){\n return HasValue(Geometry($feature), \"z\")\n // returns true\n}\n```\n\nPolygon with key that does not exist\n\n```arcade\nif( TypeOf(Geometry($feature)) == \"Polygon\"){\n return HasValue(Geometry($feature), \"verticalCoordinateSystem\")\n // returns false\n}\n```\n\n",
3921
+ "completion": {
3922
+ "label": "HasValue",
3923
+ "detail": "HasValue(inputGeometry, key) -> Boolean",
3924
+ "insertText": "HasValue(${1:inputGeometry_}, ${2:key_})$0",
3925
+ "insertTextMode": 2,
3926
+ "insertTextFormat": 2,
3927
+ "kind": 3,
3928
+ "documentation": {
3929
+ "kind": "markdown",
3930
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nIndicates whether a geometry has a value at a given key or index.\n\n**Paràmetres**\n\n- **inputGeometry**: [Geometry](https://developers.arcgis.com/arcade/guide/types/#geometry) - The geometry to check.\n- **key**: [Text](https://developers.arcgis.com/arcade/guide/types/#text) - The key or property name to check.\n\n**Valor de retorn**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean)"
3931
+ }
3932
+ },
3933
+ "parametersInfo": {
3934
+ "min": 2,
3935
+ "max": 2
3936
+ }
3937
+ },
3938
+ {
3939
+ "type": "function",
3940
+ "name": "hasvalue",
3941
+ "bundle": "core",
3942
+ "sinceVersion": "1.26",
3943
+ "link": "https://developers.arcgis.com/arcade/function-reference/geometry_functions/#hasvalue2",
3944
+ "description": "Checks whether a property or index nested several levels deep in a geometry has a value. This allows you to drill into a nested structure in one step rather than check values at each level. Returns `true` if the keys and indexes at each level of the structure exist and include a non-null value.",
3945
+ "examples": "\n##### Exemples\n\nRing, coordinate, and x value all exist and have a value\n\n```arcade\n// polygon with one ring\nvar shape = Polygon({\n rings: [[\n Point({ x: -97.06138, y: 32.837, z: 100, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06133, y: 32.836, z: 50, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06124, y: 32.834, z: 20, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06127, y: 32.832, z: 0, hasZ: true, spatialReference: { wkid: 102100 } })\n ]],\n hasZ: true,\n spatialReference: { wkid: 102100 }\n});\n\nif(HasValue(shape, [\"rings\",0,0,\"x\"])){\n // if() evaluates to true, thus executing the return\n return shape.rings[0][0].x;\n // returns -97.06138\n}\n```\n\nRing does not exist\n\n```arcade\n// polygon with one ring\nvar shape = Polygon({\n rings: [[\n Point({ x: -97.06138, y: 32.837, z: 100, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06133, y: 32.836, z: 50, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06124, y: 32.834, z: 20, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06127, y: 32.832, z: 0, hasZ: true, spatialReference: { wkid: 102100 } })\n ]],\n hasZ: true,\n spatialReference: { wkid: 102100 }\n});\n\nif(HasValue(shape, [\"rings\",2,0,\"x\"])){\n // if() evaluates to false, thus not executing the return\n return shape.rings[2][0].x;\n // polygon only has one ring; there is not a third ring\n}\n```\n\nRing and coordinate exist, but m value does not exist\n\n```arcade\n// polygon with one ring\nvar shape = Polygon({\n rings: [[\n Point({ x: -97.06138, y: 32.837, z: 100, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06133, y: 32.836, z: 50, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06124, y: 32.834, z: 20, hasZ: true, spatialReference: { wkid: 102100 } }),\n Point({ x: -97.06127, y: 32.832, z: 0, hasZ: true, spatialReference: { wkid: 102100 } })\n ]],\n hasZ: true,\n spatialReference: { wkid: 102100 }\n});\n\nif(HasValue(shape, [\"rings\",0,3,\"m\"])){\n // if() evaluates to false, thus not executing the return\n return shape.rings[0][3].m;\n // there is a coordinate at this location, but it does not have an m value\n}\n```\n\n",
3946
+ "completion": {
3947
+ "label": "HasValue",
3948
+ "detail": "HasValue(inputGeometry, keys) -> Boolean",
3949
+ "insertText": "HasValue(${1:inputGeometry_}, ${2:keys_})$0",
3950
+ "insertTextMode": 2,
3951
+ "insertTextFormat": 2,
3952
+ "kind": 3,
3953
+ "documentation": {
3954
+ "kind": "markdown",
3955
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nChecks whether a property or index nested several levels deep in a geometry has a value. This allows you to drill into a nested structure in one step rather than check values at each level. Returns `true` if the keys and indexes at each level of the structure exist and include a non-null value.\n\n**Paràmetres**\n\n- **inputGeometry**: [Geometry](https://developers.arcgis.com/arcade/guide/types/#geometry) - The dictionary or feature to check.\n- **keys**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)&lt;[Number](https://developers.arcgis.com/arcade/guide/types/#number) \\| [Text](https://developers.arcgis.com/arcade/guide/types/#text)&gt; - An array of the keys or indexes to check in each level of the structure.\n\n**Valor de retorn**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean)"
3956
+ }
3957
+ },
3958
+ "parametersInfo": {
3959
+ "min": 2,
3960
+ "max": 2
3961
+ }
3962
+ }
3963
+ ],
3733
3964
  {
3734
3965
  "type": "function",
3735
3966
  "name": "intersection",
@@ -3905,6 +4136,31 @@
3905
4136
  "max": 2
3906
4137
  }
3907
4138
  },
4139
+ {
4140
+ "type": "function",
4141
+ "name": "measuretocoordinate",
4142
+ "bundle": "geometry",
4143
+ "sinceVersion": "1.26",
4144
+ "link": "https://developers.arcgis.com/arcade/function-reference/geometry_functions/#measuretocoordinate",
4145
+ "description": "Returns a coordinate along an input line based on a given measure, or m-value. If the measure is not found along the input line, then the result will be `null`.\n\n_Feature geometries in the visualization and labeling profiles are generalized according to the view's scale resolution to improve drawing performance. Therefore, using a feature's geometry (i.e. `$feature`) as input to any geometry function in these contexts will return different results at each scale level. Other profiles, such as popup, provide the full resolution geometry._",
4146
+ "examples": "\n##### Exemple\n\nReturns the coordinate of the input polyline based on the given measure value\n\n```arcade\nvar result = MeasureToCoordinate(Geometry($feature), 110);\n\nreturn result.coordinate;\n```\n\n",
4147
+ "completion": {
4148
+ "label": "MeasureToCoordinate",
4149
+ "detail": "MeasureToCoordinate(inputLine, inputMeasure) -> Dictionary",
4150
+ "insertText": "MeasureToCoordinate(${1:inputLine_}, ${2:inputMeasure_})$0",
4151
+ "insertTextMode": 2,
4152
+ "insertTextFormat": 2,
4153
+ "kind": 3,
4154
+ "documentation": {
4155
+ "kind": "markdown",
4156
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nReturns a coordinate along an input line based on a given measure, or m-value. If the measure is not found along the input line, then the result will be `null`.\n\n_Feature geometries in the visualization and labeling profiles are generalized according to the view's scale resolution to improve drawing performance. Therefore, using a feature's geometry (i.e. `$feature`) as input to any geometry function in these contexts will return different results at each scale level. Other profiles, such as popup, provide the full resolution geometry._\n\n**Paràmetres**\n\n- **inputLine**: [Polyline](https://developers.arcgis.com/arcade/guide/types/#polyline) \\| [Array](https://developers.arcgis.com/arcade/guide/types/#array)&lt;[Point](https://developers.arcgis.com/arcade/guide/types/#point)&gt; \\| [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - The line or path from which to find a coordinate. When using a Feature as input, the feature's geometry must be a polyline.\n- **inputMeasure**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - The measure, or m-value, from which to find a coordinate along `inputLine` from the start of the line.\n\n**Valor de retorn**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) \nReturns a dictionary with the following properties. If the measure is not found along the input line, then the result will be `null`.\n\n- **coordinate**: [Point](https://developers.arcgis.com/arcade/guide/types/#point) - The coordinates of a point along `inputLine` based on the given measure value. The `searchPoint` must have `hasZ` equal to `true` for the resulting `coordinate` to include a z value.\n- **distanceAlong**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - The planar distance from the start of the `inputLine` measured along the line to the `coordinate`.\n- **partId**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - In the case of a polyline input, the index of the path to which the `coordinate` belongs.\n- **segmentId**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - The index (relative to the path) of the line segment to which the `coordinate` belongs. If `coordinate` represents a vertex of the input line, then `segmentId` will return the index of the previous vertex. If `coordinate` is the first vertex of `inputLine`, then the value of `segmentId` will be `0`."
4157
+ }
4158
+ },
4159
+ "parametersInfo": {
4160
+ "min": 2,
4161
+ "max": 2
4162
+ }
4163
+ },
3908
4164
  {
3909
4165
  "type": "function",
3910
4166
  "name": "multiparttosinglepart",
@@ -4021,7 +4277,7 @@
4021
4277
  "kind": 3,
4022
4278
  "documentation": {
4023
4279
  "kind": "markdown",
4024
- "value": "**[A partir de la versió 1.23](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nRetorna la coordenada més propera (no vèrtex) de la geometria d'entrada al punt de cerca. El diccionari retornat també inclou la distància plana més curta del punt de cerca a la coordenada més propera. Si el punt de cerca interseca la geometria d'entrada, es retorna el punt de cerca com a resultat amb una distància de zero.\n\n_Les geometries d'entitat dels perfils de visualització i etiquetatge es generalitzen en funció de la resolució de l'escala de la visualització per millorar el rendiment del dibuix. Per tant, en utilitzar la geometria d'una entitat (és a dir, `$feature`) com a entrada per a qualsevol funció de geometria en aquests contextos es retornaran resultats diferents a cada nivell de l'escala. Altres perfils, com ara el de finestra emergent, proporcionen la geometria de resolució completa._\n\n**Paràmetres**\n\n- **inputGeometry**: [Geometry](https://developers.arcgis.com/arcade/guide/types/#geometry) \\| [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - Geometria des de la qual s'obtindrà la coordenada més propera.\n- **searchPoint**: [Point](https://developers.arcgis.com/arcade/guide/types/#point) \\| [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - Punt des del qual es cercarà la coordenada més propera d'`inputGeometry`.\n\n**Valor de retorn**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) \nRetorna un diccionari amb les propietats següents.\n\n- **coordinate**: [Point](https://developers.arcgis.com/arcade/guide/types/#point) - Coordenada més propera d'`inputGeometry` a `searchPoint`.\n- **distance**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - Distància plana de la coordenada més propera a `searchPoint`. Representa la distància més curta entre `inputGeometry` i `searchPoint`."
4280
+ "value": "**[A partir de la versió 1.23](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nRetorna la coordenada més propera (no vèrtex) de la geometria d'entrada al punt de cerca. El diccionari retornat també inclou la distància plana més curta del punt de cerca a la coordenada més propera. Si el punt de cerca interseca la geometria d'entrada, es retorna el punt de cerca com a resultat amb una distància de zero.\n\n_Les geometries d'entitat dels perfils de visualització i etiquetatge es generalitzen en funció de la resolució de l'escala de la visualització per millorar el rendiment del dibuix. Per tant, en utilitzar la geometria d'una entitat (és a dir, `$feature`) com a entrada per a qualsevol funció de geometria en aquests contextos es retornaran resultats diferents a cada nivell de l'escala. Altres perfils, com ara el de finestra emergent, proporcionen la geometria de resolució completa._\n\n**Paràmetres**\n\n- **inputGeometry**: [Geometry](https://developers.arcgis.com/arcade/guide/types/#geometry) \\| [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - Geometria des de la qual s'obtindrà la coordenada més propera.\n- **searchPoint**: [Point](https://developers.arcgis.com/arcade/guide/types/#point) \\| [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - Punt des del qual es cercarà la coordenada més propera d'`inputGeometry`.\n\n**Valor de retorn**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) \nRetorna un diccionari amb les propietats següents.\n\n- **coordinate**: [Point](https://developers.arcgis.com/arcade/guide/types/#point) - Coordenada més propera d'`inputGeometry` a `searchPoint`.\n- **distance**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - Distància plana de la coordenada més propera a `searchPoint`. Representa la distància més curta entre `inputGeometry` i `searchPoint`.\n- **sideOfLine**: [Text](https://developers.arcgis.com/arcade/guide/types/#text) - "
4025
4281
  }
4026
4282
  },
4027
4283
  "parametersInfo": {
@@ -4046,7 +4302,7 @@
4046
4302
  "kind": 3,
4047
4303
  "documentation": {
4048
4304
  "kind": "markdown",
4049
- "value": "**[A partir de la versió 1.23](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nRetorna el vèrtex més proper de la geometria d'entrada al punt de cerca. El diccionari retornat inclou la distància plana del punt de cerca al vèrtex més proper.\n\n_Les geometries d'entitat dels perfils de visualització i etiquetatge es generalitzen en funció de la resolució de l'escala de la visualització per millorar el rendiment del dibuix. Per tant, en utilitzar la geometria d'una entitat (és a dir, `$feature`) com a entrada per a qualsevol funció de geometria en aquests contextos es retornaran resultats diferents a cada nivell de l'escala. Altres perfils, com ara el de finestra emergent, proporcionen la geometria de resolució completa._\n\n**Paràmetres**\n\n- **inputGeometry**: [Geometry](https://developers.arcgis.com/arcade/guide/types/#geometry) \\| [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - Geometria des de la qual s'obtindrà el vèrtex més proper.\n- **searchPoint**: [Point](https://developers.arcgis.com/arcade/guide/types/#point) \\| [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - Punt des del qual es cercarà el vèrtex més proper d'`inputGeometry`.\n\n**Valor de retorn**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) \nRetorna un diccionari amb les propietats següents.\n\n- **coordinate**: [Point](https://developers.arcgis.com/arcade/guide/types/#point) - Ubicació de punt que representa el vèrtex més proper d'`inputGeometry` a `searchPoint`.\n- **distance**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - Distància plana del vèrtex més proper de la geometria d'entrada a `searchPoint`."
4305
+ "value": "**[A partir de la versió 1.23](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nRetorna el vèrtex més proper de la geometria d'entrada al punt de cerca. El diccionari retornat inclou la distància plana del punt de cerca al vèrtex més proper.\n\n_Les geometries d'entitat dels perfils de visualització i etiquetatge es generalitzen en funció de la resolució de l'escala de la visualització per millorar el rendiment del dibuix. Per tant, en utilitzar la geometria d'una entitat (és a dir, `$feature`) com a entrada per a qualsevol funció de geometria en aquests contextos es retornaran resultats diferents a cada nivell de l'escala. Altres perfils, com ara el de finestra emergent, proporcionen la geometria de resolució completa._\n\n**Paràmetres**\n\n- **inputGeometry**: [Geometry](https://developers.arcgis.com/arcade/guide/types/#geometry) \\| [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - Geometria des de la qual s'obtindrà el vèrtex més proper.\n- **searchPoint**: [Point](https://developers.arcgis.com/arcade/guide/types/#point) \\| [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - Punt des del qual es cercarà el vèrtex més proper d'`inputGeometry`.\n\n**Valor de retorn**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) \nRetorna un diccionari amb les propietats següents.\n\n- **coordinate**: [Point](https://developers.arcgis.com/arcade/guide/types/#point) - Ubicació de punt que representa el vèrtex més proper d'`inputGeometry` a `searchPoint`.\n- **distance**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - Distància plana del vèrtex més proper de la geometria d'entrada a `searchPoint`.\n- **sideOfLine**: [Text](https://developers.arcgis.com/arcade/guide/types/#text) - "
4050
4306
  }
4051
4307
  },
4052
4308
  "parametersInfo": {
@@ -4154,6 +4410,31 @@
4154
4410
  }
4155
4411
  }
4156
4412
  ],
4413
+ {
4414
+ "type": "function",
4415
+ "name": "pointtocoordinate",
4416
+ "bundle": "geometry",
4417
+ "sinceVersion": "1.26",
4418
+ "link": "https://developers.arcgis.com/arcade/function-reference/geometry_functions/#pointtocoordinate",
4419
+ "description": "Returns the nearest coordinate and distance to that coordinate of the search point to the input line.\n\n_Feature geometries in the visualization and labeling profiles are generalized according to the view's scale resolution to improve drawing performance. Therefore, using a feature's geometry (i.e. `$feature`) as input to any geometry function in these contexts will return different results at each scale level. Other profiles, such as popup, provide the full resolution geometry._",
4420
+ "examples": "\n##### Exemple\n\nReturns the distance to the nearest coordinate along the input polyline based on the clicked location to open a popup\n\n```arcade\nvar result;\n\nif (TypeOf($userInput) == \"Point\"){\n result = PointToCoordinate(Geometry($feature), $userInput);\n}\n\nreturn result.distanceAlong;\n```\n\n",
4421
+ "completion": {
4422
+ "label": "PointToCoordinate",
4423
+ "detail": "PointToCoordinate(inputLine, searchPoint) -> Dictionary",
4424
+ "insertText": "PointToCoordinate(${1:inputLine_}, ${2:searchPoint_})$0",
4425
+ "insertTextMode": 2,
4426
+ "insertTextFormat": 2,
4427
+ "kind": 3,
4428
+ "documentation": {
4429
+ "kind": "markdown",
4430
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nReturns the nearest coordinate and distance to that coordinate of the search point to the input line.\n\n_Feature geometries in the visualization and labeling profiles are generalized according to the view's scale resolution to improve drawing performance. Therefore, using a feature's geometry (i.e. `$feature`) as input to any geometry function in these contexts will return different results at each scale level. Other profiles, such as popup, provide the full resolution geometry._\n\n**Paràmetres**\n\n- **inputLine**: [Polyline](https://developers.arcgis.com/arcade/guide/types/#polyline) \\| [Array](https://developers.arcgis.com/arcade/guide/types/#array)&lt;[Point](https://developers.arcgis.com/arcade/guide/types/#point)&gt; \\| [Feature](https://developers.arcgis.com/arcade/guide/types/#feature) - The line or path from which to get the nearest coordinate. When using a Feature as input, the feature's geometry must be a polyline.\n- **searchPoint**: [Point](https://developers.arcgis.com/arcade/guide/types/#point) - The point from which to find the nearest coordinate of the `inputLine`.\n\n**Valor de retorn**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) \nReturns a dictionary with the following properties.\n\n- **coordinate**: [Point](https://developers.arcgis.com/arcade/guide/types/#point) - The point coordinate representing the nearest coordinate along the `inputLine` to the `searchPoint`. The `searchPoint` must have `hasZ` equal to `true` for the resulting `coordinate` to include a z value.\n- **distance**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - The planar distance from the `searchPoint` to the `coordinate`.\n- **distanceAlong**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - The planar distance from the start of the `inputLine` measured along the line to the `coordinate`.\n- **partId**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - In the case of a polyline input, the index of the path to which the `coordinate` belongs.\n- **segmentId**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - The index (relative to the path) of the line segment to which the `coordinate` belongs. If `coordinate` represents a vertex of the input line, then `segmentId` will return the index of the previous vertex. If `coordinate` is the first vertex of `inputLine`, then the value of `segmentId` will be `0`."
4431
+ }
4432
+ },
4433
+ "parametersInfo": {
4434
+ "min": 2,
4435
+ "max": 2
4436
+ }
4437
+ },
4157
4438
  [
4158
4439
  {
4159
4440
  "type": "function",
@@ -4742,6 +5023,57 @@
4742
5023
  "max": 1
4743
5024
  }
4744
5025
  },
5026
+ [
5027
+ {
5028
+ "type": "function",
5029
+ "name": "defaultvalue",
5030
+ "bundle": "core",
5031
+ "sinceVersion": "1.26",
5032
+ "link": "https://developers.arcgis.com/arcade/function-reference/array_functions/#defaultvalue1",
5033
+ "description": "Returns a specified default value if an index in an array does not exist or the value at the specified index is `null` or an empty text value.",
5034
+ "examples": "\n##### Exemples\n\nArray with value at the given index\n\n```arcade\nvar a = [23,4,null,36,901]\nDefaultValue(a, 4, \"No data\");\n// returns 901\n```\n\nArray with no value at the given index\n\n```arcade\nvar a = [23,4,null,36,901]\nDefaultValue(a, 5, \"No data\");\n// returns \"No data\"\n```\n\nArray with a null value at the given index\n\n```arcade\nvar a = [23,4,null,36,901]\nDefaultValue(a, 2, \"No data\");\n// returns \"No data\"\n```\n\n",
5035
+ "completion": {
5036
+ "label": "DefaultValue",
5037
+ "detail": "DefaultValue(container, index, defaultValue) -> Any",
5038
+ "insertText": "DefaultValue(${1:container_}, ${2:index_}, ${3:defaultValue_})$0",
5039
+ "insertTextMode": 2,
5040
+ "insertTextFormat": 2,
5041
+ "kind": 3,
5042
+ "documentation": {
5043
+ "kind": "markdown",
5044
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nReturns a specified default value if an index in an array does not exist or the value at the specified index is `null` or an empty text value.\n\n**Paràmetres**\n\n- **container**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)&lt;[Any](https://developers.arcgis.com/arcade/guide/types/#any)&gt; - The input array to check.\n- **index**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - The index to check.\n- **defaultValue**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - This value is returned if the index does not exist or the value at the specified index is `null` or an empty text value.\n\n**Valor de retorn**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) \nReturns the value at the specified index if defined. Otherwise, returns the value specified in `defaultValue`."
5045
+ }
5046
+ },
5047
+ "parametersInfo": {
5048
+ "min": 3,
5049
+ "max": 3
5050
+ }
5051
+ },
5052
+ {
5053
+ "type": "function",
5054
+ "name": "defaultvalue",
5055
+ "bundle": "core",
5056
+ "link": "https://developers.arcgis.com/arcade/function-reference/array_functions/#defaultvalue2",
5057
+ "description": "Checks whether an index nested several levels deep in a multidimensional array has a value and returns that value if present. Otherwise, this function returns a specified default value if at least one of the nested keys or indices does not exist or the value at the specified key or index is `null` or an empty text value. This allows you to drill into a nested structure in one step rather than check values within each array.",
5058
+ "examples": "\n##### Exemples\n\nArray with a value at the nested index\n\n```arcade\nvar a = [23,4,[0,0,1,1,0],36,901]\nDefaultValue(a, [2, 3], \"No data\");\n// returns 1\n```\n\nArray with no value at the nested index\n\n```arcade\nvar a = [23,4,[0,0,1,1,0],36,901]\nDefaultValue(a, [2, 10], \"No data\");\n// returns \"No data\"\n```\n\nArray with no value at the parent index\n\n```arcade\nvar a = [23,4,[0,0,1,1,0],36,901]\nDefaultValue(a, [10, 3], \"No data\");\n// returns \"No data\"\n```\n\nArray of dictionaries with nested values\n\n```arcade\nvar data = {\n time: Date(2024, 0, 24, 12),\n interval: 1,\n intervalUnit: \"days\",\n weather: {\n precipitation: {\n type: \"rain\",\n values: [0.4, 0, 0, null, 0.1, 0.8, 1],\n unit: \"inches\"\n },\n temperature: {\n values: [50, 50, 51, 52, 55, 49, 51],\n unit: \"f\"\n },\n }\n}\n\nvar a = [ data, data2, data3 ]\nDefaultValue(a, [0, \"weather\",\"precipitation\",\"values\", 6], \"No data\");\n// returns 1\n```\n\n",
5059
+ "completion": {
5060
+ "label": "DefaultValue",
5061
+ "detail": "DefaultValue(container, keys, defaultValue) -> Any",
5062
+ "insertText": "DefaultValue(${1:container_}, ${2:keys_}, ${3:defaultValue_})$0",
5063
+ "insertTextMode": 2,
5064
+ "insertTextFormat": 2,
5065
+ "kind": 3,
5066
+ "documentation": {
5067
+ "kind": "markdown",
5068
+ "value": "Checks whether an index nested several levels deep in a multidimensional array has a value and returns that value if present. Otherwise, this function returns a specified default value if at least one of the nested keys or indices does not exist or the value at the specified key or index is `null` or an empty text value. This allows you to drill into a nested structure in one step rather than check values within each array.\n\n**Paràmetres**\n\n- **container**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)&lt;[Any](https://developers.arcgis.com/arcade/guide/types/#any)&gt; - The input array to check.\n- **keys**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)&lt;[Number](https://developers.arcgis.com/arcade/guide/types/#number) \\| [Text](https://developers.arcgis.com/arcade/guide/types/#text)&gt; - An array of the keys or indexes to check in each level of the container's structure.\n- **defaultValue**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - This value is returned if at least one of the keys or indices does not exist or the value at the specified key is `null` or an empty text value.\n\n**Valor de retorn**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) \nReturns the value at the specified key or index if defined. Otherwise, returns the value specified in `defaultValue`."
5069
+ }
5070
+ },
5071
+ "parametersInfo": {
5072
+ "min": 3,
5073
+ "max": 3
5074
+ }
5075
+ }
5076
+ ],
4745
5077
  [
4746
5078
  {
4747
5079
  "type": "function",
@@ -4893,6 +5225,58 @@
4893
5225
  "max": 1
4894
5226
  }
4895
5227
  },
5228
+ [
5229
+ {
5230
+ "type": "function",
5231
+ "name": "hasvalue",
5232
+ "bundle": "core",
5233
+ "sinceVersion": "1.26",
5234
+ "link": "https://developers.arcgis.com/arcade/function-reference/array_functions/#hasvalue1",
5235
+ "description": "Indicates whether an array has a value at the given index.",
5236
+ "examples": "\n##### Exemples\n\nArray with value at the given index\n\n```arcade\nvar a = [23,4,null,36,901]\nHasValue(a, 4);\n// returns true\n```\n\nArray with no value at the given index\n\n```arcade\nvar a = [23,4,null,36,901]\nHasValue(a, 5);\n// returns false\n```\n\nArray with a null value at the given index\n\n```arcade\nvar a = [23,4,null,36,901]\nHasValue(a, 2);\n// returns false\n```\n\n",
5237
+ "completion": {
5238
+ "label": "HasValue",
5239
+ "detail": "HasValue(inputArray, index) -> Boolean",
5240
+ "insertText": "HasValue(${1:inputArray_}, ${2:index_})$0",
5241
+ "insertTextMode": 2,
5242
+ "insertTextFormat": 2,
5243
+ "kind": 3,
5244
+ "documentation": {
5245
+ "kind": "markdown",
5246
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nIndicates whether an array has a value at the given index.\n\n**Paràmetres**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)&lt;[Any](https://developers.arcgis.com/arcade/guide/types/#any)&gt; - The array to check.\n- **index**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - The index to check.\n\n**Valor de retorn**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean)"
5247
+ }
5248
+ },
5249
+ "parametersInfo": {
5250
+ "min": 2,
5251
+ "max": 2
5252
+ }
5253
+ },
5254
+ {
5255
+ "type": "function",
5256
+ "name": "hasvalue",
5257
+ "bundle": "core",
5258
+ "sinceVersion": "1.26",
5259
+ "link": "https://developers.arcgis.com/arcade/function-reference/array_functions/#hasvalue2",
5260
+ "description": "Checks whether an index nested several levels deep in a multidimensional array has a value. This allows you to drill into a nested structure in one step rather than check values within each array. Returns `true` if the indexes at each level of the structure exist and include a non-null value.",
5261
+ "examples": "\n##### Exemples\n\nArray with a value at the nested index\n\n```arcade\nvar a = [23,4,[0,0,1,1,0],36,901]\nHasValue(a, [2, 4]);\n// returns true\n```\n\nArray with no value at the nested index\n\n```arcade\nvar a = [23,4,[0,0,1,1,0],36,901]\nHasValue(a, [2, 10]);\n// returns false\n```\n\nArray with no value at the parent index\n\n```arcade\nvar a = [23,4,[0,0,1,1,0],36,901]\nHasValue(a, [10, 5]);\n// returns false\n```\n\nArray of dictionaries with nested values\n\n```arcade\nvar data = {\n time: Date(2024, 0, 24, 12),\n interval: 1,\n intervalUnit: \"days\",\n weather: {\n precipitation: {\n type: \"rain\",\n values: [0.4, 0, 0, null, 0.1, 0.8, 1],\n unit: \"inches\"\n },\n temperature: {\n values: [50, 50, 51, 52, 55, 49, 51],\n unit: \"f\"\n },\n }\n}\n\nvar a = [ data, data2, data3 ]\nif(HasValue(a, [0, \"weather\",\"precipitation\",\"values\", 6])){\n // This check succeeds so the value will be returned\n return a[0].weather.precipitation.values[6];\n // returns 1\n}\n```\n\n",
5262
+ "completion": {
5263
+ "label": "HasValue",
5264
+ "detail": "HasValue(inputArray, indexes) -> Boolean",
5265
+ "insertText": "HasValue(${1:inputArray_}, ${2:indexes_})$0",
5266
+ "insertTextMode": 2,
5267
+ "insertTextFormat": 2,
5268
+ "kind": 3,
5269
+ "documentation": {
5270
+ "kind": "markdown",
5271
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nChecks whether an index nested several levels deep in a multidimensional array has a value. This allows you to drill into a nested structure in one step rather than check values within each array. Returns `true` if the indexes at each level of the structure exist and include a non-null value.\n\n**Paràmetres**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)&lt;[Any](https://developers.arcgis.com/arcade/guide/types/#any)&gt; - The array to check.\n- **indexes**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)&lt;[Number](https://developers.arcgis.com/arcade/guide/types/#number) \\| [Text](https://developers.arcgis.com/arcade/guide/types/#text)&gt; - An array of the keys or indexes to check in each level of the structure.\n\n**Valor de retorn**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean)"
5272
+ }
5273
+ },
5274
+ "parametersInfo": {
5275
+ "min": 2,
5276
+ "max": 2
5277
+ }
5278
+ }
5279
+ ],
4896
5280
  {
4897
5281
  "type": "function",
4898
5282
  "name": "includes",
@@ -5403,7 +5787,7 @@
5403
5787
  "sinceVersion": "1.12",
5404
5788
  "link": "https://developers.arcgis.com/arcade/function-reference/track_functions/#trackdistanceat",
5405
5789
  "description": "Suma de les distàncies recorregudes entre observacions des de la primera observació fins a l'actual més un valor determinat.",
5406
- "examples": "\n##### Exemples\n\nTal com es pot veure més amunt, el recorregut té sis entitats. L'expressió retorna un valor per a cada entitat del seguiment. Al primer exemple, s'examinen els resultats quan s'avaluen a l'entitat 2 (p2) amb un valor d'índex de 2. El càlcul és `30 + 80 + 60 = 170`.\n\n```arcade\nTrackDistanceAt(2)\n// returns 170\n```\n\nTal com es pot veure més amunt, el recorregut té sis entitats. L'expressió retorna un valor per a cada entitat del seguiment. A l'exemple següent, s'examinen els resultats quan s'avaluen a l'entitat 4 (p4) amb un valor d'índex de 4. El càlcul és `25 + 35 + 30 + 80 + 60 = 230`.\n\n```arcade\nTrackDistanceAt(2)\n// returns 230\n```\n\n",
5790
+ "examples": "\n##### Exemples\n\nTal com es pot veure més amunt, el recorregut té sis entitats. L'expressió retorna un valor per a cada entitat del seguiment. Al primer exemple, s'examinen els resultats quan s'avaluen a l'entitat 2 (p2) amb un valor d'índex de 2. El càlcul és `30 + 80 + 60 = 170`.\n\n```arcade\nTrackDistanceAt(2)\n// returns 170\n```\n\nTal com es pot veure més amunt, el recorregut té sis entitats. L'expressió retorna un valor per a cada entitat del seguiment. A l'exemple següent, s'examinen els resultats quan s'avaluen a l'entitat 4 (p4) amb un valor d'índex de 4. El càlcul és `25 + 35 + 30 + 80 + 60 = 230`.\n\n```arcade\nTrackDistanceAt(4)\n// returns 230\n```\n\n",
5407
5791
  "completion": {
5408
5792
  "label": "TrackDistanceAt",
5409
5793
  "detail": "TrackDistanceAt(index) -> Number",
@@ -7313,5 +7697,61 @@
7313
7697
  }
7314
7698
  ]
7315
7699
  ]
7700
+ },
7701
+ {
7702
+ "id": "knowledgegraph_functions",
7703
+ "title": "ó_Knowledge graph functions__________________________à",
7704
+ "items": [
7705
+ {
7706
+ "type": "function",
7707
+ "name": "knowledgegraphbyportalitem",
7708
+ "bundle": "knowledge-graph",
7709
+ "sinceVersion": "1.26",
7710
+ "link": "https://developers.arcgis.com/arcade/function-reference/knowledgegraph_functions/#knowledgegraphbyportalitem",
7711
+ "description": "ó_Returns a knowledge graph from a portal item________________________à.",
7712
+ "examples": "\n##### Exemple\n\nó_Returns the knowledge graph from the portal item__________________________à.\n\n```arcade\nvar knowledgeGraph = KnowledgeGraphByPortalItem(\n Portal('https://www.arcgis.com'),\n '7b1fb95ab77f40bf8aa09c8b59045449',\n);\n```\n\n",
7713
+ "completion": {
7714
+ "label": "KnowledgeGraphByPortalItem",
7715
+ "detail": "KnowledgeGraphByPortalItem(portalObject, itemId) -> KnowledgeGraph",
7716
+ "insertText": "KnowledgeGraphByPortalItem(${1:portalObject_}, ${2:itemId_})$0",
7717
+ "insertTextMode": 2,
7718
+ "insertTextFormat": 2,
7719
+ "kind": 3,
7720
+ "documentation": {
7721
+ "kind": "markdown",
7722
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nó_Returns a knowledge graph from a portal item________________________à.\n\n**Paràmetres**\n\n- **portalObject**: [Portal](https://developers.arcgis.com/arcade/guide/types/#portal) - ó_The Portal from which to query features_____________________à.\n- **itemId**: [Text](https://developers.arcgis.com/arcade/guide/types/#text) - ó_The GUID of the portal item referencing a knowledge graph service. _This value must be a text literal.______________________________________________________à\n\n**Valor de retorn**: [KnowledgeGraph](https://developers.arcgis.com/arcade/guide/types/#knowledgegraph)"
7723
+ }
7724
+ },
7725
+ "parametersInfo": {
7726
+ "min": 2,
7727
+ "max": 2
7728
+ }
7729
+ },
7730
+ {
7731
+ "type": "function",
7732
+ "name": "querygraph",
7733
+ "bundle": "knowledge-graph",
7734
+ "sinceVersion": "1.26",
7735
+ "link": "https://developers.arcgis.com/arcade/function-reference/knowledgegraph_functions/#querygraph",
7736
+ "description": "ó_Queries a knowledge graph with an openCypher query and returns the set of entities and relationships in a graph, along with their properties________________________________________________________________________à.",
7737
+ "examples": "\n##### Exemple\n\nó_Queries the knowledge graph for information about the `Student` entities it contains____________________________________________à.\n\n```arcade\nvar results = QueryGraph(\n knowledgeGraph,\n 'MATCH (p:Student)-[e:EnrolledAt]->(s:School)\n WHERE s.name = 'Eastside Elementary'\n RETURN p,e,s.principal,s.numStaff\n LIMIT 1');\n\nreturn Text(results);\n```\n\n",
7738
+ "completion": {
7739
+ "label": "QueryGraph",
7740
+ "detail": "QueryGraph(graph, openCypherQuery, queryParameters?) -> Dictionary",
7741
+ "insertText": "QueryGraph(${1:graph_}, ${2:openCypherQuery_})$0",
7742
+ "insertTextMode": 2,
7743
+ "insertTextFormat": 2,
7744
+ "kind": 3,
7745
+ "documentation": {
7746
+ "kind": "markdown",
7747
+ "value": "**[A partir de la versió 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nó_Queries a knowledge graph with an openCypher query and returns the set of entities and relationships in a graph, along with their properties________________________________________________________________________à.\n\n**Paràmetres**\n\n- **graph**: [KnowledgeGraph](https://developers.arcgis.com/arcade/guide/types/#knowledgegraph) - ó_The knowledge graph to query______________________________à.\n- **openCypherQuery**: [Text](https://developers.arcgis.com/arcade/guide/types/#text) - ó_The openCypher query to be executed against the knowledge graph_________________________________à.\n- **queryParameters** (_Optional_): [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary) - ó_A dictionary of named query parameters for the openCypher query_________________________________à. ó_The parameter names or keys in the dictionary are case-sensitive__________________________________à. ó_Parameters accepted depend on the external graph store and can be of type: `Array`, `Date`, `Dictionary`, `Geometry`, `Number, Text`___________________________________________________________________à\n\n**Valor de retorn**: [Dictionary](https://developers.arcgis.com/arcade/guide/types/#dictionary)"
7748
+ }
7749
+ },
7750
+ "parametersInfo": {
7751
+ "min": 2,
7752
+ "max": 3
7753
+ }
7754
+ }
7755
+ ]
7316
7756
  }
7317
7757
  ]